1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125
| class MonDessin extends JPanel implements Printable,ActionListener{
int[] pageBreaks;
public int print(Graphics g, PageFormat pf, int pageIndex)
throws PrinterException {
int lineHeight = 20;
if (pageBreaks == null) {
int linesPerPage = (int)(pf.getImageableHeight()/lineHeight);
int numBreaks = (Table[0].size()-1)/linesPerPage;
pageBreaks = new int[numBreaks];
for (int b=0; b<numBreaks; b++) {
pageBreaks[b] = (b+1)*linesPerPage;
}
}
if (pageIndex > pageBreaks.length) {
return NO_SUCH_PAGE;
}
Graphics2D g2d = (Graphics2D)g;
g2d.translate(pf.getImageableX(), pf.getImageableY());
y=200;
y1=20;y2=190;y3=180;y4=210;y5=230;y6=250;y7=205;y8=225;y9=245;y10=265;
for(int i = 0; i<Table[0].size(); i++){
g.drawString(String.valueOf(Table[0].get(i)),20,y);
g.drawString(String.valueOf(Table[1].get(i)).substring(0, 13),75,y);
g.drawString(String.valueOf(Table[2].get(i)),205,y);
g.drawString(String.valueOf(Table[3].get(i)),240,y);
g.drawString(String.valueOf(Table[0].get(i)),310,y);
g.drawString(String.valueOf(Table[1].get(i)).substring(0, 13),365,y);
g.drawString(String.valueOf(Table[2].get(i)),510,y);
g.drawString(String.valueOf(Table[3].get(i)),530,y);
y+=15;
y1+=15;y2+=15;y3+=15;y4+=15;y5+=15;y6+=15;y7+=15;y8+=15;
y9+=15;y10+=15;
}
y+=15;
y1+=15;y2+=15;y3+=15;y4+=15;y5+=15;y6+=15;y7+=15;y8+=15;
y9+=15;y10+=15;
g.drawRoundRect(20, 160, 270, y1, 8, 8);
g.drawRoundRect(310, 160, 270, y1, 8, 8);
g.drawLine(70, 160, 70, y3);
g.setFont(font1);
g.drawString("***.", 25, 175);
g.drawString("*******", 75, 175);
g.drawLine(200, 160, 200, y3);
g.drawString("Qté", 205, 175);
g.drawLine(20, 185, 290, 185);
g.drawLine(230, 160, 230, y3);
g.drawString("***", 245, 175);
g.drawLine(360, 160, 360, y3);
g.drawString("***.", 315, 175);
g.drawString("******", 365, 175);
g.drawLine(500, 160, 500, y3);
g.drawString("****", 505, 175);
g.drawLine(530, 160, 530, y3);
g.drawString("***", 535, 175);
g.drawLine(310, 185, 580, 185);
g.setFont(font2);
g.drawString("****", 90, 30);
g.drawLine(30, 35, 280, 35);
g.drawString("****", 40, 50);
g.drawString("*****", 50, 70);
g.drawString("******", 110, 110);
g.drawString("*********", 390, 30);
g.drawLine(330, 35, 580, 35);
g.drawString("******", 340, 50);
g.drawString("*******", 350, 70);
g.drawString("*****", 410, 110);
g.setFont(font3);
g.drawString("******", 50, 90);
g.drawString("*******", 350, 90);
g.drawRoundRect(150, y2, 140, 80, 8, 8);
g.drawLine(150, y4, 290, y4);
g.drawLine(150, y5, 290, y5);
g.drawLine(150, y6, 290, y6);
g.drawString("***",155 ,y7);
g.drawString("***",155 ,y8);
g.drawString("***",155 ,y9);
g.drawString("****",155 ,y10);
g.drawRoundRect(440, y2, 140, 80, 8, 8);
g.drawLine(440, y4, 580, y4);
g.drawLine(440, y5, 580, y5);
g.drawLine(440, y6, 580, y6);
g.drawString("***",445 ,y7);
g.drawString("***",445 ,y8);
g.drawString("***",445 ,y9);
g.drawString("****",445 ,y10);
g.drawString(Date_Bl, 160, 110);
g.drawString(Date_Bl, 460, 110);
return PAGE_EXISTS;
}
public void actionPerformed(ActionEvent e) {
PrinterJob job = PrinterJob.getPrinterJob();
job.setPrintable(this);
boolean ok = job.printDialog();
if (ok) {
try {
job.print();
} catch (PrinterException ex) {
}
}
}
} |
Partager