PDF不会自动换行文本行。尊重线位置

时间:2014-09-28 17:25:33

标签: c# pdf

我试图通过代码生成PDF,因为并非所有实际的PDF .NET库都支持Windows / Windows Phone 8.1的新Windows运行时。 PDF是正确保存的,只有一个我可以轻松修复的流位置计数错误,但正如您所看到的,如果行太长,文本不会换行。

pdf_printed

我尝试使用PDF NewLine char(\ n),但C#会自动将其转换为输入字符串 另外,我无法理解要放入文档的线条或对象的位置,因为我遵循这个guide online谈论了一个反转轴配置(x代表高度,y代表宽度),但似乎我没有抓住正确的方法(我把我的代码放在一个恒定的左边位置,在40,并且变量顶部减少值(从600,我现在没有管理多重,如果该值小于0) )。

这是PDF生成的代码:

http://pastebin.com/ZkZmbJdM 

(对不起,如果我使用Pastebin,但使用此编辑器代码功能,代码似乎没有格式化用于它的特殊字符)

我在哪里做错了?

1 个答案:

答案 0 :(得分:3)

PDF是一种图形格式,试图让您认为它是一种文档格式。但不,这就像用GDI +绘图一样。这就是为什么它可以在许多平台/程序/等上实现相同的渲染输出而不是像doc / docx这样的文本流格式。而且,这就是为什么它可以真正呈现任何东西。

因此,与文档格式相反,程序负责生成PDF以使布局正确。可以把它想象成你用GDI +画画。

在像docx或html这样的文档中,渲染程序必须进行布局工作。有了这样的文档,你只需要编写文本,观察者就可以完成它的编写。

您的PDF库当然有测量文本长度的必要代码。也许甚至它有一些代码来提供一些布局功能。您必须使用这些功能来进行布局。