2

私は現在、事前定義されたフォームにitextsharpを入力しようとしています。画像を追加する以外はすべてうまく機能します。これは、.NET1.1にコンパイルされたAdobeのFDFツールキットですでに機能していました。これは.NET4.0では機能しなくなり、itextsharpに切り替えました。以前に画像が追加された方法は、事前定義された形式のボタンのアイコンを変更することでした。これにより、画像が正しく回転および拡大縮小されました。残念ながら、itextsharpでこれを行う方法が見つかりませんでした。コードは次のとおりです。

FdfAcX_Doc.FDFSetAP("img", 0, "path\\to\\img.pdf", 1);

(ドキュメント:http ://www.adobe.com/content/dam/Adobe/en/devnet/acrobat/pdfs/FDFtkRef.pdf )

今、私はitextsharpを試し、画像を手動で追加しようとしていました。例:

PdfContentByte pdfContentByte = pdfStamper.GetOverContent(1);
iTextSharp.text.Image img = iTextSharp.text.Image.GetInstance(picfile);
iTextSharp.text.Rectangle imageRect = new iTextSharp.text.Rectangle(338f, 65f, 250f, 200f, 270);
img.ScaleToFit(imageRect.Width, imageRect.Height);
img.SetAbsolutePosition(65, 250);
pdfContentByte.AddImage(img);

しかし、残念ながら、最初に画像が正しく回転せず、次に画像が大きすぎます。いくつかの設定を試しましたが、正しい設定にできませんでした。誰かが私が間違っていることを知っていますか?

PDFフォームはここからダウンロードできます:http ://www26.zippyshare.com/v/24914063/file.html

助けてください、私はこの問題に1日座っていて、これ以上何も考えられません。ありがとう!

4

1 に答える 1

3

コードサンプルがタイトルの質問と一致していません。

コードサンプルでは、​​ページのコンテンツに画像を追加しています。タイトルで、ボタンフィールドのアイコンを置き換えるように求めています。ボタンフィールドはコンテンツの一部ではありません。それらはウィジェットの注釈を使用して視覚化されます。

私は次のようなコードを期待していました:

AcroFields form = stamper.AcroFields;
PushbuttonField ad = form.GetNewPushbuttonFromField(buttonFieldName);
ad.Layout = PushbuttonField.LAYOUT_ICON_ONLY;
ad.ProportionalIcon = true;
ad.Image = Image.GetInstance(pathToNewImage);
form.ReplacePushbuttonField("advertisement", ad.Field);
于 2012-10-23T10:37:09.530 に答える