Visualizzazione dei risultati da 1 a 2 su 2

Visualizzazione discussione

  1. #1

    Bordo nero intorno alla stampa di una form

    Buongiorno,
    da java sto provando a stampare il contenuto di una JFrame quindi con le immagini, le etichette, i campi di testo etc. in essa contenuti.

    Per fare ciò sto usando un esempio preso dal web con il seguente codice:
    codice:
        
    public class ProvaFrm extends javax.swing.JFrame implements Printable
    ...
    
    PrinterJob job = PrinterJob.getPrinterJob();
        PageFormat format = job.defaultPage();
        format.setOrientation(PageFormat.PORTRAIT);
        job.setPrintable(this, format);
    
        try{
          if(job.printDialog()) job.print();
        } catch(Exception e){e.printStackTrace(); }

    Ho dovuto quindi fare l'Override del metodo print

    codice:
      @Override
      public int print(Graphics g, PageFormat format, int pagenum) {
        if (pagenum > 0) return Printable.NO_SUCH_PAGE;
        g.translate((int)format.getImageableX(), (int)format.getImageableY());
        float pageWidth = (float)format.getImageableWidth();
        float pageHeight = (float)format.getImageableHeight();
        float imageHeight = (float)this.getHeight();
        float imageWidth = (float)this.getWidth();
        float scaleFactor = Math.min((float)pageWidth/(float)imageWidth, (float)pageHeight/(float)imageHeight);
        int scaledWidth = (int)(((float)imageWidth)*scaleFactor);
        int scaledHeight = (int)(((float)imageHeight)*scaleFactor);  
    
        BufferedImage canvas = new BufferedImage( this.getWidth(),  this.getHeight(), BufferedImage.TYPE_INT_RGB);
        Graphics2D gg = canvas.createGraphics();
        this.paint( gg );  
        Image img = canvas ;
        g.drawImage(img, 0, 0, scaledWidth, scaledHeight, null );
        return Printable.PAGE_EXISTS;
      }

    Ora il problema è che la stampa la fa, sia su carta che su file, ma con un bordo nero tutto intorno (come da esempio del file allegato), e non riesco a capire come eliminarlo.

    Qualcuno gentilmente riuscirebbe ad aiutarmi?
    Immagini allegate Immagini allegate
    www.positivamente.it - Soluzioni per vivere meglio

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.