Primitivt API för utskrift (AWT)

Att skriva ut en frame är väldigt lätt både i Swing och AWT. I korthet går man till väga på följande sätt.
  1. Skaffa en referens till Toolkit med metoden Toolkit tk = Tookit.getDefaultToolkit();
  2. Skaffa ett PrintJob med metoden PrintJob pj = tk.getPrintJob( theFrame, theName, theProps );
  3. theFrame är en referens till framen som ska skrivas ut.
    theName är en sträng som namnger jobbet.
    theProps är ett objekt av java.util.Properties som används för att ge defaultvärden till fälten i utskriftsdialogen.
    När ovanstående metod exekveras dyker utskriftsdialogen upp på skärmen. Om användaren fullföljer utskriften returneras inte null och Properties-objektet är uppdaterat till att reflektera användarens inställningar. Om användaren avbryter returneras null.
  4. Skaffa en referens till PrintJob:ets Graphics-objekt med metoden Graphics g = pj.getGraphics();
  5. Anropa printAll för att skriva ut aktuell komponent och dess barn, anropa print för att skriva ut endast aktuell komponent, theFrame.printAll( g );
  6. Anropa theFrame.paint( g ); för att rita i PrintJob:ets Graphics-objekt. Detta strider inte mot regeln att endast en tråd får uppdatera skärmen, eftersom vi inte ritar i framens Graphics-objekt och därmed inte på verkar skärmen.
  7. Anropa metoderna g.dispose(); och pj.end(); för att skicka utskriften till skrivaren.
Till slut ett exempel: Printout.java.