フィールドを含むPDFテンプレートファイルがあります。 お客様が作成したテンプレート。テキスト、フィールドラベル、フィールド自体があります。テキストとラベルは、テンプレート内に埋め込まれたフォントを使用します。キリル文字の値(itextsharp)を持つPDFテンプレートのフィールドを入力してください
キリル文字の値をフィールドに入力しようとすると問題が発生します。結果ドキュメントにキリル記号はありません。
AcroFieldsの代替フォントを使用することで解決された同様の問題が多数発生しました。しかし、私はテンプレートにフィールドフォントを定義することができないので、私は置換のための特定のフォントを使用することはできません。
Acrobat EditorでTimes New Roman、Arialなどのよく知られているWindowsフォントのフィールドに異なるフォントを設定しようとしましたが、pdfには何の効果もありません。
コードサンプル:
FontFactory.RegisterDirectory(Environment.GetFolderPath(Environment.SpecialFolder.Fonts));
using (var dest = File.Create(@"result.pdf"))
{
using (var stamper = new PdfStamper(reader, dest))
{
var fields = stamper.AcroFields;
fields.SetField("ClientName", "Имя клиента");
stamper.FormFlattening = true;
stamper.Close();
}
}
私もFontFactoryで利用可能なすべてのフォントを登録しますが、効果はなかったです。
質問があります: 1.フィールドにのみ使用されているAdobe Acrobatでフォントを埋め込むことができますか? 2. iTextSharpで既存のフィールドのフォントファミリを定義できたらどうすればいいですか?
フォントはPDFに埋め込まれていますが、使用できません。私はそこから始めるだろう。手動でAdobe Acrobatのフィールドに入力し、あなたが期待しているものを見ることができますか?そうでない場合は、フォントが埋め込まれていないか、何らかの形の破損があります。あなたはPDFを投稿できますか? –
自分のマシンにそのフォントがインストールされていないため、埋め込みフォントを使用できません。フィールドはArialやTimes New Romanを使用していますが、そこにキリル文字のシンボルを入力できますが、iTextSharpを使用すると、キリル文字は表示されません。 – Nogard