2 つの表を含む jpanel を印刷しようとしていますが、表の幅が表が表示されるページよりも大きいという問題があります。テーブルをページ幅に合わせる方法はありますか、それともテーブル自体のサイズを変更する必要がありますか??
これが私がしたことです:
PrinterJob job = PrinterJob.getPrinterJob();
job.setJobName("test");
job.setPrintable (new Printable() {
@Override
public int print(Graphics pg, PageFormat pf, int pageNum) throws PrinterException{
if (pageNum > 0){
return Printable.NO_SUCH_PAGE;
}
Graphics2D g2 = (Graphics2D) pg;
g2.translate(pf.getImageableX(), pf.getImageableY());
jPanel1.print(g2);
// jTable1.print(JTable.PrintMode.FIT_WIDTH, null, null);
return Printable.PAGE_EXISTS;
}
});
boolean ok = job.printDialog();
if (ok) {
try {
job.print();
} catch (PrinterException ex) {
}
}