Salve a tutti, ho un "piccolo" problema, ho creato una classe che dovrebbe stampare uno scontrino per un elimina-code ma, con il foglio A4 funziona perfettamente con la stampante 58mm termica mi stampa dentro un piccolo spazio e se annullo la stampa lo scontrino esce ugualmente con la stampa dello scontrino sfasata allego la classe. Penso che sia un problema di margini ma non so dove inserirli e come calcolarli qualcuno mi può aiutare
public class Stampa implements Printable{
String ora="null";
String id="null";
String messaggio="null";
String servizio="null";
public void setOra(String ora) {
this.ora = ora;
}
public void setId(String id) {
this.id = id;
}
public void setMessaggio(String messaggio) {
this.messaggio = messaggio;
}
public void setServizio(String servizio) {
this.servizio = servizio;
}
public void stampaBiglietto() throws IOException, SQLException, PrinterException
{
PrinterJob pj = PrinterJob.getPrinterJob();
pj.printDialog();
pj.setJobName("Stampa biglietto");
pj.setPrintable(this);
pj.print();
}
@Override
public int print(Graphics grap, PageFormat pageFormat, int pageIndex) throws PrinterException {
// TODO Auto-generated method stub
if(pageIndex > 0)
return NO_SUCH_PAGE;
Font f = new Font("Helvetica", Font.BOLD, 20);
grap.setFont(f);
grap.setColor(Color.RED);
grap.drawString("FALZONE SRL", (int)pageFormat.getImageableX()-9,
(int)pageFormat.getImageableY()+20);
//-------------------
f = new Font("Helvetica", Font.PLAIN, 10);
grap.setFont(f);
grap.setColor(Color.black);
grap.drawString("NUMERO ASSEGNATO", (int)pageFormat.getImageableX()+1,
(int)pageFormat.getImageableY()+40);
grap.setColor(Color.black);
f = new Font("Helvetica", Font.BOLD, 70);
grap.setFont(f);
grap.setColor(Color.black);
grap.drawString(id, (int)pageFormat.getImageableX()+8,
(int)pageFormat.getImageableY()+100);
//-------------------
f = new Font("Helvetica", Font.PLAIN, 10);
grap.setFont(f);
grap.setColor(Color.black);
grap.drawString("SERVIZIO RICHIESTO", (int)pageFormat.getImageableX()+2,
(int)pageFormat.getImageableY()+115);
f = new Font("Helvetica", Font.BOLD, 15);
grap.setFont(f);
grap.drawString(servizio, (int)pageFormat.getImageableX()+30,
(int)pageFormat.getImageableY()+130);
//-------------------
f = new Font("Helvetica", Font.PLAIN, 10);
grap.setFont(f);
grap.setColor(Color.black);
grap.drawString("ORA DI ARRIVO", (int)pageFormat.getImageableX()+2,
(int)pageFormat.getImageableY()+145);
grap.setColor(Color.black);
grap.drawString(ora, (int)pageFormat.getImageableX()+8,
(int)pageFormat.getImageableY()+160);
//-------------------
grap.setColor(Color.black);
grap.drawString(messaggio, (int)pageFormat.getImageableX()+1,
(int)pageFormat.getImageableY()+175);
//grap.setColor(Color.GREEN);
//grap.drawLine((int)pageFormat.getImageableX(), (int)pageFormat.getImageableY(),
// (int)pageFormat.getImageableWidth(), (int)pageFormat.getImageableHeight());
return PAGE_EXISTS;
}
}