printerImage = new Image(printer, dirtyPaperBounds.width, dirtyPaperBounds.height);
printerGC = new GC(printerImage);
printerTransform = new Transform(printer);
printerGC.getTransform(printerTransform);
printerTransform.translate(paperDisplayBounds.x - dirtyPaperBounds.x,
paperDisplayBounds.y - dirtyPaperBounds.y);
printerTransform.scale((float) paperDisplayBounds.width
/ (float) paperSize.x, (float) paperDisplayBounds.height
/ (float) paperSize.y);
printerGC.setTransform(printerTransform);