Lire des tableaux dans du pdf

J’ai des documents pdf qui comportent des tableaux, à extraire pour lecture dans 4D. Actuellement, on fait cela en passant par un outil de conversion en excel, puis on lit le doc excel obtenu. Existe-t’il quelque chose permettant une lecture directe ?

Quelle idée aussi d’utiliser du PDF comme type de fichier d’export. Le PDF n’est pas fait/prévu pour cela. C’est un format d’impression: P = PRINT :!:

Tu risques en plus de récupérer des caractères parasites. Déjà que les clients s’amusent à faire des copier-coller à partir de PDF, c’est suffisant… :-x

Non, pdf n’est pas un format d’impression. Ça signifie “portable document format”.

En revanche, il est certain que sa structure n’est pas adapté pour faire de l’import. Il vaut mieux en passer par une conversion préalable avec un contrôle utilisateur.

Il doit être possible d’automatiser sa conversion via un web service mais c’est tout.

Je te l’accord j’ai été un peu rapide dans mon explication le “P” ne veut effectivement pas dire “Print” mais “Portable”; néanmoins, il n’en reste pas moins que https://fr.wikipedia.org/wiki/Portable_Document_Formatle format de fichier PDF> est un format de representation graphique d’un document en vu de l’impression ou de ça representation !
Ce n’est PAS un format d’échange de donnée !

Je peux te faire un PDF qui contient une image de tableau et tu n’en resortira jamais aucune donnée textuelle :twisted:

Tout cela pour dire qu’à moins de savoir précisément comment a été construit le PDF, on ne peut absolument pas garantir de ressortir de l’information exploitable d’un PDF.

Vous excitez pas sur le pourquoi du comment et le “le pdf n’est pas fait pour ça” : je n’ai pas le choix…
Merci, en tout cas.

Tiens, je vais faire Lyon Paris en trottinette, moi…

Pour pouvoir automatiser ton truc, il faut au moins être sûr que ton PDF contient et soit construit de telle sorte qu’il permet de faire ce que tu cherches càd. extraire du texte.

D’après ce que tu dis, c’est le cas (?), mais encore faut-il le savoir. (tu es donc dans un cas particulier :razz:) Et bon courage si tu veux automatiser ça sans aucun contrôle humain.

: Manuel PIQUET

Pour pouvoir automatiser ton truc, il faut au moins être sûr que ton
PDF contient et soit construit de telle sorte qu’il permet de faire
ce que tu cherches càd. extraire du texte.
Oui, je parle de pdf “OCRisés”. Je sais récupérer du texte là-dedans, mais juste des éléments de ci de là, pas des tableaux entiers en conservant la structure. Quand je vois le comportement de la sélection et du copier coller, je n’ai de toutes façons guère d’espoir…

Bonjour Arnaud
Je ne sais pas si cela correspond ç ce que tu veux faire :
Les fournisseurs nous envoient des factures par mail sur une adresse Email dédiée. Toutes les nuits 4D récupère les mails, en extrait les Pièces jointes en PDF, les convertie en Txt (via un utilitaire de conversion). Ces fichiers textes sont ensuites intégrés par 4D (principalement en utilisant get text keywords) afin d’être transférées en compta.

A bientot

Didier

Salut Didier,
ça m’intéresse…
Tu récupères des tableaux de plusieurs lignes/colonnes, comme ça ? Sur plusieurs pages ? Portrait/paysage ?
(à boire et à manger, fromage et/ou dessert, etc.)

Hello Arnaud

Oui tout a fait , cela concerne environ 400 factures /semaines.
Si tu veux je peux te tel dans la matinée (vers 10h15)

A +
Didier

ce sera avec plaisir :smiley:

Si, en plus, ça passe par de l’OCR, il faudra un contrôle utilisateur attentif. La récupération est parfois approximative. Quant à la structure du texte résultant, elle est rarement identique d’une fois sur l’autre.

Au cas où, il existe un plug-in japonais (oui de qui on sait) qui fait de l’OCR. Je l’ai déjà utilisé avec succès. https://github.com/miyako/4d-plugin-tesseract4d-plugin-tesseract>

Ce que j’avais fait nécessitait un contrôle à chaque étape. On pouvait comparer côte à côte l’image et le résultat de l’OCR. On validait et ensuite, on comparait le texte avec un aperçu de ce que donnerait l’import. On pouvait corriger le texte à la volée si l’import n’était pas bon.
Il faut bien blinder le code pour tenir compte des approximations à chaque étape.