2013-03-14 2 views
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

Есть ли вопрос где-то? – Dukeling

+0

его новый вопрос. Я сталкиваюсь с некоторыми проблемами, пока я запускаю этот код. Я не могу установить AttributeSet. поэтому он не отправляет лоток, который я хочу отправить. его отправка автоматически – CrazyGuy

+1

@ vkmss1986 По вопросам, касающимся StackOverflow, предоставьте как можно больше подробностей. Это включает ожидаемое поведение вашей проблемы, описание того, что происходит вместо этого, и то, что вы пытались решить до сих пор. Если вы видите какие-либо ошибки или stacktraces, отправьте их также. Без достаточной информации мы можем только догадываться, какова именно ваша настоящая проблема. – cyroxx

ответ

0

Я считаю, что это может быть столь же просто, как:

job.print(printRequestAttributeSet); 

Reference.

+0

Я тоже это сделал. когда я отправляю запрос на печать, он бросает ошибку, содержащую нуль. – CrazyGuy

+1

Не могли бы вы высказать полное сообщение об ошибке? – cyroxx

+0

программной ошибки в программе нет. Я добавлю рабочий код с помощью printdialogbox. printRequestAttributeSet.add (printerTray); \t \t printRequestAttributeSet.add (Sides.ONE_SIDED); \t \t PdfReader pdfReader = new PdfReader(); \t \t Документ PDDocument = pdfReader.loadPdf (pdfPath); \t \t \t job.setPageable (document); \t \t int firstno = 0; \t \t int LastNo = 0; \t \t \t \t printRequestAttributeSet.add (new PageRanges (firstno, LastNo)); \t \t \t \t job.printDialog (printRequestAttributeSet); \t \t \t \t job.print (printRequestAttributeSet); – CrazyGuy