Usando o método PrinterJob para imprimir um arrayList

1 resposta
imprimirjava
M

Boa tarde galera, to com uma duvida que acredito eu que seja bem fácil de resolver, só não to sabendo usar bem a classe Printable, nunca tinha usado métodos de impressão em java antes, então desculpem qualquer erro grotesco que encontrarem.
Bem eu estou usando o seguinte código

public class Impressao1 implements Printable {

public Impressao1() {

	PrinterJob printJob = PrinterJob.getPrinterJob();

	printJob.setPrintable(this);
	printJob.setJobName("M&K Papelaria Cupom");
	
	try {
		if (printJob.printDialog()) {
			printJob.print();
		}
	} catch (Exception PrintException) {
		PrintException.printStackTrace();
	}

}


public int print(Graphics g, PageFormat pageFormat, int page) {
	int i;
	Graphics2D g2d, g2d2;
	
	if (page == 0) {
		
		g2d = (Graphics2D) g;
		g2d.setColor(Color.black);
		
		g2d.translate(pageFormat.getImageableX(), pageFormat.getImageableY());
		
		g2d.setFont(new Font("Arial", Font.PLAIN, 10));
		g2d.drawString("M&K Papelaria", 50, 30);
		g2d.setFont(new Font("Arial", Font.PLAIN, 8));
		g2d.drawString("Cupom não fiscal", 47, 45);
		g2d.drawLine(0, 50, 180, 50);
		g2d.setFont(new Font("Courier New", Font.BOLD, 8));
		g2d.drawString("Descrição", 10, 58);
		g2d.drawString("Quant.", 75, 58);
		g2d.drawString("Valor", 130, 58);
		g2d.drawLine(0, 60, 180, 60);
		int loop = 70;
		for (i = 0; i < 80; i++) {
			g2d.setFont(new Font("Arial", Font.PLAIN, 7));
			g2d.drawString("" + i, 10, loop);
			g2d.drawString("CLIPS ACC 3/0", 15, loop);
			g2d.drawString("1", 75, loop);
			g2d.drawString("2,50", 130, loop);
			loop += 10;
		}
		return (PAGE_EXISTS);
	} else
		return (NO_SUCH_PAGE);
}

public static void main(String s[]) {
	new Impressao1();
}

}

Oque eu estou querendo é imprimir em uma impressora térmica não fiscal um pedido, só que quando as mercadorias ultrapassam uma folha ele não imprime, ou seja, só ta imprimindo uma folha e para o serviço, alguém saber como posso resolver ?

1 Resposta

M

Ninguém nunca teve um problema parecido?

Criado 29 de novembro de 2018
Ultima resposta 2 de dez. de 2018
Respostas 1
Participantes 1