【发布时间】:2013-06-22 08:13:03
【问题描述】:
我正在编写 Word 文档,我想直接从剪贴板粘贴格式化的代码-sn-ps。
此时我可以将这些 sn-ps 写入到硬盘的 .html 文件中。我的目标是扩展我的 Python 脚本并以“格式化文本”将这个 .html 文件加载到剪贴板上以直接粘贴到 Word。
有谁知道用 Python 做这件事的方法吗?
提前致谢。
谢拉布
【问题讨论】:
标签: python html windows clipboard richtext
我正在编写 Word 文档,我想直接从剪贴板粘贴格式化的代码-sn-ps。
此时我可以将这些 sn-ps 写入到硬盘的 .html 文件中。我的目标是扩展我的 Python 脚本并以“格式化文本”将这个 .html 文件加载到剪贴板上以直接粘贴到 Word。
有谁知道用 Python 做这件事的方法吗?
提前致谢。
谢拉布
【问题讨论】:
标签: python html windows clipboard richtext
嗯,我已经找到了解决办法。
http://code.activestate.com/recipes/474121-getting-html-from-the-windows-clipboard/
效果很好...如果有人想了解有关剪贴板的更多信息,请看这里:
http://msdn.microsoft.com/en-us/library/windows/desktop/ms649013(v=vs.85).aspx
下载 pywin32 模块,使用 win32clipboard 你可以做任何事情。
【讨论】:
还没有人提到klembord。它适用于 Linux 和 Windows,并支持HTML clipboard format。
pip install klembord
import klembord
klembord.init()
# Case 1
klembord.set_with_rich_text('', 'Normal text, <i>Italic text</i>, <b>Bold text</b>, Normal text')
# Case 2
klembord.set_with_rich_text('', 'This is a <a href="https://github.com/OzymandiasTheGreat/klembord">link</a>')
set_with_rich_text 有两个参数。第一个参数是纯文本替代选项,如果您将内容粘贴到不支持富文本格式(例如记事本)的位置,则使用该选项。第二个参数是html格式的剪贴板,例如支持<a>、<i>和<b> HTML标签。
粘贴到富文本编辑器时,上面示例的输出将如下所示:
【讨论】:
我使用 com 接口来做到这一点。 http://en.wikipedia.org/wiki/Component_Object_Model
最简单的方法: - 在 microsoft word 中创建 word 模板。 - 将代码中的文本粘贴到模板中。
【讨论】: