1

我正在使用 java 编写一个 java 打印程序。我想将 pdf 文件发送到打印机中的不同托盘,我需要控制页面范围。我不喜欢将 printdialogbox 打印出来。这个程序是一个无声的打印机程序,所以我必须自动运行这个打印程序

PageFormat format = job.defaultPage();
format.setOrientation(PageFormat.PORTRAIT); 
printRequestAttributeSet.add(printerTray);
printRequestAttributeSet.add(Sides.ONE_SIDED);

PageFormat pf = job.defaultPage();
Paper paper = new Paper();
double margin = 36; // half inch
paper.setImageableArea(margin, margin, paper.getWidth() - margin*2, paper.getHeight()   - margin*2);
pf.setPaper(paper);`enter code here`

job.setPrintable(new MyPrintable(), pf);

PdfReader pdfReader = new PdfReader();
PDDocument document = pdfReader.loadPdf(pdfPath);

job.setPageable(document);
int firstno;
int LastNo;

printRequestAttributeSet.add(new PageRanges(firstno, LastNo));

//job.printDialog(printRequestAttributeSet);

job.print();//

我在运行这段代码时遇到了一些问题。我无法设置AttributeSet,所以它没有发送到我要发送的托盘,它是自动发送的。

4

1 回答 1

0

我相信它可能很简单:

job.print(printRequestAttributeSet);

参考

于 2013-03-14T11:05:51.587 回答