[JAVA] Problème de mise en page

Problème de mise en page [JAVA] - Java - Programmation

Marsh Posté le 20-11-2008 à 12:28:52    

Salut,
J’ai développé une application de gestion de caisse en java et je voudrai imprimer une commande dans une imprimante, comme un ticket, c.à.d. dans un ruban de longueur infinie et de petite largeur, donc je n’utilise pas le format A4, pour ce la, j’ai récupère l’objet Paper à partir de PageFormat et j’ai modifié la zone d’impression, mais sans résultat, j’ai toujours un affichage centré au milieu, et il ne m'affiche pas toute la phrase
 
 
Merci de me donner une idée pour résoudre ce problème
Voici mon code :
 

Code :
  1. package src;
  2. import java.awt.Font;
  3. import java.awt.Graphics;
  4. import java.awt.Graphics2D;
  5. import java.awt.print.PageFormat;
  6. import java.awt.print.Paper;
  7. import java.awt.print.Printable;
  8. import java.awt.print.PrinterException;
  9. import java.awt.print.PrinterJob;
  10. import java.util.Calendar;
  11. import src.pos.article.ArticleList;
  12. import src.pos.order.Order;
  13. public class TestPrint implements Printable{
  14. public TestPrint() {
  15. }
  16.   public int print(Graphics g, PageFormat pf, int page) throws PrinterException {
  17.    int x = 10;
  18.    int y=10;
  19.           if (page > 0) {
  20.             return NO_SUCH_PAGE;
  21.           }
  22.           Paper pfor=pf.getPaper();
  23.          
  24.           pfor.setImageableArea(5, 5, 100,100);
  25.           System.out.println("getHeight()"+pfor.getHeight());
  26.           System.out.println("getImageableHeight"+pfor.getImageableHeight());
  27.           System.out.println("getImageableWidth"+pfor.getImageableWidth());
  28.           System.out.println("getImageableX"+pfor.getImageableX());
  29.           System.out.println("getImageableY"+pfor.getImageableY());
  30.           System.out.println("getWidth"+pfor.getWidth());
  31.           Graphics2D g2d = (Graphics2D)g;
  32.           g2d.translate(pf.getImageableX(), pf.getImageableY());
  33.           //g2d.setFont(new java.awt.Font("Tahoma",1,5));
  34.           Font f=new Font("Arial",1,6);
  35.           g2d.setFont(f);
  36.           g.drawString("  BIENVENU A TMMS", x, y);
  37.           //y+=10;
  38.          
  39.           g2d.drawString("***************************************************", x, (y+=10));
  40.           //System.out.println("order.getOrderID() : "+order.getOrderID());
  41.           Calendar cal=Calendar.getInstance();
  42.           g2d.drawString(cal.getTime().toLocaleString(), x, (y+=10));
  43.           //g.drawString(order.getSHeureNow(), x, (y+=10));
  44.           g2d.drawString("Commande N° : 1649879", x, (y+=10));
  45.           g2d.drawString("***************************************************", x, (y+=10));
  46.           int z=x;
  47.           for(int i=0;i<1;i++){
  48.            g2d.drawString("Unité central Hp Compaq", z, (y+=10));
  49.            g2d.drawString("450.0", (z+=150), y);
  50.            g2d.drawString("2", (z+=40), y);
  51.            g2d.drawString("900", (z+=20), y);
  52.             z=x;
  53.           }
  54.          
  55.           /* tell the caller that this page is part of the printed document */
  56.           return PAGE_EXISTS;
  57.       }
  58.   public void printTicket(){
  59.    PrinterJob job = PrinterJob.getPrinterJob();
  60.    //PrinterJob job = new PrinterJob();
  61.       job.setPrintable(this);
  62.       //boolean ok = job.printDialog();
  63.       //if (ok) {
  64.           try {
  65.               job.print();
  66.           } catch (PrinterException ex) {
  67.              /* The job did not successfully complete */
  68.          }
  69.       //}
  70.   }
  71.  
  72.   public static void main(String[] args){
  73.    TestPrint t=new TestPrint();
  74.    t.printTicket();
  75.   }
  76. }

Reply

Marsh Posté le 20-11-2008 à 12:28:52   

Reply

Marsh Posté le 20-11-2008 à 12:37:47    

J'ai oublié de mettre l'affichage que j'ai eu
en résumé j'ai un affichage semblable au suivant:
 
                                              BIENVEN
                                         *********
                                         20 nov. 200
                                         *********
                                         Unité centra
 
 
alors que je veux qu'il m'afficher:
 
     BIENVENU A MON MAGASIN
****************************
20 nov. 2008     12:34:20
****************************

Reply

Marsh Posté le 20-11-2008 à 12:40:39    

bienvenue
 [:cbrs]  
 
sinon je connais pas JAVA  :D

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed