Установить ориентацию не работает в java printjob
Когда я запускаю этот код. вывод не идет пейзаж или портрет.
я хочу повернуть сам вывод
public void printMedCertPage() throws PrinterException {
try {
HashPrintRequestAttributeSet attr = new HashPrintRequestAttributeSet();
attr.add(new MediaPrintableArea(0f, 0f, 72f, 72f, MediaPrintableArea.INCH));
PrinterJob job = PrinterJob.getPrinterJob();
PageFormat pf = job.defaultPage();
job.setJobName("Print Java Component");
job.setPrintable(new Printable() {
public int print(Graphics g, PageFormat pageFormat, int pageIndex) {
if (pageIndex > 0) {
return (NO_SUCH_PAGE);
} else {
Graphics2D g2d = (Graphics2D) g;
g2d.translate(pageFormat.getImageableX(),
pageFormat.getImageableY());
pageFormat.getImageableX();
g2d.scale(0.875, 0.9);
JPanelMenu.paint(g2d);
return (PAGE_EXISTS);
}
}
});
if (job.printDialog()) {
try {
pf.setOrientation(PageFormat.REVERSE_LANDSCAPE);
job.print();
} catch (PrinterException e) {
System.err.println(e.getMessage());
}
}
} catch (Exception ex) {
JOptionPane.showMessageDialog(null, ex);
}
}
я думаю, что сеториентация должна делать ту работу, которую я желаю