在word文档中插入rtf文本
我正在使用 OLE 搜索替换将“占位符标签”替换为存储在数据库字段中的内容到 Word 文档中。我使用的技术类似于此处讨论的技术。
这是可行的,但当然它不适用于 rtf 字段。我有包含 rtf 数据的数据库字段,如果执行搜索替换,我将获得完整的 rtf 代码,因此我看到的不是
Hello World
类似的内容
{\rtf1\ansi\ansicpg1252\deff0\deflang1040 \viewkind4\uc1\pard\sa200\sl276\slmult1\lang16\b\f0\fs22 你好\i 世界\b0\i0\par }
有人已经解决了这个问题吗?在 StackOverflow 上搜索时,我发现一个使用剪贴板的技巧。注意:我不使用书签,此示例使用书签,我只是将标签定义为纯文本,如“”,当我在搜索和替换循环中找到“”时,我将替换文本。
更新:你看到这个剪贴板技巧有什么问题吗?
您还有其他想法并可以提出其他解决方案吗?
I am using OLE Search Replace to replace "placeholder tags" with content stored in db fields into a Word docuemnt. I use a technique similar to what disussed here.
THis works but of course it doesn't for rtf fields. I have db fields containing rtf data and if a do search replace I will get the full rtf code, so instead of seeing
Hello World
I see something like
{\rtf1\ansi\ansicpg1252\deff0\deflang1040
\viewkind4\uc1\pard\sa200\sl276\slmult1\lang16\b\f0\fs22 Hello \i
World\b0\i0\par }
Did anyone already solved the problem? Searching on StackOverflow I found a trick that uses the clipboard. Note: I don't use bookmarks, this example uses bookmarks, I simply have my tags defined as plain text like '' and when I find '' in my search and replace loop I replace the text.
UPDATE: Do you see any prolem in this clipboard trick?
Do you have other ideas and can suggest other solutions?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我建议改用 Selection.InsertFile 。这是一个应该执行您想要的操作的示例,它找到“占位符”并插入一个 rtf 文件。之前将您的 rtf 保存到临时文件...
I would suggest to use the Selection.InsertFile instead. Here is an example that shoud do what you want, it finds "placeholder" and inserts a rtf file. Save your rtf to a temp-file before...
这是我很久以前保存的帖子。它由 TeamB 的 Peter Below 博士发布到旧的 Borland Delphi 新闻组,但今天仍然适用。它演示了如何使用
EM_STREAMIN
和EM_STREAMOUT
消息以及相关回调将 RTF 文本放入TRichEdit
中以及从中复制出来。Here's a post I saved from ages ago. It was posted by Dr. Peter Below of TeamB to the old Borland Delphi newsgroups, but it's still applicable today. It shows how to use the
EM_STREAMIN
andEM_STREAMOUT
messages and related callback to put RTF text into and copy out of aTRichEdit
.