1

バグのように見える iTextSharp に問題があります。

コーミングされたテキスト フィールドがあり、iTextSharp を使用してアラビア語のテキストを追加すると、フィールドが「強調表示」されると、最初はアラビア文字が反転して表示されます。したがって、「aff ا د ي」は「ي د اف」となります。フィールドをクリックした瞬間、ハイライトが消え、テキストが正しい方向に表示されます。
これは、方向と配置に関係なく発生し、コーミングされたテキスト フィールドでのみ発生します。

誰でもこれに対する解決策を提供できますか?

: iText タグも追加しました。この問題は iTextSharp だけに固有のものではないという予感があり、iTextSharp で回避策や解決策を再現できることを願っています。よろしく、

4

1 に答える 1

1

通常、これはフォーム オブジェクトでを設定GenerateAppearancesすることで修正できます。false

PDF の注釈 (どのフォーム フィールドが のバージョンであるか) は、異なる「状態」を持つことができ、これらの「状態」ごとに、レンダラーがその状態をどのように表示するかを指定できます。たとえば、チェックボックスは「チェックする」または「チェックしない」のいずれかを指定できますが、実際のチェックマークをレンダリングする方法は指定されていません。「X」かもしれないし、✓かもしれないし、☑かもしれないし、まったく違うものかもしれない。これらの異なる状態は、外観状態と呼ばれます。

注釈の外観状態を設定しない場合、その状態の制御を効果的に PDF レンダラーに委譲し、必要なことを何でも実行させることになります。

Adobe のレンダラー (Acrobat および Reader) は、PDF レンダラーのデファクト スタンダードであり、最近のレンダラーは、特に RTL や多くの非英語/ラテン語のようなものに関しては、実際に「空白を埋める」のが得意です。ただし、Google、Apple、Microsoft、さらにはプリンターを含む他のレンダラーは、これが得意ではない可能性があるため、これをテストすることをお勧めします.

于 2015-10-13T15:00:09.933 に答える