![]() |
The Java Developers Almanac 1.4Order this book from Amazon. |
e681. The Quintessential Printing ProgramNote that (0, 0) of theGraphics object is at the top-left of the
actual page, outside the printable area. In this example, the
Graphics object is translated so that (0, 0) becomes the top-left
corner of the printable area.
import java.awt.*; import java.awt.print.*; public class BasicPrint extends JComponent implements Printable { public int print(Graphics g, PageFormat pf, int pageIndex) { if (pageIndex > 0) { return Printable.NO_SUCH_PAGE; } Graphics2D g2d = (Graphics2D)g; g2d.translate(pf.getImageableX(), pf.getImageableY()); drawGraphics(g2d, pf); return Printable.PAGE_EXISTS; } public static void main(String[] args) { PrinterJob pjob = PrinterJob.getPrinterJob(); PageFormat pf = pjob.defaultPage(); pjob.setPrintable(new BasicPrint(), pf); try { pjob.print(); } catch (PrinterException e) { } } }
e683. Setting the Orientation of a Printed Page e684. Printing Pages with Different Formats e685. Displaying the Page Format Dialog e686. Displaying the Print Dialog © 2002 Addison-Wesley. |