2010-08-20 3 views
3
  1. J'ai quelques fichiers pdf qui ont été créés à partir de fichiers Word ou Excel.Extraire des données de tables imbriquées en PDF

  2. J'ai besoin d'obtenir l'information qui est dans les tableaux.

  3. Le texte dans le document n'est pas une image, donc je suis capable d'extraire le texte en utilisant des outils tels que pdfbox. Lorsque j'ai le texte, je n'ai aucun moyen de savoir à quelles cellules de la table il appartient parce que je ne sais pas où sont les bordures de la table. Iv'e essayé quelques outils de bureau tels que abby ou convertisseur pdf solide et ils sont capables de convertir les fichiers en documents Word sympa mais cela ne correspond pas à mes besoins car je veux être en mesure de faire ce programme en C#.

  4. Certaines des tables ont des tables imbriquées, ce qui, je pense, rend le tout un peu plus difficile.

J'apprécie votre aide

+0

Vous pouvez télécharger pdftohtml depuis http://sourceforge.net/projects/pdftohtml/files/ et utiliser le commutateur -xml pour voir si la sortie xml vous donne une meilleure mise en page. Le code source est disponible en C et pourrait être interfacé avec certains travaux. Ou appelez simplement le fichier .exe avec un appel hors processus. –

+0

Cette solution ne fonctionne pas du tout pour moi. merci – pooky

+0

Possible copie de [Comment lire le tableau à partir de PDF en utilisant itextsharp?] (Https://stackoverflow.com/questions/15679958/how-to-read-table-from-pdf-using-itextsharp) – bubi

Répondre

1

La difficulté ici est causée par le fait que le texte dans le PDF est pas contenu dans une table. Cela pourrait ressembler à ça, mais sous la surface, ça ne l'est pas.

Donc, il y a deux options que je peux penser. Mais aucun d'entre eux ne sera aussi satisfaisant que vous le voudriez probablement.

  1. Certaines entreprises proposent des SDK pour la conversion de PDF en Excel/Word. Investintech et Iceni sont un couple d'exemples. Mais ces solutions ne sont pas gratuites.
  2. Si vous connaissez la disposition exacte des fichiers PDF dont vous avez besoin pour extraire les données de la table, vous pouvez utiliser n'importe quel SDK qui vous permet d'extraire le texte d'un PDF et vous indique également les coordonnées exactes du texte extrait . En utilisant cette méthode, vous devez savoir à l'avance où le texte va être, de sorte que vous pouvez extraire le texte d'une zone spécifique sur la page. Cela ne fonctionnera évidemment pas si vous devez traiter un document aléatoire.

C'est une tâche difficile, mais j'espère que cela vous donnera un point de départ.

+0

Merci pour votre réponse 1. Les programmes que vous avez mentionnés ne donnent pas de bons résultats. Je ne me dérange pas d'aller avec une solution qui n'est pas libre, mais je dois être sûr qu'il fonctionnera à 100% 2. J'ai essayé de jouer avec la solution d'utiliser les coordonnées mais je ne vois pas comment je peut utiliser cette solution sans connaître les coordonnées de la frontière. L'emplacement du texte dans les tables change (tables imbriquées, lignes multiliaires dans une cellule) – pooky

Questions connexes