IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

API standards et tierces Java Discussion :

[Impression] Impression de divers fichiers comment faire


Sujet :

API standards et tierces Java

  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Juillet 2002
    Messages
    705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 705
    Points : 393
    Points
    393
    Par défaut [Impression] Impression de divers fichiers comment faire
    Bonjour

    je voudrais imprimer différentes sorte de fichiers excel, power point, img
    etc.. à partir de mon appli.

    Mais je voudrais que ce soit les applications comme excel pour un .xls qui s'en charge.

    Y a t-il une commande, un standard entre les applications, pour faire cela ?

    C'est une bonne question non ?

  2. #2
    MrX
    MrX est déconnecté
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 46
    Points : 42
    Points
    42
    Par défaut
    Salut,

    J'ai eu le même problème mais pour des fichier pdf.
    Je m'en suis sorti en passant par des commandes systèmes. Je sais que c'est pas très joli mais ça été le plus rapide à developper

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
     
    public class ImpressionPDF 
     {
      /**
       * Constructeur permettant d'initialiser et de lancer l'application
       * 
       * @param pdf = chemin du pdf à imprimer
       * @param messages = attribut permettant de connaître la langue courante
       * @param config = attribut permettant de connaître la configuration de l'utilisateur
       */
          public ImpressionPDF  (String pdf, ResourceBundle messages,Configuration config)
    	  {
         /**
          * chemin d'"acrobat"
          */ 	
            //  final String PATH_ADOBE_READER = "C:\\Program Files\\Adobe\\Acrobat 7.0\\Reader\\AcroRd32.exe";
      	 	final String PATH_ADOBE_READER = new LectureFichier("./../config/acrobat.txt").contenu();
              final String ADOBE_READER_PRINT_COMMAND = "/t";
              final String SLASH = "/";
              final String QUOTE = "\"";
              final String SPACE = " ";
              final String pFile =pdf;
    	  /**
               * localisation de l'imprimante par défaut. 
               */
         PrintService service = PrintServiceLookup.lookupDefaultPrintService();
         /**
          *  Commande à exécuter       ouvre acrobat et lance une impression  
          */        
         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
     
              Process lAdobeProcess = null;
     
              try
              {     
              /**
               * commande système
               *  Execute Adobe Reader command "/t" (imprime et ferme)
               */
              lAdobeProcess = Runtime.getRuntime().exec(lCommand);
             /**
              * permet de garder acrobat ouvert pendant un laps de temps suffisant pour que acrobat ait le temps de se
              * charger et d'ouvrir le fichier "pdf"
              */
              File fichier=new File(pdf);
    		  int dodo=(int) (fichier.length()/10);
     
     
              Thread.sleep((int) (fichier.length()));
              lAdobeProcess.destroy();
    		  JLabel txt=new JLabel(messages.getString("boiteDialogue5"));
    		  txt.setFont(config.getCss());
    		  txt.setForeground(config.getCouleur());
    		  txt.setBackground(config.getCouleurFond());
              JOptionPane.showMessageDialog(new JFrame(),txt, messages.getString("boiteDialogueTitre5"),1);
              }
              catch (Exception e)
              {
    			JLabel txt=new JLabel(messages.getString("boiteDialogue6"));
    			txt.setFont(config.getCss());
    			txt.setForeground(config.getCouleur());
    			txt.setBackground(config.getCouleurFond());
              	JOptionPane.showMessageDialog(new JFrame(),txt, messages.getString("boiteDialogueTitre6"),1);
              	/**
                     * enregistrement de l'erreur dans le fichier de log exception
                     */
            	new LogException("../logException.log","client","Impression","ImpressionPDF","ImpressionPDF",e.toString()).enregistrementLog();
              }
              finally
              {
     
              if (lAdobeProcess != null)
              {
                  /**
                   * destruction de l'instance de Acrobat Reader
                   */
                  lAdobeProcess.destroy();
                  lAdobeProcess = null;
              }
              }
     
         }
         }
    Si tu as une autre solution je suis preneur

    @++ Xav

    galerie virtuelle

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Juillet 2002
    Messages
    705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 705
    Points : 393
    Points
    393
    Par défaut
    C'est interressant, je vais étudier ca !

    Je pense que je dois déjà pouvoir faire sauter le problème du chemin en dure du .exe du PDF.

    Faut que je regarde mes archives.

    Est ce que ca fonctionnerai pour d'autres logiciels, photoshop, power point etc...

    Comment a tu eu ces infos (il faut aller voir sur le site si il y a une section pour développeurs ?)

    Dejà merci

  4. #4
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut Re: [Impression] Impression de divers fichiers comment faire
    Salut,


    Citation Envoyé par Alec6
    Mais je voudrais que ce soit les applications comme excel pour un .xls qui s'en charge.
    Tu peux utiliser la classe Desktop du projet JDIC et sa méthode print(File) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    File file = new File ("....monFichier.xls");
     
    if ( Desktop.isPrintable(file) ) {
    	// Impression
    	Desktop.print(file);
    } else {
    	// Le fichier ne peut pas être imprimé
    }
    A noter que cette classe sera incorporé dans Java 6.0 ( sous une forme légèrement différente toutefois : http://download.java.net/jdk6/docs/api/java/awt/Desktop.html ).

    a++

  5. #5
    Membre averti
    Homme Profil pro
    Inscrit en
    Juillet 2002
    Messages
    705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 705
    Points : 393
    Points
    393
    Par défaut
    Et au bout du tunnel il vit la lumière.

    Merci bien.

  6. #6
    MrX
    MrX est déconnecté
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 46
    Points : 42
    Points
    42
    Par défaut
    Il serait vraiment sympa de nous dire comment tu as réussi

    Merci

  7. #7
    Membre averti
    Homme Profil pro
    Inscrit en
    Juillet 2002
    Messages
    705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 705
    Points : 393
    Points
    393
    Par défaut
    je n'ai pas encore essayé mais regarde là

    https://jdic.dev.java.net/documentation/Examples.html

  8. #8
    MrX
    MrX est déconnecté
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 46
    Points : 42
    Points
    42
    Par défaut
    oki merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Visualisation de fichiers, comment faire ?
    Par DalKiT dans le forum C
    Réponses: 1
    Dernier message: 04/02/2011, 00h21
  2. [MySQL] UPDATE bdd à partir liste ou fichier, comment faire ?
    Par gestgm dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 30/08/2010, 16h48
  3. Réponses: 6
    Dernier message: 29/05/2009, 14h59
  4. [Impression]Comment faire ?
    Par Chance666 dans le forum Windows
    Réponses: 17
    Dernier message: 03/12/2004, 10h42
  5. [VB6][impression]Comment faire des effets sur les polices ?
    Par le.dod dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 08/11/2002, 10h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo