bonjour a tous voila j'ai un gros petit probleme
je souhait imprimé du texte, le souci c'est que je n'arrive pas a faire de mise en page (le texte sort de la feuille) je fais comme ca:
Code :
- PrinterJob printJob = PrinterJob.getPrinterJob ();
- Book book = new Book ();
- PageFormat documentPageFormat = new PageFormat ();
- documentPageFormat.setOrientation (PageFormat.PORTRAIT);
- book.append (new Document (monTextKiEstTresLong), documentPageFormat);
- printJob.setPageable (book);
- if (printJob.printDialog()){
- try {
- printJob.print();
- }
- catch (Exception PrintException) {
- PrintException.printStackTrace();
- }
- }
|
et la classe document:
Code :
- private class Document implements Printable {
- private String str;
- public Document (String str){
- this.str = str;
- }
- public int print (Graphics g, PageFormat pageFormat, int page) {
- //--- Create the Graphics2D object
- Graphics2D g2d = (Graphics2D) g;
- //--- Translate the origin to 0,0 for the top left corner
- g2d.translate (pageFormat.getImageableX (), pageFormat.getImageableY ());
- //--- Set the drawing color to black
- g2d.setPaint (Color.black);
- //--- Print the text one inch from the top and left margins
- g2d.drawString (str, 72, 72);
- //--- Validate the page
- return (PAGE_EXISTS);
- }
- }
|
voila y-a-t'il moyen de faire des retour a ligne automatiquement quand le texte sort de la feuille et imprime une nouvelle feuille si la longueur du texte dépasse la feuille.
jusqu'a present je n'ai rien trouvé sur internet qui pouvait m'aidé pour se probleme mais peut etre que j'ai mal cherché
merci a tous ceux qui pourront m'aider!