
PDFlib TET (Text Extraction Toolkit) ist ein Entwicklungswerkzeug, mit dem sich Text und Rasterbilder zuverlässig aus PDF-Dokumenten extrahieren lassen. TET stellt den Text eines PDF-Dokuments als Unicode-Strings zur Verfügung und liefert detaillierte Informationen über Schriften und Zeichen sowie die Position auf der Seite. Rasterbilder werden in gebräuchliche Bilddatenformate extrahiert. Optional kann TET die PDF-Dokumente in ein XML-basierendes Format namens TETML konvertieren, das Text und Metadaten sowie Ressource-Informationen enthält.
TET verfügt über einen ausgefeilten Algorithmus zur Inhaltsanalyse und kann damit Wortgrenzen erkennen, Text zu Spalten zusammenfassen oder redundanten Text entfernen, zum Beispiel Schatteneffekte oder künstliche Fettschrift. Mit der pCOS-Schnittstelle können Sie zudem beliebige Objekte aus einem PDF-Dokument abfragen, zum Beispiel Metadaten oder interaktive Elemente. Mit PDFlib TET können Sie:
eine Suchmaschine für PDF-Dokumente implementieren
Texte und Bilder aus PDFs wieder verwerten
Inhalte von PDFs in andere Formate konvertieren
PDFs abhängig von ihren Inhalten verarbeiten, z. B. anhand von Überschriften aufteilen (erfordert zusätzlich PDFlib+PDI)
PDFlib TET verarbeitet alle gängigen Varianten von PDF bis hin zu Acrobat 9 (einschließlich RC4- und AES-Verschlüsselung). TET kann auch Chinesischen, Japanischen und Koreanischen Text extrahieren. Alle CJK-Encodings werden erkannt und horizontale und vertikale Leserichtung unterstützt.
Geschützte Dokumente können indiziert werden, wobei die Zugangsberechtigungen und die Schutzeinstellungen beachtet werden.
Da Textinhalte in PDF üblicherweise nicht in Unicode kodiert sind, normalisiert PDFlib TET sämtlichen Text aus einem PDF-Dokument nach Unicode:
TET konvertiert alle Textinhalte nach Unicode. In C und anderen Sprachen, die Unicode nicht unterstützen, wird der Text in den Formaten UTF-8 oder UTF-16 zurückgegeben, in Unicode-fähigen Sprachen als normale String-Objekte.
Ligaturen und andere zusammengesetzte Zeichen werden als Sequenz der zugehörigen Unicode-Zeichen ausgegeben.
Herstellerabhängig kodierte Unicode-Zeichen in der Private Use Area (PUA) werden erkannt und auf Zeichen im allgemeinen Unicode-Bereich abgebildet, falls möglich.
Zeichen ohne eigene Unicode-Zuordnung werden erkannt und auf ein konfigurierbares Ersatzzeichen abgebildet, um Fehlinterpretationen zu verhindern.
In TET sind verschiedene Workarounds für bestimmte Erzeugerprogramme implementiert, etwa für InDesign- und TeX-Dokumente oder PDFs, die auf Mainframe-Systemen generiert wurden.
TET beinhaltet ausgefeilte Algorithmen zur Inhaltsanalyse:
Patentierter Algorithmus zur Erkennung von Wortgrenzen, die zur korrekten Erkennung von Wörtern erforderlich sind.
Getrennte Silben werden zu Wörtern zusammengesetzt.
Redundanter Text wird entfernt, zum Beispiel bei Schatteneffekten oder künstlicher Fettschrift.
Absätze werden gemäß der Lesereihenfolge verknüpft.
Über die Seite verteilter Text wird umsortiert.
TET analysiert die Seiteninhalte, um Textspalten zu erkennen. Tabellen werden erkannt – inklusive Tabellenzellen, die sich über mehrere Textspalten erstrecken. Damit lässt sich die Sortierung des extrahierten Textes verbessern. Tabellenzeilen und der Inhalt einzelner Tabellenzellenwerden als solche markiert.
TET liefert genaue geometrische Daten zum Text, zum Beispiel die Position auf der Seite, die Zeichenbreiten und die Textrichtung. Beim Extrahieren von Text können Seitenbereiche explizit ausgeschlossen oder einbezogen werden, zum Beispiel um Kopf- und Fußzeilen oder Seitenränder zu übergehen.
Bilder auf den Seiten einer PDF-Datei lassen sich als TIFF,- JPEG-, oder JPEG-2000-Dateien speichern. Zusätzlich werden genaue geometrische Informationen (Position, Größe und Winkel) für jedes Bild zurückgeliefert. Fragmentierte Bilder werden zu einem größeren Bild zusammengesetzt, um die Wiederverwertung zu vereinfachen. Die originalgetreue Darstellung ist dadurch garantiert, dass beim Extrahieren keine Neuberechnung der Auflösung (Downsampling) und keine Farbraumtransformation stattfindet. Damit erhält TET die höchstmögliche Bildqualität.
Die TET- Bibliothek enthält die Programmierschnittstelle pCOS, mit der sich Detailinformationen aus dem PDF-Dokument abfragen lassen, etwa Dokumentinfofelder, XMP-Metadaten, Fontlisten, Seitengrößen und vieles andere (weitere Informationen dazu im separaten pCOS-Datenblatt).
Verschiedene Arten von beschädigten PDF-Dokumenten werden erkannt und wenn möglich automatisch repariert.
TET verfügt über spezielle Verfahren und Hilfsmittel zur Behandlung verschiedener Klassen von PDFs, deren Text sich mit anderen Produkten nicht korrekt extrahieren lässt. Außerdem bietet TET zahlreiche Konfigurationsmöglichkeiten, mit denen sich die Verarbeitung problematischer Dokumente erheblich verbessern lässt:
Das Unicode-Mapping lässt sich mit eigenen Tabellen anpassen, die Zeichencodes oder Glyphnamen auf Unicode abbilden.
PDFlib FontReporter ist ein zusätzliches Werkzeug für die Analyse von Fonts, Encodings und Glyphen in PDF-Dokumenten. Es ist als Plugin für Adobe Acrobat kostenlos für Mac und Windows verfügbar.
Eingebettete Schriften werden nach Daten durchsucht, die beim Unicode-Mapping nützlich sind. Ist eine Schrift nicht eingebettet, lässt sich die Extraktion durch externe Fontdateien oder Systemschriften weiter verbessern.
PDF-Dokumente können nicht nur auf den eigentlichen Seiten Text enthalten. Obwohl die meisten Anwendungsprogramme sich ausschließlich mit dem Seiteninhalt befassen, können auch andere Bereiche relevant sein. TET extrahiert deshalb Texte aus den folgenden Bereichen:
Seiteninhalt
Vordefinierte oder benutzerdefinierte Dokumentinfofelder
XMP-Metadaten auf Dokument- und Bildebene
Lesezeichen
Dateianlagen und PDF-Sammlungen oder -Portfolios können rekursiv verarbeitet werden
Formularfelder
Kommentare (Anmerkungen)
Allgemeine PDF-Eigenschaften können abgefragt werden, etwa die Seitenanzahl, die Übereinstimmung mit Standards wie PDF/A oder PDF/X, etc.
TET unterstützt XMP-Metadaten auf mehrere Arten:
Mit der integrierten pCOS-Schnittstelle lassen sich XMP-Metadaten für das Dokument, einzelne Seiten, Bilder oder andere Teile des Dokuments programmatisch abfragen.
Die TETML-Ausgabe enthält die XMP-Daten des Dokuments und der Bilder, sofern im PDF vorhanden.
Werden Bilder in den Formaten TIFF oder JPEG exportiert, übergibt TET auch XMP-Metadaten.
Optional kann TET die Inhalte einer PDF-Datei in einer XML-Variante namens TETML darstellen, mit der sich eine Vielzahl der im PDF enthaltenen Informationen in einer Form darstellen lässt, die für gebräuchliche XML-Werkzeuge zugänglich ist. TETML enthält den eigentlichen Text, optional ergänzt durch Schriftinformationen und Positionsangaben, Details zu den Ressourcen (Schiften, Bilder, Farbräume) und Metadaten.
TETML wird durch ein zugehöriges XML-Schema definiert, so dass TET immer eine konsistente und zuverlässige XML-Ausgabe garantiert. TETML lässt sich mit XSLT-Stylesheets verarbeiten, um Filter anzuwenden oder TETML in andere Formate zu konvertieren. In der TET-Distribution sind Beispiele für XSLT-Stylesheets zur Verarbeitung von TETML enthalten.
TET-Konnektoren verbinden TET mit anderer Software. Die folgenden TET-Konnektoren erlauben die Textextraktion aus PDF in verschiedenen Softwareumgebungen:
Das TET Plugin für Adobe Acrobat ist ein kostenloses Tool, mit dem sich Texte und Bilder extrahieren lassen, und das bessere Funktionen als die in Acrobat eingebauten Werkzeuge bietet. Das TET Plugin kann zur interaktiven Evaluierung der TET-Funktionen genutzt werden.
TET-Konnektor für die Suchmaschine Lucene
TET-Konnektor für den Solr Search Server
TET-Konnektor für Oracle Text
TET PDF IFilter für Microsoft-Umgebungen ist als separates Produkt erhältlich. Der IFilter extrahiert Text und Metadaten aus PDF-Dokumenten und macht sie Such- und Retrieval-Software unter Windows zugänglich (siehe auch separates Datenblatt für TET PDF IFilter)
TET-Konnektor für MediaWiki
Das TET Cookbook ist eine Sammlung von Programmierbeispielen, die den Einsatz von TET bei verschiedensten Aufgabenstellungen der Text- und Bildextraktion demonstrieren. Zahlreiche Cookbook-Beispiele zeigen auch, wie sich TET und PDFlib+PDI kombinieren lassen, um PDF-Dokumente anzureichern, etwa durch Lesezeichen oder Links, die auf Basis des Textinhalts erzeugt werden.
Weitere Funktionen und besondere Vorteile.