Barrierefreies Webdesign ein zugängliches und nutzbares Internet gestalten

Lesen, was drinsteht — rausholen, was drinsteckt: Wie blinde Computernutzer sich PDF-Dokumente zugänglich machen geschrieben von Oliver Nadig (2005)

Dieser Beitrag wurde von Oliver Nadig in Oktober 2005 verfasst. Die vorliegende Fassung ist die Version 1.02 vom 25.1.2006.

5.2 Von PDF nach Text mit PDFToText

"Wie im vorigen Abschnitt erwähnt: In den mit Hilfe von A.R. aus PDF-Dokumenten erzeugten Textdateien finden sich kaum noch Textstrukturmerkmale. Besonders unangenehm ist dies, wenn dadurch Zentrierungen, Einrückungen und hängende Absätze, wie sie zum Beispiel bei Nummerierungen und Aufzählungen vorkommen, verloren gehen. Möchten Sie die genannten Textstrukturmerkmale in Ihrer Textdatei wiederfinden, so sollten Sie PDF-Dateien nicht mit dem A.R., sondern mit PDFToText ins Textformat konvertieren. PDFToText konvertiert außerdem wesentlich schneller als der A.R.

Bevor ich Ihnen die nötigen Arbeitsschritte beschreibe, sind noch einige warnende Hinweise nötig:

  1. PDFToText ist nicht sehr gut darin, die Lesereihenfolge in mehrspaltigen Texten zu erkennen. Bei komplex gestalteten Dokumenten bleibt Ihnen nur der A.R. als Konvertierungswerkzeug.
  2. PDFToText verfügt über keine Windows-Benutzeroberfläche. Dies bedeutet, dass Sie das Programm aus der Eingabeaufforderung (auch 'DOS-Box' genannt) heraus über die Kommandozeile steuern. Für jemanden, der die Zeiten des textorientierten Betriebssystems MS-DOS nicht erlebt hat, wird dies als sehr störend empfunden.
  3. Genau wie der A.R., so kann auch PDFToText keine Inhalte aus PDF-Dokumenten entnehmen, bei denen dies vom Autor untersagt wurde. Ist also im A.R. der Menüpunkt 'Datei > Als Text speichern' nicht verfügbar, brauchen Sie PDFToText gar nicht erst zu bemühen.
  4. Die derzeit aktuelle Version 3.01 von PDFToText unterstützt die neueste Version 1.6 von PDF noch nicht direkt. Übergeben Sie PDFToText ein Dokument im Format PDF 1.6, gibt das Programm eine Warnung aus, dass das Ausgabeergebnis unter Umständen nicht zufriedenstellend sein könnte. Bisher waren die Umwandlungsergebnisse von PDF 1.6-Dokumenten in meiner Arbeitspraxis jedoch nie zu beanstanden. Vom A.R.7 wird PDF 1.6 übrigens voll unterstützt. Mehr zu den verschiedenen Versionen von PDF möchte ich Ihnen in Abschnitt 6.1 erzählen.

Zur Erinnerung: In Abschnitt 2.2 haben wir das Programmpaket Xpdf und damit das Programm PDFToText im Ordner 'C:\xPdf' installiert.

So konvertieren Sie mit Hilfe von PDFToText eine PDF-Datei ins Textformat:

  1. Benutzen Sie den "Arbeitsplatz" oder den "Windows Explorer", um die zu konvertierende Datei in denjenigen Ordner zu kopieren, in dem auch PDFToText installiert wurde. In unserem Beispiel ist das der Ordner 'C:\xpdf'. Durch diesen auf den ersten Blick unnötigen Schritt sparen Sie sich im Folgenden eine Menge Tipparbeit.
  2. Da PDFToText über die Kommandozeile gesteuert wird, sollten Sie zunächst ein Fenster für die sogenannte 'Eingabeaufforderung' öffnen. rufen Sie dazu den Menüpunkt 'Startmenü > Programme > Zubehör > Eingabeaufforderung' auf. Mit dem Eingabeaufforderungs-Fenster öffnet sich für Sie eine neue, textorientierte Welt: Statt mit grafischen Benutzeroberflächen arbeiten Sie in der Eingabeaufforderung mit Textkommandos. Auch die Rückmeldungen die Sie von den in der Eingabeaufforderung ausgeführten Befehlen und Programmen erhalten, werden in der Regel in Textform ausgegeben. Dabei gilt die Regel: Keine Nachricht ist eine gute Nachricht – Rückmeldungen gibt es meistens nur, wenn Fehler aufgetreten sind.
  3. Das Fenster der Eingabeaufforderung wartet nun auf Ihre Befehle. Um Ihnen dies zu signalisieren, zeigt die Eingabeaufforderung ein sogenanntes Prompt an, hinter dem der Cursor blinkt. Das Prompt besteht aus einer Pfadangabe der Art 'c:\windows' oder 'c:\dokumente und einstellungen\benutzer'. Danach folgt ein Größer-als-Zeichen, hinter dem der Cursor steht. Die Pfadangabe zeigt Ihnen das sogenannte 'aktuelle Verzeichnis' an. Stellen Sie sich das am besten wie einen Ordner vor, dessen Inhalt Sie sich mit Hilfe des "Arbeitsplatz" oder des Windows Explorers anzeigen lassen.
  4. Wechseln Sie nun in den Ordner, in dem das Programmpaket XpdfWIN installiert ist. Für unser Beispiel gehe ich vom Ordner 'C:\xpdf' aus. Geben Sie dazu zunächst in der Eingabeaufforderung die Zeichenfolge 'cd\' ein und lassen den Befehl durch Drücken der Eingabetaste ausführen. Das 'cd' steht für ' Change Directory', also für die Aufforderung, das aktuelle Verzeichnis zu wechseln. Der direkt an die Buchstaben 'cd' angehängte Backslash besagt, dass wir in den Stammordner des aktuellen Laufwerkes wechseln wollen. Der Stammordner hat die Bezeichnung 'C:\,' und genau dieser Text sollte jetzt links von einem Größer-als-Zeichen und dem Cursor angezeigt werden. Nun müssen Sie vom Stammordner aus in den Ordner 'c:\xpdf' wechseln. Tun Sie dies durch Eingabe von 'cd xpdf' und anschließendes Drücken der "Eingabetaste". 'cd' ist wieder der Befehl zum Ordnerwechsel, 'xpdf' ist der Name des Ordners, in den wir zu wechseln wünschen. Links von Ihrem Cursor sollte nun der Text 'C:\xpdf>' zu lesen sein.
  5. Nun starten Sie die Konvertierung mit PDFToText und übergeben dem Programm dabei die benötigten Informationen. Diese bestehen einerseits aus einem Befehl der Anzeigt, dass Sie die Übernahme möglichst vieler Layout-Merkmale in die Textdatei wünschen und andererseits im Namen der umzuwandelnden PDF-Datei. Tippen Sie also zunächst das Wort 'PDFToText' und dann ein Leerzeichen. Tippen Sie dann die Zeichenfolg '-layout' und ein Leerzeichen. Der Bindestrich vor dem Wort 'layout' zeigt an, dass es sich bei diesem Befehl um eine sogenannte Kommandozeilenoption handelt. PDFToText verfügt über eine Reihe von Kommandozeilenoptionen, wobei '-layout' die Wichtigste ist. Sie teilt dem Programm wie gesagt mit, dass wir die Übernahme möglichst vieler Layout-Merkmale der PDF-Originaldatei in die Textdatei wünschen.

    Geben Sie jetzt noch den Namen der zu konvertierenden PDF-Datei mitsamt Dateiendung ein und führen den Befehl durch Drücken der "Eingabetaste" aus. Hier noch einmal zur Kontrolle die gesamte Eingabezeile:

    PDFToText -layout handbuch.pdf

  6. Nachdem Sie den Befehl abgeschickt haben, verschwindet das Prompt für einige Augenblicke. Selbst bei PDF-Dateien, die aus mehreren hundert Seiten bestehen, sollte dies jedoch nicht länger als zehn Sekunden dauern! Wenn Ihr Screenreader nicht – wie beispielsweise JAWS ab Version 6.1 dies tut – die Meldungen der Eingabeaufforderung automatisch vorliest, sollten Sie beim Wiederauftauchen des Prompts mit Hilfe Ihres Screenreaders eine Textzeile nach oben wandern um nach zu lesen, ob PDFToText Meldungen ausgegeben hat. Unter Umständen sind mehrere Meldungen erschienen – wandern Sie dann mit Hilfe des Cursors Ihres Screenreaders entsprechend viele Zeilen aufwärts.
  7. Wurde gar keine Meldung ausgegeben, konnte PDFToText die Umwandlung erfolgreich durchführen. Sie finden die entstandene Textdatei im selben Ordner wie das PDF-Original. Sie sollten die Textdatei auf ihre Brauchbarkeit hin überprüfen. Wurden Absätze durcheinandergewürfelt oder Tabellen Zerpflückt, müssen Sie auf den A.R. als Umwandlungsprogramm zurück greifen. Ist die Konvertierung zu Ihrer vollen Zufriedenheit ausgefallen, können Sie bei Bedarf die ursprüngliche PDF-Datei löschen.
  8. Die wichtigsten ernst zu nehmenden Fehlermeldungen von PDFToText sind:
    • Error: Couldn't open file

      Zeigt an, dass Sie sich bei der Eingabe des Dateinamens oder der Kommandozeilenoptionen vertippt haben. PDFToText konnte jedenfalls keine Datei des angegebenen Namens finden und konvertieren.
    • Error: Copying of text from this document is not allowed

      Dies zeigt Ihnen, dass das Entnehmen von Inhalten aus der PDF-Datei nicht gestattet ist. Sie müssen dann auf GSView als Umwandlungsprogramm zurück greifen.
    • Error: Couldn't read xref table

      Diese Meldung weist auf eine vermutlich irreparabel beschädigte Datei hin. Sie brauchen keine Hoffnungen zu haben, dass sich das Dokument mit einem anderen Programm öffnen lässt, weil PDFToText selbst bereits eine gegen lesefehler sehr unempfindliche Software ist.
    Daneben gibt es zahlreiche weniger dramatische Fehlermeldungen, die in der Regel keinen Einfluss auf die Qualität der Textausgabe haben.

Ich möchte den Vorgang der Textumwandlung mit PDFToText noch einmal in aller Kürze zusammenfassen:"

Zusammenfassung von Abschnitt 5.2

  1. "Kopieren Sie die zu konvertierende PDF-Datei in den Ordner, in dem sich auch das Programm PDFToText befindet.
  2. Öffnen Sie über 'Startmenü > Programme > Zubehör > Eingabeaufforderung' ein Fenster für die Eingabeaufforderung.
  3. Wechseln Sie mit dem Kommando cd\ in den Stammordner von Laufwerk C.
  4. Wechseln Sie mit dem Kommando 'cd xpdf' in den Ordner, in dem sich das Programm PDFToText befindet.
  5. Geben Sie den Befehl für die Textumwandlung durch eingabe von 'PDFToText -layout [PDF-Datei]' ein, wobei Sie '[PDF-Datei]' durch den Namen des zu konvertierenden Dokumentes ersetzen.
  6. Reagieren Sie angemessen auf eventuelle Fehlermeldungen oder überprüfen Sie im Falle einer erfolgreichen Konvertierung die Qualität der entstandenen Textdatei."