Impression d'un document pdf en tache de fond

Soyez le premier à donner votre avis sur cette source.

Snippet vu 31 852 fois - Téléchargée 32 fois

Contenu du snippet

Bonjour,
Ce code va permetre d'imprimer un document PDF.
Mon seul regrès c'est que se soit en pseudo tache de fond, car l'icone d'Acrobt Reader se met dans la bare des tâche de windows.
Sur ce amusez-vous bien!

Source / Exemple :


import javax.print.PrintService;
import javax.print.PrintServiceLookup;

/*

  • Created on 23 févr. 2005
*
  • TODO Impression de PDF en tache de fond
  • /
/**
  • @author Waldo2188
*
  • /
public class ImpressionPDF { public static void main(String[] args) { final String PATH_ADOBE_READER = "C:\\Program Files\\Adobe\\Acrobat 5.0\\Reader\\AcroRd32.exe"; final String ADOBE_READER_PRINT_COMMAND = "/t"; final String SLASH = "/"; final String QUOTE = "\""; final String SPACE = " "; final String pFile ="C:\\MonDossier\\MonPDF.pdf" ; PrintService service = PrintServiceLookup.lookupDefaultPrintService();//localisation de l'imprimante par défaut // Commande à exécuter String lCommand = QUOTE + PATH_ADOBE_READER + QUOTE + SPACE + ADOBE_READER_PRINT_COMMAND + SPACE + QUOTE + pFile + QUOTE + SPACE + QUOTE + service.getName() + QUOTE;//service.getName() c'est l'imprimante par defaut System.out.println("[printPDF] Command to be executed : " + lCommand); Process lAdobeProcess = null; try { // Execute Adobe Reader command "/t" (imprime et ferme) lAdobeProcess = Runtime.getRuntime().exec(lCommand); //dors pendant 2.4seconde avant de fermer la fenêtre de Acrobat Reader Thread.sleep(24000); lAdobeProcess.destroy(); } catch (Exception e) { System.err.println("[printPDF] Error printing PDF : " + pFile); e.printStackTrace(); } finally { System.out.println("lAdobeProcess.toString()"); if (lAdobeProcess != null) { //destruction de l'instance de Acrobat Reader lAdobeProcess.destroy(); lAdobeProcess = null; } } } }

A voir également

Ajouter un commentaire

Commentaires

cs_AbriBus
Messages postés
492
Date d'inscription
jeudi 28 août 2003
Statut
Membre
Dernière intervention
25 avril 2007
5 -
...et ici par contre... pas d'ocx ? ;)
Ca m'interresse davantage :D

Bus
cs_Waldo2188
Messages postés
142
Date d'inscription
jeudi 12 février 2004
Statut
Membre
Dernière intervention
20 mai 2008
-
Et oui c'est l'aventage du pdf et de java.
cs_mzamoun
Messages postés
10
Date d'inscription
mercredi 3 septembre 2003
Statut
Membre
Dernière intervention
6 février 2006
-
l'avez vous testé sous linux ?

A++
Mourad :)
cs_Waldo2188
Messages postés
142
Date d'inscription
jeudi 12 février 2004
Statut
Membre
Dernière intervention
20 mai 2008
-
A vrais dire non!
Mais Si Linux possède un acrobat reader, avec un path pour son exécutable, il n'y a pas de raison que cela ne marche pas!

Je le testerais quand même sous linux pour voir.
zannkukai
Messages postés
1
Date d'inscription
mardi 15 mars 2005
Statut
Membre
Dernière intervention
15 mars 2005
-
Un dieu parmi les dieux ;)

Super grand merci ca amrche très bien. Ce qui est encore mieux c'est de mettre cela dans un thread ce qui ne bloque pas le programme qui demande l'impression

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.