2016-03-20 37 views
0

我试图将pdf转换为文本文件。 我使用该命令来执行转换:Ghostscript textwriter保留空行

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

Ghostscript的版本是9.07。

我得到了PDF中显示的所有文本。如果可能的话,我想保留文本文件中的空白行。

感谢

+0

通常,PDF *有*无空行。即使是“线条”的概念也相当广泛 - 规范允许在单行上发布一系列文本,但它也允许任何文本的“任意”x和y位置。为了这样一个目标,你必须比较每条'线'的y位置,并决定这个距离是否足够分开以计为“空白”。 – usr2564301

回答

1

你应该升级的Ghostscript的最新版本是9.18和9.19很快将发布。每个临时版本都包含对txtwrite设备的修复。

尽管PDF文件不包含空白行,但txtwrite设备确实有一种模式,它将尝试通过在文本文件中使用空格和空行来产生原始布局的合理表示。

这是txtwrite当前版本中的默认操作,所以您应该已经获得此操作,除非您选择了不同的TextFormat。

此模式具有很强的启发性,容易被愚弄,不能很好地处理上标,下标,重要的点大小变化以及可能使布局难以重现的其他属性。显然,没有看到你的输入文件,我没有什么可以告诉你的。