我与iTextSharp的工作和.NET 3.5 SP1(在C#中,你可以猜)和修改使用PdfStamper类的一些现有的PDF文件。现在,我有两个问题:

<强>转化的坐标系统

正如我看到它,iTextSharp的是使用(后记?)点作为测量的单元,但我想变换这些坐标到毫米。现在,如何是实现这一目标的最佳方式是什么?

以在文档中查找揭示了以下方法:

PdfContentByte cb = new PdfContentByte();
System.Drawing.Drawing2D.Matrix scale = new System.Drawing.Drawing2D.Matrix(
    0.352777778, 0, 0.352777778, 0, 0, 0); // 1 point = 0.352777778 mm
cb.Transform(scale);

我希望我得到的变换矩阵权。但问题是:有没有System.Drawing.Drawing2D大会!是这样的组装下降或发生了什么呢?我能做些什么来改变iTextSharp的的坐标毫米。我现在在这里走错了路?

<强>在PDF文本被使用相同的坐标在一个不同的PDF移位

我注意到,在修改的两个不同的的PDF用的相同内容的文件的,即相同的坐标得到了位移和文本没有被放置在完全相同的位置。是什么原因造成这一点,我该怎么预防呢?

这是第一个PDF:

“替代文字”

这是第二PDF,使用完全相同的坐标创建在iTextSharp的:

“替代文字”

任何帮助理解。

有帮助吗?

解决方案

  

但问题是:没有   System.Drawing.Drawing2D大会!是   本次大会跌落或发生了什么   呢?我能做些什么来改造   iTextSharp的的坐标   毫米。难道我就走错了路   这里吗?

http://msdn.microsoft.com /en-us/library/system.drawing.drawing2d.matrix.aspx (在System.Drawing.dll程序)

其他提示

好,我解决与文本第二个问题发生位移,尽管所使用的相同的坐标。

事实证明,第一PDF包括一些非可见修整空间,第二没有。修整空间是不可见的“原因的视图空间是使用PDF创造者裁剪,但因为它出现在修整空间仍然存在并计数的坐标。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top