0

PDF内のフォームフィールドへの入力を自動化するアプリケーションを構築しました。次に、さまざまなアセットを取得し、それらを組み合わせて「印刷可能な」製品を生成します。これらはすべて、iTextSharp の魔法を使用して実現されます。フォーム フィールドにデータが入力されると、テキストにフラット化されます。問題は、フォントが埋め込まれていても、実際には意味のある方法でフォームフィールドに関連付けられておらず (ストレートテキスト要素のように)、プリンターは、これが原因で pdf がライセンスエラーを生成していると不平を言っていることです. これについて少し調べてみたところ、フォームフィールドの性質のようです。

私たちが一緒に仕事をしているアーティストは、フォーム フィールドを平坦化して作成されるテキストを「アウトライン化」する方法を研究するように要求しました。カスタム プリセットを使用して PDF オプティマイザーを実行すると、Acrobat でテキストのアウトラインが可能になり、PDF でこのコマンドを実行する Acrobat シーケンスを生成できることがわかりました。問題は、シーケンスをまったく自動化できないことです。

バッチ ファイルを介してコマンド ラインでシーケンスを実行できる AutoBatch というプラグインを見つけました。欠点は、このアプリケーションを実行するサーバーに Acrobat Pro とプラグインをインストールする必要があることです。さらに、pdf 内のテキストの概要を説明するだけでは、やり過ぎの解決策のように思えます。この時点で私が知っている限りでは、iTextSharp を使用するとこのプログラムを実行できる可能性がありますが、Google でそのようなことを検索してもほとんど結果が返されず、関連するものは何も返されません。

質問: 私が実装した現在のソリューションよりも、pdf 内のテキストのアウトラインを作成するためのより良い方法はありますか?

TLDR ; PDF は非標準フォントで生成されます。このテキストをプリンターに送信するには、このテキストを「アウトライン化」する必要があります。現在、AutoBatch Acrobat Plug-In を使用して、コマンド ラインから Acrobat Sequence を実行しています。フォントのアウトラインを自動化するより良い方法を誰かが知っているかどうか疑問に思っています。

4

1 に答える 1

0

私も印刷環境にいて、「ボックス カバー」のフォームを何度も使用して、ボックス カバーの作成に使用するコードを短縮しました。
私は単純に私たちを " pdfStamper.FormFlattening = true;" プリンター (Xerox DP180 および DC5000) では、PDF の使用に問題はありません。

FormFlattening を省略した瞬間、プリンターは PDF に関して多くのエラーを出します。

FormFlattening を使用している場合は、プリンターが PDF リソースではなく印刷エンジンからフォントを参照できるように、フォントがローカルにインストールされているかどうかを確認してください。

于 2011-01-17T15:01:31.273 に答える