Dúvida com PrintJob

Boa tarde,

Minha dúvida é o seguinte, estou tentando imprimir bufferedimage, eu sei que tem inumeros post se referindo a isso, inclusive eu eu usei um pedaço de vários deles para conseguir chegar onde eu parei, porém não sei como “ligar” o bufferedimage a PrinterJob.

[code]

public void teste() {

Frame f = new Frame(“Testando impressão”);
f.pack();
Toolkit tk = f.getToolkit();
PrintJob pj = tk.getPrintJob(f, “print1”, null);

if (pj!=null) {
Graphics g = pj.getGraphics();
g.drawString(“Meu teste…”, 100, 100);
g.dispose();
pj.end();
}
f.dispose();
}[/code]

Muito bem, isso acima imprime a string “Meu Teste…” funciona, agora eu quero que ele imprima um bufferedimage q eu vou colcar ai… Mas eu não entendi como eu posso fazer isso… Antes de chegar ai eu edito essa imagem assim :

    
    ...
        BufferedImage imagem = ImageIO.read(caminho); // "caminho" vem de um JFileChooser
        Graphics gg = imagem.createGraphics();
         ...// ai faço mil coisas com a imagem...

Eu queria saber, e me corrijam por favor se eu estiver viajando muito, se é possível eu “aproveitar” esse “gg” e ja usá-lo lá no codigo da impressão ao invés de instanciar mais um Graphics. Falei mta bobagem??? enfim … vlw pela ajuda ae!