AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

PDF Text lesen

Ein Thema von michael.cohrs · begonnen am 23. Apr 2014 · letzter Beitrag vom 24. Apr 2014
Antwort Antwort
Seite 1 von 2  1 2      
michael.cohrs

Registriert seit: 11. Nov 2005
Ort: Hamburg
130 Beiträge
 
#1

PDF Text lesen

  Alt 23. Apr 2014, 16:56
Hallo zusammen,
ich benutze Delphi 7 und versuche aus einer PDF Datei den Text zu lesen. Diesen Text möchte ich in einer Stringliste verwalten um ihn später mit einem anderen Dokument zu vergleichen. Der Ansatz auf der Seite http://www.swissdelphicenter.ch/de/showcode.php?id=2169 hat mir leider nicht geholfen da es mir nicht gelingt. Bei dem dort angegebenen Aufruf CreateOleObject('AcroExch.pdDoc') erhalte ich die Fehlermeldung Invalid Class String. Die Acrobat_TLB wurde eingebunden. auf der Maschine ist der Acrobat Reader 8.0 installiert. Hat vielleicht jemand eine Lösung mit möglicherweise kleinen Codesnipsel?

Vielen Dank

Michael
Michael Cohrs
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.115 Beiträge
 
Delphi 12 Athens
 
#2

AW: PDF Text lesen

  Alt 23. Apr 2014, 17:26
Ist halt bissl blöd, wenn direkt beim Tipp nicht steht wie alt der eigentlich ist. (wird wohl Absicht sein, da fast alle Tipps etwas "älter" sind)

21.03.2005

Es kann natürlich sein, daß aktuellere Versionen des Acrobat-Readers diese 9 Jahre alte Schnittstelle/Klasse inzwischen nicht mehr anbieten.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (23. Apr 2014 um 17:31 Uhr)
  Mit Zitat antworten Zitat
michael.cohrs

Registriert seit: 11. Nov 2005
Ort: Hamburg
130 Beiträge
 
#3

AW: PDF Text lesen

  Alt 23. Apr 2014, 18:35
Danke für die Antwort!

Ja leider ist der Tipp "etwas" älter Kennst Du vieleicht eine andere Möglichkeit das benannte Problem zu lösen?

Danke schön

michael
Michael Cohrs
  Mit Zitat antworten Zitat
WM_CLOSE

Registriert seit: 12. Mai 2010
Ort: königsbronn
398 Beiträge
 
RAD-Studio 2009 Pro
 
#4

AW: PDF Text lesen

  Alt 23. Apr 2014, 18:52
Es gibt verschiedene Libs, die PDF-Dateien öffnen können, zum Teil kostenpflichtig.

Dabei ist zu beachten, dass es mindestens 2 komplett verschiedene Arten im Dateiaufbau von PDF-Dokumenten gibt. Diese kannst du auf der Adobe-Webseite einsehen (Stichwort "PDF Specification").
Das bedeutet, dass manche Libs nur 1 Standard lesen können.
Außerdem werden manche Dateien von manchen Libs evtl. nicht richtig gelesen.

Wenn du eine dieser Libs verwendest, kannst du meistens davon ausgehen, dass sie auf dem Zielsystem immer vorhanden ist/funktioniert (sind ja dann in deinem Programm), was beim Adobe Reader nicht gegeben ist, wenn z.B. ein Update kommt, das alte Funktionen nicht mehr anbietet.

Die Lib-Variante ist imho vorzuziehen wenn:
-Das Deployment (Setup auf dem Zielsystem) einfacher sein soll
-Nur ein bestimmter Typ von PDF-Dateien gelesen werden soll. (Dateien die von einem bestimmten Programm erzeugt werden und immer den gleichen Aufbau haben.)

PS:
Ich sehe gerade, dass du explizit von Adobe Acrobat sprichst. Meinst du wirklich den (kostenpflichtigen) Adobe Acrobat oder den Adobe Reader?
Delphi programming

Geändert von WM_CLOSE (23. Apr 2014 um 19:04 Uhr)
  Mit Zitat antworten Zitat
michael.cohrs

Registriert seit: 11. Nov 2005
Ort: Hamburg
130 Beiträge
 
#5

AW: PDF Text lesen

  Alt 23. Apr 2014, 19:11
Hallo

ich meine den Adobe Reader, ich kann davon ausgehen das dieser auf jedem System installiert ist.
Der Aufbau der Dateien ist immer gleich. Leider fehlt es mir an Kenntnissen zum Einbinden der
"Libs" Könntest Du mir hierbei ein wenig behilflich sein?

Danke und viele Grüße
Michael
Michael Cohrs
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.170 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: PDF Text lesen

  Alt 23. Apr 2014, 20:21
Hallo zusammen,
ich benutze Delphi 7 und versuche aus einer PDF Datei den Text zu lesen. Diesen Text möchte ich in einer Stringliste verwalten um ihn später mit einem anderen Dokument zu vergleichen. Der Ansatz auf der Seite http://www.swissdelphicenter.ch/de/showcode.php?id=2169 hat mir leider nicht geholfen da es mir nicht gelingt. Bei dem dort angegebenen Aufruf CreateOleObject('AcroExch.pdDoc') erhalte ich die Fehlermeldung Invalid Class String. Die Acrobat_TLB wurde eingebunden. auf der Maschine ist der Acrobat Reader 8.0 installiert. Hat vielleicht jemand eine Lösung mit möglicherweise kleinen Codesnipsel?
Da du nun den Adobe Reader installierst hast aber die Lösung den Adobe Acrobat vorraussetzt wird dir diese Code nix bringen.

Für die Textextraktion schau dir mal PDFBox an. Diese hat eine einfach zu verwendende API


ich meine den Adobe Reader, ich kann davon ausgehen das dieser auf jedem System installiert ist.
Diese ist nicht überall installiert. A) weil es alternative PDF-Viewer gibt und B) für ein Großteil der Anwendungsfälle man mittlerweile es reicht die Browser-Integrierten PDF-Viewer-Fähigkeiten zu verwenden.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
michael.cohrs

Registriert seit: 11. Nov 2005
Ort: Hamburg
130 Beiträge
 
#7

AW: PDF Text lesen

  Alt 24. Apr 2014, 05:11
Guten Morgen,

ich kann in unserer Firma voraussetzen das der Adobe Reader auf jeder Maschine installiert ist, es geht um ein internes Firmenproblem. Gibt es denn so gar keine Möglichkeit den Text aus einer PDF zu lesen?

viele Grüße

Michael
Michael Cohrs
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: PDF Text lesen

  Alt 24. Apr 2014, 06:33
PDF ist ja nur ein Containerformat. Viele beinhalten statt Text aber nur Bilder der Seiten ( wenn eingescannt). In diesem Fall existiert dann kein Text, den Du so leicht auselesen kannst. Man müsste in diesem Fall einen Textindex (per OCR) erzeugen lassen (z.B. mit Vollversion von Adobe).
Diesen könnte man dann über den IFILTER auslesen. Dieser ist aber m.W. nicht mehr Teil des Readers.
Markus Kinzler
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#9

AW: PDF Text lesen

  Alt 24. Apr 2014, 06:54
Gibt es denn so gar keine Möglichkeit den Text aus einer PDF zu lesen?
Vermutlich kann man das Kommandozeilen-Tool pdftotext via Delphi steuern und so aus PDF-Dateien, die garantiert Text enthalten, eine Textdatei generieren. Die Syntax meiner alten Version ist ganz einfach: pdftotext PdfDatei.pdf Textdatei.txt. Diverse parameter können zum Steuern wie z.B. der Angabe der ersten zu extrahierenden Seite oder dem Unterdrücken von Fehlermeldungen usw. eingesetzt werden. Funktioniert wie gesagt nur mit reinen Text-PDFs. Sobald Grafik oder undefinierbare Codes im PDF vorkommen, streikt das Tool.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.170 Beiträge
 
Delphi 10.4 Sydney
 
#10

AW: PDF Text lesen

  Alt 24. Apr 2014, 08:21
Gibt es denn so gar keine Möglichkeit den Text aus einer PDF zu lesen?
Ich habe doch eine Aufgeschrieben. Ist das wohl keine Möglichkeit?

Mit dem Adobe Reader gibt es (falls du dich darauf bezogen hast) keine Mögichkeit.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:29 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz