iText で奇妙な問題が発生しています。いくつかのフィールドを持つドキュメントがあります。私のサーバーでは、ローカル ドキュメントを開き、フィールドを設定して、スタンパーの出力をブラウザーに送信します。
私のローカル開発マシンで完璧に動作します。
サーバー上で生成された PDF に PDF コンテンツがありません。設定したフィールドの内容のみが表示され、残りは完全に空白です。
任意のヒント?
ローカル マシン上のアプリケーションは、テンプレートとして使用している PDF のバイトを尊重します。サーバー上のアプリケーションは、これらのバイトを尊重しません。間違ったエンコーディングを使用してテンプレートをコピーしたために、すべてのバイナリ文字が破損している可能性があります。または、アプリケーションが間違ったエンコーディングを使用してテンプレートを読み取っていて、同じ結果になっている可能性があります。
PDF ファイルをテキスト エディター (PDF ビューアー内ではなく) で開くと確認できます。キーワードを探し、stream
このキーワードに続くバイトを調べます。違いがわかりますか?ローカル マシンで生成された PDF では、バイトは通常のバイナリ ストリームのように見えます。サーバーで生成された PDF では、バイトが不自然に見えます。たとえば、たくさんの疑問符で構成されています。
解決方法: テンプレートが正しくコピーされたかどうかを確認してください。その場合は、ドキュメントの読み方を確認してください。例: iText を使用せずに PDF テンプレートをバイト配列に読み取り、それを新しいバイト配列に書き込みます。破損のプロセスを再現できますか? その場合は、正しいエンコーディングが得られるまで、アプリケーション (iText を含まないアプリケーション) を微調整してください。