ciao
per farmi capire meglio ti posto un po di codice :
questa è la classe che chiama la stampa:
codice:
PrinterJob pj = PrinterJob.getPrinterJob();
//pj.printDialog();
pj.setPrintable(new CollaudoPrint());
try {
pj.print();
} catch (PrinterException e) {e.printStackTrace();}
e questa è la classe che implementa printable:
codice:
public class CollaudoPrint implements Printable{
public int print(Graphics grap, PageFormat pageFormat, int pageIndex) throws PrinterException {
if(pageIndex > 0) return NO_SUCH_PAGE;
Font f;
Paper paper = new Paper();
paper.setImageableArea(42, 22, 500, 800);
pageFormat.setPaper(paper);
.
.
.
nella procedure che mi hai suggerito avviene sempre la stessa cosa anche settando printJob.defaultPage();
ciao grazie