同上私のコンポーネントは、「法案であるPDFに私のJComponent(テキストや線の多くを描画するカスタムpaintcomponent方法、小さな画像の小さなワードアプリケーションの(種類))をエクスポートする輸出JComponentの
が好き
com.itextpdf.text.Rectangle r = new com.itextpdf.text.Rectangle(0,0,bill.getWidth(),bill.getHeight());
Document document = new Document(r);
try {
PdfWriter writer;
writer = PdfWriter.getInstance(document, new FileOutputStream(f));
document.open();
PdfContentByte cb = writer.getDirectContent();
PdfTemplate tp = cb.createTemplate(bill.getWidth(), bill.getHeight());
Graphics2D g2d = tp.createGraphics(bill.getWidth(), bill.getHeight(), new DefaultFontMapper());
bill.addNotify();
bill.validate();
bill.paint(g2d);
g2d.dispose();
cb.addTemplate(tp, 0, 0);
}
catch(Exception e) {
e.printStackTrace();
}
document.close();
は、それは非常によく動作しますが、二つの大きな問題があります:「
私は(これは動作しますが、いくつかの方法が推奨されていません)このために使用する方法はあるメソッドのtp.createGraphicsが廃止されました(だから、より良い解決策があるかもしれない)とスイングコンポーネントがvの場合それはPDFの1ページだけに印刷されます。
私が必要とするのは、印刷用にA4サイズのページを作成するのに役立つ「ページ分割」です。もちろん、jcomponentが非常に大きいときにバッファオーバーフローがなくても...
誰でも助けてくれますか?