Adobe LiveCycle Designer を iTextSharp と組み合わせて使用すると問題が発生します。スタンプしている複数行のテキストフィールドがあります...
Blah blah text here: _________________
______________________________________
______________________________________
LiveCycleDesigner には、3 行すべて (静的テキストを含む) をカプセル化した 1 つのフィールドがあります。最初の行がフィールドの開始位置にインデントされ、フィールドが垂直方向に整列し、行が適切に配置されるように、フォント/段落設定を設定しました。
PdfStamper を使用して (フォームを平坦化せずに) フィールドを設定すると、Adobe では問題なく表示されます (ただし、Chrome と Firefox の既定のプラグインは AcroForms を十分にサポートしていないようです)。ただし、フォームをフラット化すると、フォント以外はすべて失われます。
iTextSharp はこれを行う機能をサポートしていませんか? これを行うべきより良い方法はありますか?アプリケーション用の一般的なフォーム ビルダーを作成しようとしているので、1 回限りの修正はあまり役に立ちません。
私が考えた唯一の代替案は、PDF の 3 つのフィールドに分割し、いくつかの巧妙なグループ化とMeasureString()
(UGH) を使用して、各フィールドに収まる文字列の量を決定することです。誰かがより良いものを考えることができますか?