iTextSharpを使用して別のPDFにあるシステムと変位テキストを座標通報
-
21-08-2019 - |
質問
PdfStamper
クラスを使用して、いくつかの既存のPDFファイルを修正しています。。今、私は2つの問題を持ってます:
の座標系を変換する
私はそれを見るように、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に変位しますの
私は気づいた修正しながら、のの同じ内容を持つ2つの異なるのPDFファイルの、同じ座標がずれてしまって、テキストを正確に同じ位置に配置されていないこと。何がこれを引き起こしているとどのように私はそれを防ぐことができますか?
これは最初のPDFです。
これはiTextSharpで正確に同じ座標を使用して生成された第2 PDF、ある
すべてのヘルプは高く評価されます。
解決
しかし、問題は次のとおりです。なしあり System.Drawing.Drawing2D組み立て!ました このアセンブリは、落としたり、何が起こったのか それへ?私は、変換するために何ができます iTextSharpへの座標 ミリメートル。私は間違った方法でアム ここに?
http://msdn.microsoft.com (System.Drawing.dllで)/en-us/library/system.drawing.drawing2d.matrix.aspx の
他のヒント
さて、私が使用されているにもかかわらず、同じ座標変位されるテキストの第2の問題を解決します。
それが判明したように、最初のPDFには、いくつかの非可視トリミングスペースを含める、第二はしませんでした。トリミングスペースは、ビュー空間がPDFの作成者を使用してトリミングされた「原因は見えませんが、それはトリミングスペースがまだあったし、座標のカウント。表示される