Ich versuche, ein PDF in A4-Format zu drucken, aber die Ausgabe variiert von der erwarteten.Java-Druck: falsche Papiergröße
das ist, was es wie
siehtaber es sollte wie diese
beiden Bilder sind gleiche Auflösung
Dies ist der Code sein, erzeugt diese Ausgabe.
PrinterJob pj = PrinterJob.getPrinterJob();
pj.setPrintService(service);
PageFormat pf = new PageFormat();
Paper paper = new Paper();
paper.setSize(595, 842); // a4 in px
paper.setImageableArea(0, 0, 595, 842);
pf.setPaper(paper);
Book book = new Book();
book.append(pages, pf, pdfFile.getNumPages());
pj.setPageable(book);
pj.print();
im Grunde ist es nur geschrumpft. Was soll ich tun, um das zu beheben?
und übrigens, ich benutze keinen echten Drucker. Ich benutze eine virtual printer, die eine Druckanforderung nimmt und eine PDF ausgibt.
Haben Sie den Code, der die Tabelle generiert, weil ich mit diesem Teil des Codes nichts falsch sehe. – namlik
meine Anwendung kann das pdf sowohl drucken als auch speichern. das korrekte Bild (2. Bild) wurde durch Speichern des Bildes (natürlich A4) erzeugt. und das falsche (1. Bild) ist das gleiche, aber GEDRUCKT. also ich denke, es ist nichts falsch mit der Tabelle Zeichnungscode. – bazi