Donnez vie à vos documents numériques !
 

Comment extraire le texte d’un pdf (1.4)

abracadabraPDF Forums PDF – Général Comment extraire le texte d’un pdf (1.4)

  • Ce sujet est vide.
  • Créateur
    Sujet
  • #43741
    Leam
    Invité

    Bonjour

    Je souhaite récupérer un texte qui à l’origine fait 95 caractères, mais quand je souhaite lire le fichier par moi même par programmation, je n’ai que 25 caractères !!!

    Ainsi la phrase d’origine :

    Bonjour
    Ceci est une phrase pour savoir si je suis capable de la retrouver dans un fichier PDF.

    devient :

    BonjurCeci stphavbldfPDF.

    Comment est ce que ce je peux récupérer mon texte ?
    Merci pour toute aide.

Affichage de 11 réponses de 1 à 11 (sur un total de 11)
  • Auteur
    Réponses
  • #50329
    Merlin
    Maître des clés

    Je n’ai pas compris la question…

    Quel sont les logiciels utilisés et quelle est la problématique ?

    Est-ce un cas isolé ou bien un problème répétitif ?

    :Euuuh:
    :???:

    #50330
    Lionel
    Membre

    Bonjour,

    J’avoue que je n’ai pas compris non plus.

    Sinon, pour récupérer un texte (mot, phrase, paragraphe…) d’un document PDF : le logiciel gratuit Adobe reader permet de le faire avec une simple sélection puis un “Copier” (et on colle ailleurs).

    Bien cordialement. :bonjour:
    Lionel

    #50331
    Leam
    Invité

    Bonjour,

    Merci pour vos questions, désolé de ne répondre que maintenant  :Ooops:

    En fait, je programme sous Lazarus c’est un peu comme DELPHI et j’aimerai lire le contenu d’un PDF sans passer par un quelconque lecteur.

    J’ai vu que le texte du PDF est compressé en DEFLATE entre deux balises “stream” et “endstream”.

    Une fois décompressé le texte est présent caractère par caractère entre deux basiles “beginbfchar” et “endbfchar”.
    Avant la balise “beginbfchar” il y a le nombre de caractères, donc impossible de se tromper à l’extraction.

    En voici un exemple :

    25 beginbfchar
    <01> <0042>
    <02> <006F>
    <03> <006E>

    <19> <002E>
    endbfchar

    j’ai rajouté les points de suspension pour ne pas tout réécrire.
    Les nombres sont écris en hexadécimal donc 19 en héxa = 25 en en décimal.

    En me documentant sur le site officiel j’ai vu une documentation sur les PDF de 1300 pages… j’ai bien essayé de chercher mais sans grand résultats.

    Je croyais que ça venait d’un codage CMAP mais je ne crois pas que ce soit ça. Alors peut être que les phrases sont codées comme avec le système T9 des téléphones portable ??? Je ne sais pas :doute:

    Si vous pouvez m’aider j’aimerai bien réussir à récupérer ce texte, ou bien alors savoir où chercher ?

    Merci !

    #50332
    Leam
    Invité

    Les essais que je viens de faire viennent confirmer l’idée que j’ai au sujet du codage des phrases  :soleil:

    Si sur le PDF j’ai :
    ABCDEFGHJIKLMNOPQRSTUVWXYZ.
    (guillemets ajoutés)
    je récupère exactement la même choses et il n’y a pas un seul caractère qui ne manque.

    Si j’essaie avec une vrai phrase :
    J’écris cette phrase pour voir si je retrouve bien tous les caractères et je ne suis capable de savoir comment le fichier PDF fait pour codé tout ça ???
    (guillemets ajoutés)
    Je récupère :
    J’écris etphaouvjbnlèdmfPDFç?

    Il n’est ainsi pas possible de dire que ce soit un cas isolé. De ce que je comprend c’est que quand je fais des mots corrects en français je ne peut récupérer la phrase et à l’inverse quand je écris des caractères sans sens litérale je peux lire les tous les caractères sans problèmes.

    J’en conclu que comme les téléphones portables codes les mots en mode T9 les PDF codes les phrases entières avec un mode bien défini…

    Mais comment faire pour les décoder  :Euuuh:
    Est-ce que mon raisonnement est juste  ?

    Les PDF (1.4) sur lesquels je travail sont créés sous Open Office 3.
    Merci pour tous éclaircissement.

    #50333
    Merlin
    Maître des clés

    Est-ce que ce ne serait pas plutôt un problème du aux espaces dans le texte ?
    :???:

    #50334
    Leam
    Invité

    Je ne vois pas comment ça peut être un problème d’espace.

    Quand je lis le fichier PDF avec le lecteur d’Adobe reader il n’y a pas de problème.

    Tout les caractères sont bien numérotés et il n’y a pas de problème de programmation ni de décompression sinon j’aurai quelque chose d’aberrant dans la numérotation entre les balises “beginbfchar” et “endbfchar”.

    #50335
    Merlin
    Maître des clés

    Pour moi ce que tu dis est du chinois…
    :Euuuh:

    Peut-être que Alex pourra t’aider, sinon il faudra t’orienter vers les forums anglophones (j’ai quelques bonnes adresses).
    :soleil:

    #50336
    Lionel
    Membre

    Bonjour,

    Le nombre de caractères maximum n’est-il pas dépassé ? (pour certains modes de transmissions de messages écrits; c’est très court et un dépassement provoque une suppression des caractères en trop; soit ça créé des choses curieuses dans ce style).
    Essais à faire avec des messages beaucoup plus courts.

    Le codage des caractères (Uncode ?) est aussi à voir.

    Bien cordialement. :bonjour:
    Lionel

    #50337
    alex
    Participant

    On a sans doute une bonne partie de la réponse dans le système de mesure d’encrage publié sur le site puisque le principe consiste à lire le contenu texte du pdf pour évaluer la densité de l’écriture (script JavaScript). Pour aller plus loin et s’assurer que la piste est bonne, il faudrait avoir un exemple du fichier origine…

    #50338
    Leam
    Invité

    Merci pour vos réponses.

    Pour mieux comprendre ce que je fais, c’est comme si vous ouvrez un fichier PDF avec un éditeur de texte comme Bloc-Note ou Nodepad++ et d’essayer d’extraire le texte présent.

    Dans ma nouvelle recherche j’ai essayé de lire un fichier PDF conçu avec PDF créator.

    En décompressant les valeurs entre les deux balises “stream” et “endstream” je suis maintenant capable de récupérer le texte car le codage est différent.

    je remarque un codage similaire à celui présenté sur ce lien :
    http://www.phpcs.com/tutoriaux/EXTRACTION-CONTENU-DOCUMENT-PDF-PDF_799.aspx

    avec des caractères qui peuvent être extrais facilement comme dans l’exemple du lien ci-dessus :
    [(A)-2.7801(u)-2.7801( )-2.77991(p)-2.77991(l)-2.77991(a)-2.77954(i)-2.77991(s)-2.78065(i)-2.77991(r)-2.77991(,)600]TJ

    Pour la phrase “Au plaisir,

    Je ne connais pas trop le PDF, merci pour vos remarques, je vais voir le système de mesure d’encrage je ne sais pas ce que c’est ?

    #50339
    Merlin
    Maître des clés

    je vais voir le système de mesure d’encrage je ne sais pas ce que c’est ?

    Tout est là : http://www.abracadabrapdf.net/forum/index.php?topic=1085.msg4433

    ;)

Affichage de 11 réponses de 1 à 11 (sur un total de 11)
  • Vous devez être connecté pour répondre à ce sujet.