2

XMLJava EE 環境で、 andXSLファイルをロードし、出力をブラウザ ウィンドウにレンダリングし、レンダリングされたページを PDF として保存したいと考えています。

私はそれをすべてプログラムでやりたいと思っています。ヘッドレス ブラウザとして使用する HtmlUnit を見ていました。その部分は機能しているようですが、HtmlUnit には「印刷」関数または同様の関数を呼び出してレンダリングされた出力を永続化する API がありますか? それをiTextにリンクする方法を考えていました。

4

2 に答える 2

3

この場合、基本的に CSS/XHTML 対応の iText ラッパーであるフライングソーサーを試すことをお勧めします。

以下に簡単な例を書きました。HtmlUnit とフライングソーサーに必要な依存関係を忘れないでください。

//Set up a new WebClient using your favourite settings
WebClient webClient = new WebClient();

//Fetch page
HtmlPage page = webClient.getPage("url-to-target.resource");

//Set PDF target output file
String outputFile = "firstdoc.pdf";
OutputStream os = new FileOutputStream(outputFile);

//Set up flying-saucer IText based renderer 
ITextRenderer renderer = new ITextRenderer();

//Create PDF
renderer.setDocumentFromString(page.asXml();
renderer.layout();
renderer.createPDF(os);

os.close();
于 2013-03-12T18:18:59.547 に答える
-1

Java でレポートを作成している場合は、 Jasper Reportsを使用することを強くお勧めします。Jasper Reportsは比較的使いやすく、レポートをグラフィカルに設計でき、XML を入力として取り、多くの形式 (PDF を含む) でレポートを作成できます。

于 2013-03-15T15:27:41.127 に答える