C# Word 插件中的页面结尾
我正在编写一个 Word 插件来读取文档中的所有文本并将其保存到文本文件中。
生成的文本文件将由我的另一个应用程序使用,因此我需要用“\f”字符标记每个页面文本的结尾。我当前的逻辑只是通过使用 Word 将文件保存为纯文本文件。
object format = WdSaveFormat.WdFormatText;
...
Application.ActiveDocument.SaveAs( ..., ref format, ... );
我发现插入中断的最佳方法是使用 ActiveDocument.Selection.InsertBreak()。
有什么方法可以确定原始Word文档中分页符的位置,以便我知道在哪里插入“\f”字符?
I am writing a Word plugin to read all text in a document and saving it to a text file.
The text file generated will be used by another application of mine, and so I need to mark the end of every page's text by a '\f' character. My current logic merely saves the file though word as a plain text file, by using
object format = WdSaveFormat.WdFormatText;
...
Application.ActiveDocument.SaveAs( ..., ref format, ... );
The best method I found to insert a break was using ActiveDocument.Selection.InsertBreak().
Is there some way to determine the positions of page breaks in the original Word document so that I know where to insert the '\f' character?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
困难方法之一
这是使用computestastics()作为行号并获取行数的
,使用goto转到文档网中的最后一行并插入硬EOF
ex:
选择.GoTo(wdGoToLine,wdGoToAbsolute,4)
This is one of the hard way to do it
use computestastics() for line number and get the no of lines
use goto to goto last line in the documnet and insert a Hard EOF
ex:
Selection.GoTo(wdGoToLine,wdGoToAbsolute,4)
我现在唯一能想到的就是将其保存为 html,这样
每个段落都会有一个标签。然后,您可以获得每个段落文本的开头,并使用它来查找原始文档中每个段落的第一个起始位置。
另外,您可以执行 Selection.Find 并搜索“^p”,这是一个段落标记。
The only thing that I can think of right now is for you to save it as an html which will give you a
tag for every paragraph. Then you can get the begining of each paragraph text and used that to find the first starting position of each paragraph on the original document.
Also, you can do a Selection.Find and search for "^p" which is a paragraph mark.