Código Java:
Ver original
import java.awt.Color; import java.awt.Font; import java.awt.FontMetrics; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.geom.Rectangle2D; import java.awt.image.BufferedImage; import java.awt.print.*; import java.util.Date; import java.util.logging.*; import net.sourceforge.barbecue.*; import net.sourceforge.barbecue.output.OutputException; public class imprimir_individual { String item_no,ident,country_o,country_o2,qty2,cus; recibir_serial res_ser=new recibir_serial(); item_no=item; ident=iden; country_o=country; country_o2=country2; qty2=qty; cus=cust_num; if(valor==1){ book.append(new IntroPage(), printJob.defaultPage()); printJob.setPageable(book); if (printJob.printDialog()) { try { printJob.print(); PrintException.printStackTrace(); } } } } try { int [] diasDeMeses = new int [] {31,28,31,30,31,30,31,31,30,31,30,31,30,31}; int mes = fecha.getMonth(); int dia = fecha.getDay(); int dia2=0; int dias = -1; for( int i = 0; i<mes; i++ ){ dia2=diasDeMeses[i]; dias =dias + dia2; } dias += dia; if(dias_acum.length()==1){ dias_acum="00"+dias_acum; } if(dias_acum.length()==2){ dias_acum="0"+dias_acum; } int iNumero=fecha.getYear(); int anio = iNumero%10; g2d2.translate(pageFormat.getImageableX(), pageFormat.getImageableY()); g2d2.draw(rec_ind); Barcode barcode_c = BarcodeFactory.createCode39(cus, false); barcode_c.setDrawingText(false); barcode_c.setBarHeight(35); barcode_c.setBarWidth(1); g2d2.setFont(julian_iFont); g2d2.drawString(julian_ind, 64, 16); g2d2.drawImage(image_c, 10, 21, null); g2d2.setFont(customerFont); g2d2.drawString(customer, 41, 84); //// g2d2.setFont(julian_iFont); g2d2.drawString(julian_ind, 64, 200); g2d2.drawImage(image_c, 10, 145, null); g2d2.setFont(customerFont); g2d2.drawString(customer, 43, 141); } catch (OutputException ex) { Logger.getLogger(imprimir_individual.class.getName()).log(Level.SEVERE, null, ex); } catch (BarcodeException ex) { Logger.getLogger(imprimir_individual.class.getName()).log(Level.SEVERE, null, ex); } return PAGE_EXISTS; } } }
el asunto es q con este codigo se me abre un cuadro de dialogo en el q escojo la impresora a la que quiero mandar a imprimir con este codigo q esta en el de arriba
PrinterJob printJob = PrinterJob.getPrinterJob();
Book book = new Book();
book.append(new IntroPage(), printJob.defaultPage());
printJob.setPageable(book);
if (printJob.printDialog()) {
try {
printJob.print();
} catch (Exception PrintException) {
PrintException.printStackTrace();
}
}
y si lo dejo asi
PrinterJob printJob = PrinterJob.getPrinterJob();
Book book = new Book();
book.append(new IntroPage(), printJob.defaultPage());
printJob.setPageable(book);
try {
printJob.print();
} catch (Exception PrintException) {
PrintException.printStackTrace();
}
me manda imprimir directamente a la impresora q tengo predeterminada en mi pc
mi pregunta es alguien sabe como puedo mandar a imprimir a una impresora x q no sea la predeterminada
quiero algo como esto no se si se pueda asi pero es un ejemplo de como quiero hacerle
PrinterJob printJob = PrinterJob.getPrinterJob();
Book book = new Book();
book.append(new IntroPage(), printJob.defaultPage());
printJob.setPageable(book);
if (printJob.printDialog()) {
try {
printJob.print("hp laserject P1002");//aqui darle el nombre de la impresora
} catch (Exception PrintException) {
PrintException.printStackTrace();
}
}
o algo q se le paresca
espero haberme explicado y puedan ayudarme gracias