Jueves 14 de Noviembre de 2024, 08:15
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
Java
(Moderador:
arielb
) »
Impresoras En Java
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Impresoras En Java (Leído 4060 veces)
maldicion
Miembro activo
Mensajes: 47
Impresoras En Java
«
en:
Martes 5 de Abril de 2005, 20:57 »
0
mm
Tweet
fuhrer
Miembro MUY activo
Mensajes: 329
Nacionalidad:
Re: Impresoras En Java
«
Respuesta #1 en:
Martes 5 de Abril de 2005, 23:08 »
0
Hola que tal.
Lo que yo hice y si me funciono fue lo siguiente:
Código: Text
private metodoDeTuBoton() {
PrinterJob printJob = PrinterJob.getPrinterJob();
printJob.setPrintable(this);
if (printJob.printDialog()) {
try {
printJob.print();
} catch (Exception ex) {
ex.printStackTrace();
}
}
y luego para la impresión:
Código: Text
public int print(Graphics g, PageFormat pf, int pi) throws PrinterException {
if (pi >= 1) {
return Printable.NO_SUCH_PAGE;
}
cnv[actual].paint((Graphics2D) g);
return Printable.PAGE_EXISTS;
}
el único cambio que debes hacer es en donde yo pongo cnv[actual] poner el de tu componente y llamar al método que usas para el pintado.
También debes importar estos dos:
Código: Text
import java.awt.print.PrinterJob;
import java.awt.print.*;
Y a tu clase la declaras:
Código: Text
class MyJPanel extends JPanel implements Printable{
Creo eso es todo lo necesario.
Espero haberte ayudado.
Hasta luego.
Tienda México
Busquenos En Internet
Tuxiber
maldicion
Miembro activo
Mensajes: 47
Re: Impresoras En Java
«
Respuesta #2 en:
Miércoles 6 de Abril de 2005, 18:13 »
0
mm
fuhrer
Miembro MUY activo
Mensajes: 329
Nacionalidad:
Re: Impresoras En Java
«
Respuesta #3 en:
Jueves 7 de Abril de 2005, 01:52 »
0
Hola de nuevo.
Pues no se si te sirva, o tal vez lo puedes adaptar a lo que necesitas, pero lo que yo hice fué usando Graphics2D, así que lo necesario es:
Código: Text
import java.awt.image.*;
import java.awt.geom.*;
luego haces:
Código: Text
Image img = Toolkit.getDefaultToolkit().getImage("ruta/de/tu/imagen/imagen.jpg");
BufferedImage imag = new BufferedImage(100, 100, BufferedImage.TYPE_INT_RGB);
Graphics2D imgs = imag.createGraphics();
imgs.drawImage(img,0,0,100,100,null);
g2.setPaint(new TexturePaint(imag, new Rectangle(0,0,100,100)));
g2.fillRect(x,y,x1,y1);
Con eso te dibuja la imágen dentro del Rectangulo que proporciones, ahora que con esto tambien puedes colocar la imagen dentro de circulos, ovalos, etc, cualquier figura permitida.
Ahi sólo le varias algunas coordenadas que se ajusten a lo que deseas.
Espero te sirva.
Hasta luego.
Tienda México
Busquenos En Internet
Tuxiber
maldicion
Miembro activo
Mensajes: 47
Re: Impresoras En Java
«
Respuesta #4 en:
Domingo 10 de Abril de 2005, 00:57 »
0
hola fuhrer:
ya logre que se imprimiera, tanto la imagen como los textos, y me sirvio de mucho tu codigo de la impresora, asi pude reducir un poco mas mi codigo.
ahora quisiera saber como puedo hacer para que los textfield, que reciben los datos, se presentaran de manera centrada, de hecho ya se muestran en la pantalla, pero se salen de la frame interna, estoy utilizando el FlowLayout y el Grid Layout, pero como te digo se salen de las coordenadas de 500, 350, si puedo despues te envio el codigo para que veas que es lo que hace.
GRACIAS POR EL TIP ANTERIOR
fuhrer
Miembro MUY activo
Mensajes: 329
Nacionalidad:
Re: Impresoras En Java
«
Respuesta #5 en:
Domingo 10 de Abril de 2005, 03:53 »
0
Pues para poder colocar lo que quieras sin necesidad de usar algun Layout, puedes usar reshape:
Código: Text
class miclase{
TextField t1;
Label l1;
Button b;
public void init(){
setLayout(null);
l1=new Label("Texto: ");
l1.reshape(300,10,45,25);
add(l1);
t=new TextField(2);
t.reshape(345,10,30,28);
b=new Button("Texto");
b.reshape(325,70,50,25);
add(b);
}
como podras ver dentro de reshape van las coordenadas (x,y) de la poscisión de tu componente y coordenadas (x,y) del tamaño de tu componente. y debes poner tu layout como nulo para que te permita hacer esto.
De esta forma es mas facil colocar lo que quieras donde quieras.
Hasta luego.
Tienda México
Busquenos En Internet
Tuxiber
maldicion
Miembro activo
Mensajes: 47
Re: Impresoras En Java
«
Respuesta #6 en:
Lunes 18 de Abril de 2005, 19:33 »
0
mm
fuhrer
Miembro MUY activo
Mensajes: 329
Nacionalidad:
Re: Impresoras En Java
«
Respuesta #7 en:
Martes 19 de Abril de 2005, 03:46 »
0
No se si pudieras capturar la imagen que obtienes para ver mas o menos lo que ocurre.
Y sobre esos errores que ter marca, es normal, solo son warnings y no hay problema por ellos.
Tienda México
Busquenos En Internet
Tuxiber
maldicion
Miembro activo
Mensajes: 47
Re: Impresoras En Java
«
Respuesta #8 en:
Martes 19 de Abril de 2005, 20:40 »
0
bueno, la imagen te la mando mas al rato que llegue a la casa, pero lo que hace es que los coampos de texto, aparecen demasiadas veces,es decir si minimizas y maximizas la pantalla van apareciendo mas, y no se por que es.
ademas, cuando mando los datos a la impresora y le digo que
g.drawString("nombre"+t1.getText(),....);
imprime unicamente nombre y no lo del getText. y no se por que , la funcion de envio de datos a mysql sy los obtiene asi y los guarda en la bd.
AUXILIO!!!!!
GRACIAS DE ANTEMANO
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
Java
(Moderador:
arielb
) »
Impresoras En Java