salve ragazzi ho questo problema devo stampare un frame che contiene un pannello con delle immagini e del testo
premo il pulsante stampa
codice://Stampa Cliente buttonStampaCliente.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent arg0) { //TODO non mi piace vuole gestita meglio dagli un okkiata domani FramePreview framePreview=new FramePreview(gestore); PrinterJob pj = PrinterJob.getPrinterJob(); PageFormat format = pj.defaultPage(); //PageFormat format = pj.pageDialog(pj.defaultPage()); //inverto le dimensioni perchè stampo in modo orizzontale float pageHeight = MediaSize.ISO.A4.getX(MediaSize.INCH) * 72+50; float pageWidth = MediaSize.ISO.A4.getY(MediaSize.INCH) * 72; float margin = (1 / 2.54f) * 72; //1cm Paper paper = new Paper(); paper.setImageableArea(margin, margin,585,790); format.setPaper(paper); format = pj.validatePage(format); //ruoto la pagina in maniera orizzontale format.setOrientation(PageFormat.LANDSCAPE); RepaintManager currentManager = RepaintManager.currentManager(framePreview); currentManager.setDoubleBufferingEnabled(true); pj.printDialog(); pj.setPrintable(framePreview,format); System.out.println("Area Stampabile"+margin+" "+margin+" "+pageWidth+" "+pageHeight); try { pj.print(); } catch (PrinterException e) { // TODO Auto-generated catch block e.printStackTrace(); } } });
l' immagine viene disagnata in questo modo
ma mi viene stampata in maniera sfocata perkè?codice:@Override public void paintComponent(Graphics graphic) { super.paintComponents(graphic); graphic.drawImage(logoTitolo,0,0,null); }

Rispondi quotando