我是用java.awt.print.PrinterJob
我有一個物件叫 doc extends JPanel
程式如下, 目前我只能算出第一頁到pageCount的範圍.
但是我想要可以從第5頁或是其他頁開始.
我試過 PrintRequestAttributSet aset;
aset.add(new PageRanges(x, y));
printJob.printDialog(aset); printJob.print(aset);
但它只印第一頁..不知道哪裡出問題?!
==================== code =======================
PrinterJob printJob = PrinterJob.getPrinterJob();
printJob.setPageable(book());
if(printJob.printDialog()){
...
try{
printJob.print();
}catch{}
...
}
public Book book(){
...
...
int pageCount = calPageCount(); //計算這圖是多少頁數
book.append(a, b, pageCount); //a表示現在我要印的doc,
//b表示現在的pageFormat
return book;
}
=======================================================
※ 引述《sbrhsieh (sbr)》之銘言:
: ※ 引述《ogimaa (少了個A的Amigo)》之銘言:
: : 假設我有一個document文件..
: : 大約是三張A4大小...
: : 現在我只要印第二張就好...
: : 那我要怎麼去決定這document的位置(第二張).
: : 或者是document的某些範圍..
: : 我已經試過attribute set pageRanges
: : 但是印出來還是有問題..!!
: : 謝謝!!
: Java application 要做列印工作有三個選擇:
: 1. java.awt.PrintJob
: 2. java.awt.print.PrinterJob
: 3. javax.print.PrintService
: 可否說明你採用哪一個作法,以及你要列印的東西是什麼,這樣子會比較
: 容易繼續討論下去。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.204.116.252
※ 編輯: ogimaa 來自: 123.204.116.252 (01/28 11:28)