問題タブ [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.

0 投票する
2 に答える
3654 参照

java - xmlworker が iText 7 コアにありません

JavaでiText 7を使用しようとしています。HTML/XHTML を PDF に変換したい。

には存在xmlworker.jarしないようiText 7 coreです。

iText 7 の代替品は何ですか?

解決策はありますか?

0 投票する
1 に答える
2775 参照

itext - itext 7 で動作するようにコードを変更する方法

次のコードは、iText 5 で適切に動作します。

iText 7 の正しい構文は何ですか?

iText 7 に関する例とドキュメントはどこにありますか?

0 投票する
1 に答える
584 参照

itext7 - itext 7 の PageSize

iText 7 の PageSize の静的値は ISO の「A」サイズのみですが、5 にはやや趣のある四分の一とペンギンのサイズを含む約 52 の値がありました。

これは永続的な状態になるのでしょうか、それともある時点で含まれますか? 必要なサイズの Rectangle を作成できることはわかっていますが、これは常に紙を失うのに役立ちます...

0 投票する
1 に答える
472 参照

itext7 - itext 7を使用して列番号を決定するにはどうすればよいですか

itext 7 とその ColumnDocumentRenderer を使用してドキュメントを作成しました。最後の列にテキストを強制したいと思います。「最後の列」とは、たとえば、ColumnDocumentRenderer で 3 つの列を持つように定義された単一のページがあるが、テキストの列が 1 つしかない場合でも、列 3 に強制値を含める必要があることを意味します。したがって、私がいる列番号を知り、列を強制的に分割するメカニズムが必要になると思います(解決策を前提として、他の人は高く評価しています)。StackOverflow はこれを質問の形式で求めているため、(a) これらのメカニズムは何ですか? (b) 代替アプローチとは?

質問iText を使用してテキスト挿入ポイントを次の列にスキップするにはどうすればよいですか? 明らかに同様の質問をしますが、どうやらitextの以前のリリースを使用しているようです。私が見つけることができるColumnTextはありません。

助けてくれてありがとう。

0 投票する
0 に答える
927 参照

java - iText7 は古い BouncyCastle ライブラリを参照します

OK、iText (7) および BouncyCastle (154) jar ファイルに対してコンパイルされたテスト Java プログラムを実行しようとしています。signDetached 関数を呼び出すときに OCSP 応答を追加しようとするまで、すべてが問題なく動作します。

私のコードは基本的に、iText Web サイトの次のコードです。

http://developers.itextpdf.com/examples/security/digital-signatures-white-paper/digital-signatures-chapter-3#855-c3_07_signwithocsp.java

必要に応じて証明書とパスワードの詳細を置き換えました。すべて正常にコンパイルされますが、実行すると Java コードが次のエラーで失敗します。

スレッド「メイン」の例外 java.lang.NoClassDefFoundError: com.itextpdf.signatures.OcspClientBouncyCastle.getEncoded(OcspClientBouncyCastle.java:148) の org.bouncycastle.ocsp.RevokedStatus com.itextpdf.signatures.PdfSigner.signDetached(PdfSigner.java) :510) DECSignHello.DoSign(DECSignHello.java:314) で DECSignHello.main(DECSignHello.java:125) 原因: java.lang.ClassNotFoundException: org.bouncycastle.ocsp.RevokedStatus at java.net.URLClassLoader.findClass( URLClassLoader.java:600) の java.lang.ClassLoader.loadClassHelper(ClassLoader.java:777) の java.lang.ClassLoader.loadClass(ClassLoader.java:750) の sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java) :326) at java.lang.ClassLoader.loadClass(ClassLoader.java:731) ... 4 つ以上

OcspClientBouncyCastleもう少し深く掘り下げると、iText7 が、はるかに古い BouncyCastle 実装 (151 より前のもの - このクラスを含むバージョンをまだ正確に特定していない) のクラス ファイルを参照するという Java クラスを使用していることがわかります。参照しているクラスはorg.bouncycastle.ocsp.RevokedStatus. 問題の原因となっているコードは次のとおりです。

status instanceof org.bouncycastle.ocsp.RevokedStatus

の 148 行目OcspClientBouncyCastle.java。151以降のBouncyCastle jarファイルには存在しません...

同じ iText クラスファイルは、他のすべての BouncyCastle 関連OcspClientBouncyCastle.javaのパスにある新しい BouncyCastle クラスも使用しているように見えるため、2 つの異なる BouncyCastle 実装を使用しているように見えます。org.bouncycastle.cert.ocsp.*少なくとも私にはそう見えます。

OcspClientBouncyCastle.javaサービスプロバイダーから無効な OCSP 応答を受け取ったとき (失効した証明書を使用してテストしているため、予期されていた)、ソースコードによって参照されているクラスがクラスパスに見つからないため、OCSP テストが失敗する原因となっています。トラップできないエラーですべてが失敗します。

これで、次のように 154 BouncyCastle 実装の有効なクラスを使用して手動で OCSP 検証を行うことで、いわばこれを回避できます。

等々...

ただし、iText7関数 ( OCSP クライアント パラメーターのPdfSigner.signDetachedパスとインスタンス)を使用するとすぐに、コードが呼び出され、「古い」クラスが使用されます。OcspClientBouncyCastleOcspClientBouncyCastle.java

クラスパスに古い(まだ特定されていない)BouncyCastle jarファイルを含めることで、そのエラーを回避できると思いますが、それは非常に雑然としたソリューションのようです。

ファイルを編集しOcspClientBouncyCastle.javaて誤った関数を修正し、BouncyCastle 関数の新しい実装を使用することもできますが、それもやり過ぎのようです。

私はコマンドラインで AIX 環境で作業していることに言及する必要があります。したがって、Java 開発ツール/環境はありませんvi。クラスパスを (コンパイルおよび実行時に) 手動で構築し、ksh シェル スクリプトを使用してコードを実行しています。

結局のところ、私の質問はこれだと思います: iText がOcspClientBouncyCastleこのようにクラスを実装する合理的な理由を誰か思いつくことができますか?

私はこのフォーラムの長年のフォロワー/ユーザーですが、何かを投稿するのはこれが初めてです。私の「質問」の範囲はかなり広いので、前もってお詫び申し上げます。

サンプルコードは次のとおりです。

0 投票する
1 に答える
1542 参照

itext7 - 現在のページ位置で IText 7 を使用して PdfFormField を追加するにはどうすればよいですか

次の Scala コード スニペットを使用して、ページの特定の場所に PdfFormField を追加することができました。

ただし、できるようにしたいのは、挿入したページの最後の段落の後に追加することです。(つまり、このフィールドは直後に来ます)。適切な長方形を導き出す方法はありますか、それとももっと簡単な方法はありますか? ありがとう

0 投票する
1 に答える
1578 参照

java - iText 7で透かしとして画像を使用する

iText 7は 2016 年 5 月にリリースされたばかりで、チュートリアルの一部は役に立ちましたが、より高度な機能の一部は理解しにくいものでした。このページには、テキストを透かしとして使用する方法の例があります (ページの約 90% まで) が、画像を透かしとして使用する方法がわかりません。新しいリリースで。iText 7で画像を透かしとして使用する方法を知っている人はいますか? どこから始めればよいですか?