Problème d'impression d'un JPanel qui dépasse de la feuille

kobee12 Messages postés 153 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 31 octobre 2006 - 30 sept. 2005 à 16:02
kobee12 Messages postés 153 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 31 octobre 2006 - 30 sept. 2005 à 17:05
Bonjour,

J'ai un petit problème en imprimant un composant (JPanel).
Je l'imprime en paysage.
Seulement j'aimerais qu'il remplisse toute la surface de la feuille et ce n'est pas le cas.
Mon composant commence à être imprimer avec une marge et est coupé à droite.
Voici mla fonction :

public void jMenuPrint_actionPerformed(ActionEvent e) {
//jPanelTableMois.print();
Properties props = new Properties();


props.put("awt.print.paperSize", "a4");
props.put("awt.print.destination", "printer");
props.put("awt.print.orientation", "landscape");


PrintJob pJob = getToolkit().getPrintJob(this,
"Printing_Test", props);


if (pJob != null)
{
Graphics pg = pJob.getGraphics();
//this.printAll(pg);
jPanelTableMois.printAll(pg);
pg.dispose();
pJob.end();
}
}

J'aimerais :
-Retirer les marges
-Redimensionner le composant pourqu'il tienne sur la feuille

Merci d'avance

Kobee12

1 réponse

kobee12 Messages postés 153 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 31 octobre 2006 1
30 sept. 2005 à 17:05
J'ai vu qu'il y avait Graphics2D qui permet de redimensionner avec la fonction scale, donc j'ai essayé ce qui suit :

if (pJob != null)
{
Graphics pg = pJob.getGraphics();
Graphics2D g2 = (Graphics2D) pg;
g2.scale(0.5,0.5);
//this.printAll(pg);
jPanelTableMois.printAll(g2);
pg.dispose();
pJob.end();
}

Mais il me fait une erreur pour Graphics2D g2 = (Graphics2D) pg;
java.lang.ClassCastException
donc je sais pas comment redimensionner
0
Rejoignez-nous