将.ps文件转换为.txt(俄语)

问题描述 投票:0回答:1

我正在虚拟打印机上的项目上工作,我想将ps文件转换为txt和pdf。我正在使用ps2pdf并将其很好地转换为pdf,但是当我要将ps文件转换为txt时,我使用ps2ascii,然后出现问题。 ps文件包含俄语符号。如何将ps文件转换为txt(俄语)?我在网上阅读到这是unicode问题。

utf-8 postscript converters cyrillic virtual-printer
1个回答
0
投票

ps2ascii仅处理ASCII(线索显然是名称)。 ps2ascii外壳程序脚本和PostScript程序在一段时间前已从标准Ghostscript源代码树中删除,因为它太受限制并且有更好的选择。

使用PostScript的问题在于,无法保证将用于渲染文本的字符代码与Unicode或任何其他标准文本编码相关联的方法。 PostScript是一种用于打印而非编辑的语言。

可能很幸运,它完全取决于您生成的PostScript程序使用的字体和Encoding / CMap。我注意到您在谈论的是“虚拟打印机”,这是Windows上的吗?如果这样,您可能很幸运,当Windows PostScript打印机驱动程序将某些字体嵌入PostScript程序中时,它们会向至少某些字体添加额外的(完全非标准)信息。此附加信息可用于检索Unicode代码点。

我将从PostScript上尝试从Ghostscript尝试txtwrite设备(并且您应该直接使用Ghostscript而不是使用预烘焙的脚本),然后查看它是否能够提取文本。

[否则,请尝试从PostScript创建PDF文件,然后在PDF文件上使用txtwrite设备。我不确定txtwrite设备是否具有pdfwrite设备的所有功能,它可能无法直接使用字体中的Unicode信息,但可以从PDF文件中使用它。

[我可能也应该指示您阅读Ghostscript的许可证,其AGPL版本3,只是为了避免最终浪费时间,然后发现由于法律原因您不能使用它。

[编辑]

快速检查后,似乎我们删除了ps2ascii PostScript程序,但更改了ps2ascii脚本以改用txtwrite设备。因此,如果您使用的是最新版本的Ghostscript,那就会发生这种情况。如果那不能产生可接受的文本,请尝试创建PDF文件并在其上运行ps2ascii。如果这不起作用,那么很可能您根本无法做您想做的事,那么信息在打印过程中就消失了。

如果您使示例PostScript文件无法使用,我可以肯定地说。

© www.soinside.com 2019 - 2024. All rights reserved.