2016-03-20 6 views
0

Ich versuche PDFs in Textdateien zu konvertieren. ich diesen Befehl verwenden, um die Konvertierung durchführen:Ghostscript Textwriter beibehalten Leerzeilen

gs -dBATCH -dNOPAUSE -sDEVICE=txtwrite -sOutputFile=output.txt input.pdf 

Ghostscript-Version ist 9.07.

Ich bekomme den gesamten Text im PDF angezeigt. Ich möchte die Leerzeilen in der Textdatei wenn möglich beibehalten.

Dank

+0

Normalerweise hat ein PDF * * keine Leerzeilen. Selbst die Vorstellung einer "Linie" ist ziemlich breit - die Spezifikationen ermöglichen es, dass eine Textsequenz auf einer einzelnen Zeile ausgegeben wird, aber es erlaubt auch "beliebige" x- und y-Positionen für jeden Text. Für ein solches Ziel müssen Sie die y-Position jeder "Linie" vergleichen und entscheiden, ob die Entfernung weit genug auseinander liegt, um als "leer" zu zählen. – usr2564301

Antwort

1

Sie aktualisieren sollten, ist die aktuelle Version von Ghostscript 9.18 und 9.19 wird in Kürze veröffentlicht werden. Jede der vorläufigen Versionen enthält Korrekturen für das txtwrite-Gerät.

Obwohl es stimmt, dass PDF-Dateien keine Leerzeilen enthalten, verfügt das txtwrite-Gerät über einen Modus, in dem es versucht, eine angemessene Darstellung des ursprünglichen Layouts durch Leerzeichen und Leerzeilen in einer Textdatei zu erzeugen.

Dies ist die Standardaktion in der aktuellen Version von txtwrite, Sie sollten diese also bereits erhalten, es sei denn, Sie haben ein anderes TextFormat ausgewählt.

Dieser Modus ist sehr heuristisch, leicht zu täuschen, verträgt sich nicht gut mit hochgestellten, tiefgestellten, signifikanten Punktgrößenänderungen und möglicherweise anderen Attributen, die das Layout schwierig zu reproduzieren machen. Offensichtlich, ohne Ihre Eingabedatei zu sehen, kann ich Ihnen nichts mehr sagen.