1

私たちの webapp では、ユーザーが生成した HTML フォームの PDF を作成するオプションを顧客に提供しています。PDF ファイルは OpenOffice 3.3 によって作成され、結果の PDF にはインタラクティブなフォーム フィールドが含まれます。

問題は、データが事前に入力されているフィールドが、異なる PDF ビューアで異なって表示されることです。Adobe Reader では、フィールドは次のように表示され、値はフィールドの下部 (および部分的に非表示) に表示されます。

Adobe の PDF

Foxit Reader (および私が試した他のリーダー) では、PDF は次のようになります。

ここに画像の説明を入力

なぜこうなった?

編集:ymsの提案に従います。これは、問題のあるインタラクティブ フォーム フィールドを含む PDF の例です。

4

1 に答える 1

1

PDF ファイルの Font オブジェクトに異常があります。フォント ディスクリプタのDescent属性には、サード パーティのリーダーによって無視または修正された誤った値が含まれているようですが、Adobe Acrobat Reader によって「尊重」されています。

PDF参照ドキュメントから:

属性: Descent
タイプ: 数値
説明: (必須、Type 3 フォントを除く)
このフォントのグリフが到達するベースラインより下の最大深度。 値は負の数です。

投稿したファイルでは、フォント記述子は次のようになっています。

12 0 obj
<< /Type/FontDescriptor/FontName/CourierNewPSMT
/Flags 5
/FontBBox[-121 -679 622 1021]
/ItalicAngle 0
/Ascent 832
/Descent 300 <-この男はマイナスになるはずだった
/CapHeight 1020
/StemV 80 >>
エンドオブジェクト

回避策として、これらのファイルの生成に使用しているツールで別のフォントを使用するか、ツールの開発者に問題を報告してみてください。

于 2012-03-27T19:22:32.323 に答える