package de.gaalop.vis2d.drawing; import java.awt.Graphics; import java.awt.geom.Rectangle2D; import java.awt.geom.Rectangle2D.Double; import java.awt.print.PageFormat; import java.awt.print.Printable; import java.awt.print.PrinterException; /** * * @author Christian Steinmetz */ public class DrawVisitorPrintable implements Printable { private Drawing drawing; private Rectangle2D.Double world; public DrawVisitorPrintable(Drawing drawing, Double world) { this.drawing = drawing; this.world = world; } @Override public int print(Graphics graphics, PageFormat pageFormat, int pageIndex) throws PrinterException { DrawVisitorGraphics drawVisitorGraphics = new DrawVisitorGraphics(world, (int) (pageFormat.getWidth()), (int) (pageFormat.getHeight())); drawVisitorGraphics.setGraphics(graphics); drawing.draw(drawVisitorGraphics); return (pageIndex == 0) ? Printable.PAGE_EXISTS : Printable.NO_SUCH_PAGE; } }