問題タブ [itext7]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
itext - itext7 フォーマットの問題/バグ
書式設定のバグに気付いたとき、iText ドット ネット ライブラリを使用していました。問題を示す小さなプロジェクトで再現できました。
ページの高さよりも大きいグリッドが 1 つ以上あり、そのグリッドで SetKeepTogether(true) を呼び出すと、奇妙な方法で複数のテーブルが重なっているように見えます。SetKeepTogether(false) が呼び出された場合、レンダリングの問題は発生しませんが、テーブルがページの境界を超えて拡張される場合は、テーブルを新しいページに分割する必要があります。
この例では、CAUSE_BUG という静的ブール値を宣言しました。true に設定すると、欠陥のある PDF が生成されます。false に設定すると、ページ内にかろうじて収まるテーブルが生成され、レンダリングの問題は発生しません。
どういうわけかライブラリを間違って使用していますか? もしそうなら、どうすればこの問題を修正できますか?
itext7 - Itext7 テキストを中央に配置し、両側を埋める
テキストをpdfに印刷しようとしていますが、これまでのところすべてがセットアップされ、機能しています。幅が 6 インチ、つまり(6*72) 432デバイス ピクセルのラインがあります。私がやろうとしているのは、テキストをこの行に印刷し、中央に配置し、両側を塗りつぶして行の全幅を占めることです。例------こんにちは、これは私のテキスト------です。これは、前後に挿入する文字数を計算できるように、テキストが占めるスペースを推定しようとしているコードのスニペットです。
このコードは、432 をはるかに超える 2000 を超える数値を生成します。返される単位が何であるかはわかりません。文字列の長さを推定し、432 dp 以内で中央揃えにするにはどうすればよいですか? 余分なスペースは特殊文字で埋める必要があります。これは、金額が言葉で示され、スペースがある場合は両側に記入される小切手の印刷方法に非常に似ています。
java - itext 7 テーブルの境界線の問題
itext 7 の現在のリリースでは、一部のセルが数行にまたがるテーブル内のセルの境界線のレンダリングに問題があります。
境界線をレンダリングする正しい (以下のドキュメントによる) 方法では、null ポインター例外が発生します。
直感的な方法(以下に示す)は、境界線なしのリクエストを無視し、すべての境界線をレンダリングするだけです。上部の境界線のみを要求します
これは、最初の行、最後から右側のセル (私の場合は「1.4」というラベルが付いています) でのみ発生します。そうでなければ、iText7 は素晴らしい製品であり、優れたソフトウェア エンジニアリングの例だと思います。ありがとう!
以下は、これら 2 つのケースを示す完全なソース コードです。
}
java - itext 7を使用してカスタムカラーを設定する方法
非常に単純な質問の解決策が見つかりません。テキスト/線などにカスタムカラーを設定するにはどうすればよいですか. JavaコードでiText7を使用していますか?
iText5 のこの返信を見つけましたが、バージョン 7には BaseColorクラスがありません...
java - 削除ページは既にフラッシュされています
ExcelファイルのデータでPDFファイルを作成しました。何が起こったのかわかりませんが、1 つの PdfPage を削除して別の場所に挿入しようとすると、「削除するページは既にフラッシュされています」という警告メッセージが表示されました。
使用されるコードは非常に単純です。
しかし、警告とエラーが発生しました:
[main] WARN com.itextpdf.kernel.pdf.PdfPage - 削除するページは既にフラッシュされています。スレッド「メイン」での例外 com.itextpdf.kernel.PdfException:flushed.page.cannot.be.added.or.inserted at com.itextpdf.kernel.pdf.PdfDocument.checkAndAddPage(PdfDocument.java:1473) at com.itextpdf .kernel.pdf.PdfDocument.addPage(PdfDocument.java:437)
正直なところ、他の PDF ファイルで上記のコードを試してみましたが、ページを削除したり挿入したりできます。私の PDF ファイルにはどのような理由が考えられますか?
私のアプリケーションで使用される完全なコード: