0

TextFields を追加した PDF があります。

  var txtFld = new TextField(stamper.Writer, new Rectangle(cRightX - cWidthX, cTopY3, cRightX, cTopY), FieldNameProtocol) { Font = bf, FontSize = cHeaderFontSize, Alignment = Element.ALIGN_RIGHT, Options = PdfFormField.FF_MULTILINE };
  stamper.AddAnnotation(txtFld.GetTextField(), 1);

上記の「bf」は、PDF に埋め込まれた Unicode フォントです。

  BaseFont bf = BaseFont.CreateFont(UnicodeFontPath, BaseFont.IDENTITY_H, BaseFont.EMBEDDED); // Create a Unicode font to write in Greek...

後で、これらのフィールドにギリシャ語のテキストを入力します。

  var acrof = stamper.AcroFields;
  acrof.SetField(fieldName, field.Value/*, field.Value*/); // Set the text of the form field.
  acrof.SetFieldProperty(fieldName, "setfflags", PdfFormField.FF_READ_ONLY, null); // Make it readonly.

PDF を表示すると、ほとんどの場合テキストが表示されず、Acrobat で (非表示の) TextField をクリックすると、テキストが表示されます (再びフォーカスを失うまで)。

ここで何が起こっているのか分かりますか?非埋め込みフォントも使用してみましたが、同じ結果が得られます (ただし、使用しているフォントに似た埋め込みフォントが PDF にまだ含まれているようです)。sth が欠落しているかどうかはわかりません。

4

1 に答える 1