Ecco un esempio per stampare qualsiasi componente Swing.
Stampa il contenuto dello Component
chiamato componenet_name
. Assicurati che sia visibile per questo metodo.
public void printComponenet(){
PrinterJob pj = PrinterJob.getPrinterJob();
pj.setJobName(" Print Component ");
pj.setPrintable (new Printable() {
public int print(Graphics pg, PageFormat pf, int pageNum){
if (pageNum > 0){
return Printable.NO_SUCH_PAGE;
}
Graphics2D g2 = (Graphics2D) pg;
g2.translate(pf.getImageableX(), pf.getImageableY());
componenet_name.paint(g2);
return Printable.PAGE_EXISTS;
}
});
if (pj.printDialog() == false)
return;
try {
pj.print();
} catch (PrinterException ex) {
// handle exception
}
}
fonte
2009-04-15 05:56:15
come è possibile ridimensionare il componente di conseguenza nella pagina in modo che si adatti? –
@Saher hai mai capito come si fa? Grazie –
potresti aggiungere ulteriori spiegazioni (testo)? Si suppone che si debba derivare un JComponent e aggiungere questo metodo o cosa si dovrebbe fare con questo? Grazie. –