2014-02-13 161 views
-2

任何想法如何将RTF转换为文本格式并保留样式和字体?将RTF转换为PDF格式

注:

我想避免使用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的

+1

纯文本没有样式和字体,你是什么意思? –

+0

你是什么意思'文本格式? ASCII文本没有任何样式或字体。 – paqogomez

+1

你想要哪种文本格式?我不知道包含样式和字体信息的任何纯的纯文本格式(除非你是某种文档的XML repesentation的) – Baldrick

回答

2

编辑:

根据您的编辑答案是简单了很多。只需解析文件并将各个元素与其格式化标记一起存储。

然后创建一个pdf文档并写出应用与原始格式标签匹配的样式的文本元素。实施起来非常耗时,但它会起作用。

我几年前做过类似的事情。

或者,您可以使用PDFSharp的虚拟打印机(或任何其他的PDF虚拟打印机)来做到这一点免费。只是打印到PDF:

原贴:

你不能有一个纯文本格式(这就是我可以从你的问题的假设),将具有文本格式。

标签是如何格式像RTF保持格式首先。所以摆脱所有标签给你一个纯文本文件。

但是,您可能需要某种元文件来存储有关纯文本文档的格式数据。

的想法很简单,你用字位置(行数和列数)的键格式,你将在XML或你想要的任何其他文件格式存储的标签。你将最终得到两个文件plain.txt和plain.meta。

希望这会有所帮助。

+0

对于非常大的文档,它将浪费运行时间和内存。 – Mike

+1

那么考虑到你原来的问题,我不能想到别的。 – Alex