Impression sur un préimprimé en Java
djidja
-
KX Messages postés 16761 Date d'inscription Statut Modérateur Dernière intervention -
KX Messages postés 16761 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
j'ai besoin d'aide,
j'ai réalisé une application en Java avec éclipse , j'ai dois ajouter une option qui permettra à un utilisateur donné d'imprimer des données provenant de mon application(base de données) , sauf que les pages d'imprimante ne sont pas vierges mais déjà préparées et contiennent des données.
Le programme doit pour chaque donné le placé à son emplacement prévu.
par exemple j'aurai un formulaire : nom: .....(ici j'ai dois écrire le nom de l'utilisateur qui provient de ma base de données).
j'espère que ma question est clair et je trouve parmi vous qui peut m'aider .
s'il vous plais c'est urgent.
merci d'avance
j'ai besoin d'aide,
j'ai réalisé une application en Java avec éclipse , j'ai dois ajouter une option qui permettra à un utilisateur donné d'imprimer des données provenant de mon application(base de données) , sauf que les pages d'imprimante ne sont pas vierges mais déjà préparées et contiennent des données.
Le programme doit pour chaque donné le placé à son emplacement prévu.
par exemple j'aurai un formulaire : nom: .....(ici j'ai dois écrire le nom de l'utilisateur qui provient de ma base de données).
j'espère que ma question est clair et je trouve parmi vous qui peut m'aider .
s'il vous plais c'est urgent.
merci d'avance
A voir également:
- Impression sur un préimprimé en Java
- Spouleur d'impression - Guide
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel - Télécharger - Jeux vidéo
- Impression livret a5 - Guide
- Eclipse java - Télécharger - Langages
1 réponse
Tu peux faire un template en HTML par exemple, le remplir avec les données que tu veux, puis imprimer ce fichier HTML. Avec un peu de CSS ça peut rendre très bien.
Tu peux également faire pareil avec n'importe quel autre format de fichier.
Tu peux également faire pareil avec n'importe quel autre format de fichier.
import java.awt.Desktop; import java.io.File; import java.io.FileOutputStream; import java.io.OutputStream; public class Start { public static final String CSS_TEMPLATE = "h1 {color:blue}"; public static final String HTML_TEMPLATE = "<head>" + "<title>Rapport #firstname #lastname</title>" + "<style type='text/css' media='print'>" + CSS_TEMPLATE + "</style>" + "</head>" + "<body>" + "<h1>Rapport</h1>" + "<ul>" + "<li>Nom : #lastname</li>" + "<li>Prénom : #firstname</li>" + "</ul>" + "</body>"; public static void main(String[] args) throws Exception { String report = HTML_TEMPLATE; report = report.replaceAll("#firstname", "Bill"); report = report.replaceAll("#lastname", "Gates"); File toPrint = File.createTempFile("toprint", ".html"); toPrint.deleteOnExit(); OutputStream content = new FileOutputStream(toPrint); content.write(report.getBytes()); content.close(); Desktop.getDesktop().print(toPrint); } }
Cependant ça reste possible, il faudrait juste s'arranger pour ne mettre sur la page que les éléments à remplir. Si on repart sur le principe du HTML, le CSS permet de faire cela, il faudra juste indiquer pour chaque élément la localisation du texte. Ça demande un travail de réglage mais ça se fait.
Exemple :