public SundialPrinter(BufferedImage image) {
		this.image = image;
		
		System.out.println(image.getWidth() + "x" + image.getHeight());

		PrinterJob pj = PrinterJob.getPrinterJob();
		if (pj.printDialog()) {
		    PageFormat pf = pj.defaultPage();
		    Paper paper = pf.getPaper();
		    //8.5x11 paper size
		    double width = fromCMToPPI(27.94);
		    double height = fromCMToPPI(20.32);
		    paper.setSize(width, height);
		    paper.setImageableArea(
		                    fromCMToPPI(0.1),
		                    fromCMToPPI(0.1),
		                    width - fromCMToPPI(0.1),
		                    height - fromCMToPPI(0.1));
		    pf.setOrientation(PageFormat.LANDSCAPE);
		    pf.setPaper(paper);
		    PageFormat validatePage = pj.validatePage(pf);
		    System.out.println("Valid- " + dump(validatePage));
		    pj.setPrintable(new MyPrintable(), validatePage);
		    try {
		        pj.print();
		    } catch (PrinterException ex) {
		        ex.printStackTrace();
		    }
		}
	}