1

Flying Saucer を使用して HTML から PDF を生成しています (そのため、問題があれば ITextRenderer を使用しています)。

画像が見つからない場合に Webkit や Gecko が挿入するようなものをシミュレートしたいと思います - 挿入されたアウトラインと少し壊れたページ画像のようなものです。

でのオーバーライドgetImageResourceは、UserAgentCallbackこの状態をテストする方法であると判断しました ( の画像は にImageResourceなりますnull) が、API のこの時点でプレースホルダーをレンダリングする適切な方法がわかりません。

これを行う適切な方法はありますか?(これが箱から出して起こったらいいのに...)

4

1 に答える 1

0

あなたはここで正しい軌道に乗っています。

独自のカスタム ユーザー エージェント機能を使用してUserAgentCallbackを拡張したい。既存の Flying Saucer の実装とほぼ同じ機能を実行する必要がありますが、画像が見つからない場合は、含めるデフォルトの壊れたページの画像を返す必要があります。

iTextRenderer を使用している場合は、独自のカスタム UserAgent 用に拡張できるITextUserAgentクラスがあります。

UserAgent を設定するには、ITextRenderer を作成した後、次のコードを使用します。

ITextRenderer renderer = new ITextRenderer();
renderer.getSharedContext().setUserAgentCallback(new CustomITextUserAgent(renderer.getOutputDevice()));
于 2011-05-03T01:27:16.763 に答える