PDFlib TET 5 - Features

Das PDFlib Text and Image Extraction Toolkit (TET) wurde zur Extraktion von Textinhalten und Bildern aus PDF-Dokumenten entwickelt, kann aber auch zum Abfragen anderer Informationen aus PDF-Dokumenten verwendet werden.

PDFlib TET ist eine eigenständige Anwendung, die keine Fremdsoftware benötigt. Sie ist äußerst stabil und für den Multithreaded-Einsatz auf einem Server geeignet; siehe auch TET nutzen.

PDFlib TET bietet folgende leistungsstarke Funktionen für die Extraktion und verfügt sowohl über besondere Vorteile für die Textextraktion als auch Vorteile für die Bildextraktion.

 

Akzeptierte PDF-Eingabe

TET verarbeitet alle gängigen Varianten von PDF-Dokumenten:

Alle PDF-Versionen bis Acrobat DC einschließlich ISO 32000-1 und ISO 32000-2

Geschützte PDFs, die zum Öffnen kein Kennwort benötigen

Beschädigte PDF-Dokumente werden repariert

Alle Schriftsysteme der Welt

TET verarbeitet PDF-Dokumente in allen Schriftsystemen der Welt und implementiert eine für einige Schriftsysteme benötigte spezielle Verarbeitung:

Lateinische, griechische und kyrillische Schriftsysteme einschließlich Enttrennung

Arabisch und Hebräisch einschließlich logischer Neuanordnung von linksläufigem und bidirektionalem Text; Normalisierung der arabischen Präsentationsformen

Vereinfachtes und traditionelles Chinesisch, Japanisch und Koreanisch, unabhängig vom Encoding; horizontaler und vertikaler Text

Indische Schriftsysteme (ohne Umsortierung von Glyphen)

Unicode-Unterstützung für alle anderen Sprachen und Schriftsysteme

Unicode

Da Text in PDF normalerweise nicht in Unicode kodiert ist, wandelt PDFlib TET den Text in einem PDF-Dokument in Unicode um:

TET konvertiert alle Textinhalte nach Unicode, unabhängig von der im PDF-Dokument verwendeten Encoding-Methode.

Ligaturen und andere zusammengesetzte Glyphen werden als Sequenz der zugehörigen Unicode-Zeichen ausgegeben.

Glyphen ohne nutzbare Unicode-Information 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.

Inhaltsanalyse und Worterkennung

TET enthält patentierte Algorithmen zur Inhaltsanalyse:

Erkennung von Wortgrenzen zur korrekten Ausgabe von Wörtern

Getrennte Silben werden wieder zu Wörtern zusammengesetzt (Enttrennung).

Entfernen von redundantem Text, zum Beispiel bei Schatteneffekten
oder simulierter Fettschrift

Verknüpfen von Absätzen gemäß der Lesereihenfolge

Korrektes Umsortieren von Text, der über die Seite verstreut ist

Seitenlayout, Tabellen- und Listenerkennung

TET analysiert die Seiteninhalte, um Textspalten zu erkennen. Tabellen werden erkannt - einschließlich Tabellenzellen, die sich über mehrere Textspalten erstrecken. Damit lässt sich die Reihenfolge des extrahierten Textes verbessern. Tabellenzeilen und der Inhalt einzelner Tabellenzellen werden als solche erkannt. Aufzählungen und nummerierte Listen werden als solche erkannt.

Geometrie

TET liefert präzise geometrische Angaben zum Text, z. B. die Position auf der Seite, Glyphenbreiten und Textrichtung. Für die Textextraktion können Seitenbereiche gezielt einbezogen oder ausgeschlossen werden, zum Beispiel um Kopf- und Fußzeilen oder Seitenränder zu übergehen.

Textfarbe

TET analysiert Farbangaben in der PDF-Seitenbeschreibung und liefert für jede Glyphe genaue Farbangabe. Damit lassen sich z.B. Überschriften oder hervorgehobener Text identifizieren.

Extrahieren von Rasterbildern

Bilder auf den Seiten einer PDF-Datei lassen sich als TIFF,- JPEG-, JPEG-2000- oder JBIG2-Dateien extrahieren. Zusätzlich werden genaue geometrische Informationen (Position, Größe und Winkel) für jedes Bild geliefert. 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 Farbkonvertierung stattfindet. Damit erhält TET die höchstmögliche Bildqualität.

PDF-Analyse

Die TET-Bibliothek enthält die pCOS-Schnittstelle zur Abfrage von Detailinformationen über ein PDF-Dokument, wie Dokument-Infofelder, Metadaten, Fontlisten, Seitengröße und vieles mehr.

Konfiguration für problematisches PDF

TET verfügt über spezielle Verfahren und Hilfsmittel zur Behandlung verschiedener Klassen von PDF, 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 unter OS X/macOS und Windows kostenlos
verfügbar.

Eingebettete Fonts werden nach zusätzlichen Daten für das Unicode-Mapping durchsucht. Ist ein Font nicht eingebettet, lässt sich die Extraktion durch externe Fontdateien oder Systemfonts weiter verbessern.

Unicode-Nachbearbeitung

TET unterstützt Unicode-basierte Verarbeitungsschritte zur Verbesserung des extrahierten Textes:

Foldings erhalten, entfernen oder ersetzen Zeichen, um z.B. Interpunktionszeichen oder Zeichen aus einem irrelevanten Schriftsystem herauszufiltern.

Dekompositionen ersetzen ein Zeichen mit einer äquivalenten Folge von einem oder mehreren anderen Zeichen, z.B. Ersetzen von schmalen, breiten oder vertikalen japanischen Zeichen oder lateinischen hochgestellten Zeichen mit dem entsprechenden normalen Zeichen.

Text kann in alle vier Unicode-Normalformen konvertiert werden, um z.B. Texte in NFC-Form auszugeben, damit sie den Anforderungen einer Website oder Datenbank genügen.

Dokumentdomänen

PDF-Dokumente können außer den Seiteninhalten noch an anderen Stellen Text enthalten. Obwohl die meisten Anwendungen nur die Seiteninhalte verarbeiten, sind oft auch andere Domänen eines Dokuments relevant. TET extrahiert Text aus folgenden Dokumentdomänen:

Seiteninhalte

Standard- und benutzerdefinierte Dokument-Infofelder

XMP-Metadaten auf Dokument- und Bildebene

Lesezeichen

Dateianhänge und PDF-Portfolios werden rekursiv verarbeitet

Formularfelder

Kommentare (Anmerkungen)

Allgemeine PDF-Eigenschaften lassen sich abfragen, z.B. Seitenanzahl, Übereinstimmung mit Standards wie PDF/A, PDF/X usw.

XMP-Metadaten

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, sofern vorhanden.

TETML stellt PDF-Inhalte als XML dar

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 Fontinformationen und Positionsangaben, Details zu den Ressourcen (Fonts, Bilder, Farbräume) und Metadaten.

TETML umfasst auch interaktive Elemente wie Formularfelder, Anmerkungen, Lesezeichen usw. und kann sogar zur Analyse von JavaScript, Farbraumangaben, ICC-Profilen oder Druckausgabebedingungen verwendet werden.

TETML wird durch ein zugehöriges XML-Schema definiert, damit TET konsistente und zuverlässige XML-Ausgabe liefert. TETML lässt sich mit XSLT-Stylesheets verarbeiten, um z.B. Filter anzuwenden oder TETML in andere Formate zu konvertieren. Die TET-Distribution enthält Beispiele für XSLT-Stylesheets zur Verarbeitung von TETML.

Der folgende Ausschnitt zeigt TETML mit Details zu den Glyphen:


<Word>
<Text>PDFlib</Text>
<Box llx="111.48" lly="636.33" urx="161.14" ury="654.33">
<Glyph font="F1" size="18" x="111.48" y="636.33" width="9.65">P</Glyph>
<Glyph font="F1" size="18" x="121.12" y="636.33" width="11.88">D</Glyph>
<Glyph font="F1" size="18" x="133.00" y="636.33" width="8.33">F</Glyph>
<Glyph font="F1" size="18" x="141.33" y="636.33" width="4.88">l</Glyph>
<Glyph font="F1" size="18" x="146.21" y="636.33" width="4.88">i</Glyph>
<Glyph font="F1" size="18" x="151.08" y="636.33" width="10.06">b</Glyph>
</Box>
</Word>

TET-Konnektoren

TET-Konnektoren verbinden TET mit anderer Software. Die folgenden TET-Konnektoren ermöglichen die Textextraktion aus PDF in verschiedenen Softwareumgebungen:

TET-Konnektor für die Suchmaschine Lucene

TET-Konnektor für den Solr Search Server

TET-Konnektor für das TIKA Toolkit

TET-Konnektor für Oracle Text

TET-Konnektor für MediaWiki

TET PDF IFilter für Microsoft-Umgebungen ist als separates Produkt erhältlich. Es extrahiert Text und Metadaten aus PDF-Dokumenten und macht sie Such- und Retrieval-Software unter Windows zugänglich.

TET Cookbook

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 zu verarbeiten und anzureichern, etwa durch Lesezeichen oder Links auf Basis des Textinhalts.