有关如何将RTF转换为文本格式以及保留样式和字体的任何想法吗?
注意:
我想避免使用System.Windows.Forms
更新
我在RTF中有这样的东西
<P style="TEXT-ALIGN: center; MARGIN: 0in 0in 0pt" class=MsoNormal align=center><FONT
face=Calibri><SPAN style="LINE-HEIGHT: 115%; FONT-SIZE: 14pt"><STRONG>Questions and
Answers<BR style="mso-special-character: line-break"></STRONG><BR style="mso-specialcharacter:
line-break"></SPAN><SPAN style="LINE-HEIGHT: 115%; FONT-SIZE:
12pt"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office"
/><o:p></o:p></SPAN></FONT></P>
...
#558ED5; mso-style-textfill-fill-themecolor: text2; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfillfill-
colortransforms: 'lumm=60000 lumo=40000'"><FONT color=#3366ff><SPAN style="LINEHEIGHT:
115%; FONT-SIZE: 14pt"><A title="Context Menu Default Items"
href="http://PG1/FocusOrthoServer/Images/Help/Helps/FocusOrthoHelp.aspx?HelpPageID=368"
target=_blank><FONT size=3 face="Times New Roman">Context Menu Default
Items</FONT></A></SPAN></FONT></SPAN></U><FONT
color=#000000>.<o:p></o:p></FONT></SPAN></P></FONT></FONT><o:p></o:p>
实际上显示帮助文本。我需要将该文本写成PDF格式!
P.S
我正在使用iTextSharp
答案 0 :(得分:2)
修改:
根据您的编辑,答案要简单得多。只需解析文件并将各个元素与其格式标记一起存储即可。
然后创建一个pdf文档并写出应用与原始格式标签匹配的样式的文本元素。实施起来很耗时,但它会起作用。
几年前我做过类似的事情。或者,您可以使用PDFSharp的虚拟打印机(或任何其他pdf虚拟打印机)来轻松实现这一目标。只需打印到PDF:)
原帖:
你不能拥有文本格式的纯文本格式(我可以从你的问题中假设)。
标签就像RTF这样的格式首先保持格式化。因此,删除所有标签会为您提供纯文本文档。
但是,您可以使用某种元文件来存储有关纯文本文档的格式数据。
这个想法很简单,您可以使用单词位置(行号和列号)作为格式化标记的键,这些标记将以xml或任何其他所需的文件格式存储。最终你将得到两个文件plain.txt和plain.meta。
希望这有帮助。