Cara, ele imprime uma página em branco…
qual o erro? a imagem severina tá na pasta da classe.
import java.awt.*;
import java.awt.print.*;
public class ImagePrintExample implements Printable {
String imagem = "severina.jpeg";
public ImagePrintExample() { // Obtem um job de impressao
PrinterJob job = PrinterJob.getPrinterJob(); // Define o objeto a ser impresso
job.setPrintable(this); // exibe o dialogo de impressao.
if (job.printDialog()) { try { // imprime o objeto printable
job.print();
} catch (PrinterException e) { e.printStackTrace();
} } }
public int print(Graphics g, PageFormat format, int page) throws PrinterException {
if (page != 0) {
return NO_SUCH_PAGE;
}
Graphics2D gr = (Graphics2D) g; // posiciona o objeto graphics no começo da area util da pagina
gr.translate(format.getImageableX(), format.getImageableY());
System.out.println("Caregando imagem"); // carrega a imagem do arquivo jpg
Image image =null;
try{
image = Toolkit.getDefaultToolkit().getImage(imagem);
}catch(Exception e){e.printStackTrace();}
MediaTracker mediaTracker = new MediaTracker(new Container());
mediaTracker.addImage(image, 0);
try {
mediaTracker.waitForID(0);
} catch (InterruptedException e) {
e.printStackTrace();
} // imprime a imagem na posicao relativa 10, 10
gr.drawImage(image, 10, 10, null);
return PAGE_EXISTS;
}
public static void main(String[] args) {
new ImagePrintExample();
}
}