Impression d'un jpanel (sans coupure des composants en bas de page)

Soyez le premier à donner votre avis sur cette source.

Vue 36 721 fois - Téléchargée 7 208 fois

Description

Voila, cette semaine j'ai aidé plusieurs personnes a régler des problemes d'impression. C'est pourquoi j'ai réalisé cette petite classe afin de nous simplifier la vie avec les impressions. La classe permet d'imprimer le contenu graphique d'un panel en multi-pages. Plusieurs options sont disponibles.
FitIntoPage => permet de redimentionner automatiquement le contenu du JPanel pour qu'il rentre dans une seul et unique page.
WrapComponent => permet un impression sans couper les composants en bas de page. En effet les methodes d'impression de Java coupe les composants en fin de page. Par exemple un text area faisant la moitié de la page mais commençant en bas de celle ci aura ca premiere moitié en bas de la page et la deuxieme sur la deuxime page. Ma class calcul avant l'impression la repartition optimale des composants afin d'éviter le probleme, ainsi si le composant ne rentre pas il sera automatiquement décalé sur la page suivante. Si un composant est plus grand qu'une page il sera coupé ou reduit selon les options choisi avant l'impression.
J'ai tester cette class avec un JPanel avec un GridBaglayout et pas mal de composant (meme des composants imbriqués) et ca marche pas mal, donc je vous en fait profiter.
En amélioration on peut envisager l'impression en bas de page du numero de page, et surement d'autre chose auquelles je n'est pas pensé :D.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
1
Date d'inscription
mercredi 19 juin 2013
Statut
Membre
Dernière intervention
7 juillet 2013

Bonsoir!!!
Vraiment excellente votre classe, utile et pratique en plus
Merci beaucoup
Mon problème est que lorsque je lance l'impression avec mon bouton imprimer la fenêtre d'impression s'affiche si je clique sur ok, rien ne se passe, pas de bugs ni rien.
votre aide me sera d'une grande importance
Merci d'avance
Messages postés
2
Date d'inscription
lundi 5 décembre 2011
Statut
Membre
Dernière intervention
16 mai 2013

bonsoir il enregistre le fichier comme xsp mais je ne le trouve pas c'est qu'un racourcie comment je fait?
Messages postés
2
Date d'inscription
lundi 5 décembre 2011
Statut
Membre
Dernière intervention
16 mai 2013

bonsoir svvp mon fichier XPS et introuvable comme je pourais le consulter
Messages postés
6
Date d'inscription
dimanche 17 juin 2012
Statut
Membre
Dernière intervention
14 juillet 2013

Bonsoir jais télécharger la classe mais je voulais l'appelé dans un bouton ? merçi davance!
Messages postés
491
Date d'inscription
samedi 20 mai 2006
Statut
Membre
Dernière intervention
15 juillet 2012
10
La page suivant contient le code source TableReportDemo, qui montre comment personnaliser l'impression d'un JTable:
http://wiki.byte-welt.net/wiki/JTable_Druckfunktion_anpassen

Le principe est le même pour un JTextComponent (comme par exemple JTextField): avec JTextComponent#getPrintable nous obtenons un Printable que nous enveloppons dans une nouvelle classe, que nous appelons par exemple "TextFieldReport implements Printable". Dans cette classe nous surchargeons la méthode print de l'interface Printable pour personnaliser l'impression.

La classe TableReportDemo montre également comment définir le format du papier.

Salutaions,
André
Afficher les 49 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.