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

Documents Java Discussion :

Lire un fichier pdf


Sujet :

Documents Java

  1. #1
    Membre régulier
    Inscrit en
    Avril 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 8
    Par défaut Lire un fichier pdf
    Bonjour je souhaiterais savoir comment lire un fichier pdf, car dans mon application je dois récupérer des informations contenues dans un fichier pdf.

  2. #2
    Membre émérite Avatar de laurentibus
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Par défaut
    salut kkajout,

    j'ai déjà implémenter une fonction qui lisser les PDF, j'utilisais l' API Itext

    voici le lien :
    http://www.lowagie.com/iText/

    Voila tu peux toujours me demander si tu as des problèmes

    ++

  3. #3
    Membre régulier
    Inscrit en
    Avril 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 8
    Par défaut
    Merci de ta réponse.
    J'utilise deja cette Api dans mon programme pour créer des pdf, mais je n'arrive pas trouver comment on peut lire un pdf:par page par exemple ou en String ....

  4. #4
    Membre émérite Avatar de laurentibus
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Par défaut
    tu as de la chance j ai garder un bout de code :

    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
     
    		/*
    		 * Affichage de la page ( texte + balise )
    		 * 
    		 */
     
    		try{
    			// we create a PdfReader object
    			PdfReader reader = new PdfReader(System.getProperty("user.dir")+"/"+uri);
    			String chaine=new String();
     
    			byte[] b = reader.getPageContent(1);
    			for(int i=0; i<b.length; i++)
    				chaine = chaine + (char)b[i];
     
    				System.out.print(chaine);
     
     
    		}
    		catch (IOException e) {
    			e.printStackTrace();
    		}

    Apres tu peux avoir des info pas rapport au documetn s lui meme
    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
     
    try {
    			// we create a PdfReader object
    			PdfReader reader = new PdfReader(System.getProperty("user.dir")+"/"+uri);
    			// Some general document information
    			System.out.println("=== Document Information ===");
    			System.out.println("PDF Version: " + reader.getPdfVersion());
    			System.out.println("Number of pages: " + reader.getNumberOfPages());
    			System.out.println("File length: " + reader.getFileLength());
    			System.out.println("Encrypted? " + reader.isEncrypted());
    			System.out.println("Rebuilt? " + reader.isRebuilt());
    			// Some information on the page size
    			System.out.println("=== Page Size ===");
    			System.out.println("Page size p1: " + reader.getPageSize(1));
    			System.out.println("Rotation p1: " + reader.getPageRotation(1));
    			System.out.println("Page size p3: " + reader.getPageSize(3));
    			System.out.println("Rotation p3: " + reader.getPageRotation(3));
    			System.out.println("Size with rotation p3: "
    					+ reader.getPageSizeWithRotation(3));
     
     
     
     
     
    		} catch (IOException e) {
    			e.printStackTrace();
    		}

    et puis apres si tu as des difficultés auxquelles personne ici ne peux répondre tu as possibilité de poser directement tes questions aux développeurs de l API via leur site internet ..

    Voila et dans l affichage du PDF si je me souviens bien tu as le texte plus les balises donc il faudrat peut etre que tu trouve la significations des balises ( cf
    ADOBE site .. tu peux aussi demander ux dev de ITExt c 'est eux qui m avait donner le lien ves le site PDF ) ....

    Voila j'espere que tu vas avancer

  5. #5
    Membre régulier
    Inscrit en
    Avril 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 8
    Par défaut
    Merci de ta rapide réponse je parts tester ca.

    Encore merci

  6. #6
    Membre émérite Avatar de laurentibus
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Par défaut
    De rien tiens moi au jus

  7. #7
    Membre régulier
    Inscrit en
    Avril 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 8
    Par défaut
    Bon apres avoir essayer le résultat en sortie est difficillement exploitable, je m'orientes donc vers une convertion du pdf en xml, ou en doc.

  8. #8
    Membre Expert

    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Novembre 2006
    Messages
    1 252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 252
    Par défaut
    Avec quel outil ?

  9. #9
    Membre émérite Avatar de laurentibus
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Par défaut
    " Difficilement exploitable " : tu as le texte et les balises .... il faut juste que tu sache ce que veulent dire les balises avec la doc adobe et après tu les traduit .. c pas bien compliqué mais bon a toi de voir ...

  10. #10
    Nouveau candidat au Club
    Inscrit en
    Juin 2007
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 3
    Par défaut IFilter d'adobe
    Salut,
    Si tu veux lire le texte dans un pdf qui en contient utilise l'application gratuite de adobe IFilter.

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2008
    Messages : 23
    Par défaut
    merci pour la solution mais je n'arrive pas à lire de balises :

    ...

    0 -1.1353 TD
    ( )Tj
    /TT6 1 Tf
    12 0 0 12 211.02 783.9203 Tm
    -0.0001 Tc
    0.0023 Tw
    (Formulaire de demande de croque monsieur )Tj
    /TT8 1 Tf
    8.7 -1.11 TD
    0 Tc
    0 Tw
    ( )Tj
    -7.23 -1.115 TD

    ...

    ça ne veut pas dire grand chose...

    ne serait-il pas possible de récupérer le model objet ?
    ou comment completer un document pdf existant ?

  12. #12
    Membre chevronné Avatar de djsnipe
    Inscrit en
    Mai 2008
    Messages
    440
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 440
    Par défaut
    Citation Envoyé par binoglobule Voir le message
    ne serait-il pas possible de récupérer le model objet ?
    De mémoire il n'y a pas de modèle objet, c'est une représentation de document. C'est notamment la raison pour laquelle avec iText on ne peut pas compléter un tableau, car la notion de tableau n'existe pas dans le PDF résultant.
    En revanche il est possible d'ajouter du contenu à un PDF existant. Cherche sur le forum ou sur le site d'iText.

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2008
    Messages : 23
    Par défaut
    Citation Envoyé par djsnipe Voir le message
    De mémoire il n'y a pas de modèle objet, c'est une représentation de document. C'est notamment la raison pour laquelle avec iText on ne peut pas compléter un tableau, car la notion de tableau n'existe pas dans le PDF résultant.
    En revanche il est possible d'ajouter du contenu à un PDF existant. Cherche sur le forum ou sur le site d'iText.
    Merci djsnipe pour ta réponse, mais comme je l'ai écris ici : http://www.developpez.net/forums/d38...t/#post3767366

    je me retrouve bloqué après le parcourt de cette dernière collection (xobj) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    PdfDictionary res =
      (PdfDictionary)PdfReader.getPdfObject(pg.get(PdfName.RESOURCES));
    PdfDictionary xobj =
      (PdfDictionary)PdfReader.getPdfObject(res.get(PdfName.XOBJECT));
    si tu as une astuce (ou le lien d'un topic, parcequ'honnetement je suis bloqué là)

Discussions similaires

  1. lire un fichier pdf dans un lecteur flash
    Par Totuch dans le forum Intégration
    Réponses: 2
    Dernier message: 14/01/2008, 04h01
  2. Lire un fichier PDF
    Par devyan dans le forum Composants VCL
    Réponses: 6
    Dernier message: 05/09/2007, 20h33
  3. [BDS 2006]Lire un fichier PDF
    Par pottiez dans le forum C++Builder
    Réponses: 2
    Dernier message: 24/06/2007, 10h35
  4. [SOLARIS] Lire des fichiers PDF sous SOLARIS
    Par StyleXP dans le forum Solaris
    Réponses: 4
    Dernier message: 15/11/2006, 19h57
  5. [PDF] Lire un fichier PDF
    Par molesqualeux dans le forum Bibliothèques et frameworks
    Réponses: 9
    Dernier message: 24/05/2006, 18h41

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