Impressão cupom não-fiscal

Bem, pessoal, estou desenvolvendo um aplicativo de comanda de bar, preciso fazer a impressão da comanda de cada mesa com o seu consumo.
Minha dificuldade está sendo elaborar essa comanda no ireport com as mesma dimensões do cupom de impressão, sendo que só consigo em formato A4. a impressora será uma térmica não-fiscal. o relatório ira buscar buscar os dados do consumo no BD. desde já agradeço pessoal!

Estou com a mesma duvida… vc por acaso conseguiu resolver?
:?

olá,

1º vc tem que saber qual a largura da bobina utilizada pela impressora em questão (57mm, 76mm, 80mm, 89mm, …)

2º Qdo selecionar novo relatório, em propriedades do relatório - tamanho da página, vc escolhe a opção CUSTOM

3º Defina a Largura do Documento (em milímetros)

4º Defina a Altura do Documento (em milímetros)

5º Por fim, defina a orientação da impressão

espero ter ajudado.

Olá acredito que encontrei a solução

Creditos ao Fernando Paiva

        
        //ESCREVER TXT    
        try{
            File arquivo = new File("teste.txt");
            if(arquivo.exists()){
                //se existir
                FileWriter arquivoTxt = new FileWriter(arquivo, true);
                PrintWriter linhasTxt = new PrintWriter(arquivoTxt);
                //ACREDITO QUE SO PODE TER 42 CARACTERES
                linhasTxt.println("==========================================");
                linhasTxt.println("              Nome da empresa              ");
                linhasTxt.println("===========================================");
                linhasTxt.println("********** NAO E DOCUMENTO FISCAL *********");
                linhasTxt.println("===========================================");
                linhasTxt.println("PRODUTO      QTDE      VALOR UN.      VALOR");
                //dados da tabela
                /*for(int x = 0; x < tabelaConsumo.getRowCount(); x++){
                    linhasTxt.print(String.format("%-10.10s",tabelaConsumo.getModel().getValueAt(x, 1)));
                    linhasTxt.print(String.format("%7s     ",tabelaConsumo.getModel().getValueAt(x, 5)));
                    linhasTxt.print(String.format("%10s    ",tabelaConsumo.getModel().getValueAt(x, 4)));
                    linhasTxt.print(String.format("%7s    ",tabelaConsumo.getModel().getValueAt(x, 6)));
                    linhasTxt.println();
                }*/
                linhasTxt.println("===========================================");
                linhasTxt.println("   INFORMACOES PARA FECHAMENTO DE CONTA    ");
                linhasTxt.println("===========================================");
                linhasTxt.println(" GARCOM  CONTA.DIV.  VAL.PESS. COVER  DESC.");
                linhasTxt.print(String.format("%7s  %9s  %9s  %5s   %s",
                                  "garcom",
                                  "dividirconta",
                                  "vlpessoa",
                                  "cover",
                                  "desconto"
                                  //garcom.getText(),
                                  //dividirConta.getText(),
                                  //valorPorPessoa.getText(),
                                  //cover.getText(),
                                  //descontoConta.getText()
                                  ));
                linhasTxt.println();
                linhasTxt.println("===========================================");
                //linhasTxt.println("SubTotal                            " + valorBruto.getText());
                linhasTxt.println("SubTotal                            " + "10,00");
                linhasTxt.println("                   ------------------------");
                //linhasTxt.println("Total                                " + valorBruto.getText());
                linhasTxt.println("Total                                " + "10,00");
                linhasTxt.println("===========================================");
                linhasTxt.println("       MENSAGEM DA EMPRESA VAI AQUI        ");
                linhasTxt.println("   INFORMACOES PARA FECHAMENTO DE CONTA    ");

                int i = 0;
                while(i < 10){
                    i++;
                    linhasTxt.println();
                }                
                arquivoTxt.close();
                //emiteComanda();
                
            }else{
                //se naum existir
                arquivo.createNewFile();
                //criaTxt();
            }
      }catch(IOException error){
          System.out.println("nao encontrei arquivo");
      }
        
        
        // imprime arquivo 
        try {
            java.io.InputStream is = new FileInputStream("teste.txt");
            Scanner sc = new Scanner(is);
            FileOutputStream fs = new FileOutputStream("LPT1:");
            PrintStream ps = new PrintStream(fs);

            while(sc.hasNextLine()){
                String linhas = sc.nextLine();
                ps.println(linhas);
            }
            fs.close();
        } catch (IOException ex) {
            JOptionPane.showMessageDialog(null, "Erro encontrado ao imprimir comanda.");
        }  
4 curtidas