0

compというJPanelを印刷しようとしています。これには、表といくつかのラベルが含まれています。

表がページの幅を超えているコンプを印刷します。なぜなのかよくわかりません

起こっている。この問題の解決策が必要

これが私が使用している印刷方法です:

private void printCard(){

PrinterJob printjob = PrinterJob.getPrinterJob();
printjob.setJobName(" personal card ");

printjob.setPrintable (new Printable() {      
     public int print(Graphics pg, PageFormat pf, int pageNum){                  

         pf.setOrientation(PageFormat.LANDSCAPE);

         if (pageNum > 0){
            return Printable.NO_SUCH_PAGE;
         }

         Graphics2D g2 = (Graphics2D) pg;
         g2.translate(pf.getImageableX(), pf.getImageableY());
         g2.translate( 0f, 0f );
         comp.paint(g2);

         return Printable.PAGE_EXISTS;
     }
});

if (printjob.printDialog() == false)
   return;

try {
   printjob.print();
}
catch (PrinterException ex) {
   System.out.println("NO PAGE FOUND."+ex);
   }
}

前もって感謝します。

4

1 に答える 1

0

テーブルとラベルのサイズを変更します。これは機能するはずです。

于 2012-05-28T16:00:59.217 に答える