PCL格式PRN文件转PS/PDF失败求助:GhostPCL转换出乱码
解决PCL格式PRN文件转PS/PDF乱码的问题
我来帮你搞定这个转换乱码的问题!结合你提到的测试文件信息——用GhostPCL 9.23转出来是乱码,但在线用9.19能生成正确PDF——这里有几个针对性的解决思路:
1. 降级到GhostPCL 9.19版本
这应该是最直接的解决方案,因为你已经验证过9.19能正确处理你的PRN文件。新版本9.23可能对某些特定PCL格式的支持出现了回归问题(也就是旧版本能处理的内容,新版本反而不行)。
你可以下载Win64版本的GhostPCL 9.19,然后用你之前的命令重新测试:
gpcl6win64.exe -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile="c:\output.pdf" "c:\input.prn"
或者转PS的命令:
gpcl6win64.exe -dNOPAUSE -sDEVICE=ps2write -sOutputFile="c:\output.ps" "c:\input.prn"
应该就能得到和在线转换器一样的正确结果了。
2. 调整GhostPCL的解析参数
如果不想降级,你可以试试给命令添加一些兼容性参数,让9.23能正确识别你的PCL文件:
- 添加
-dPCLCOMPATIBILITYLEVEL=5:强制使用PCL 5兼容模式,很多旧PRN文件是基于PCL 5生成的 - 添加
-dSAFER:启用安全模式,有时候能避免解析时的异常行为
修改后的命令示例:
gpcl6win64.exe -dNOPAUSE -dSAFER -dPCLCOMPATIBILITYLEVEL=5 -sDEVICE=pdfwrite -sOutputFile="c:\output.pdf" "c:\input.prn"
3. 强制解析为PCL XL格式
如果你的PRN文件是PCL XL(也就是PCL 6)格式,GhostPCL 9.23可能默认的解析模式不对,你可以添加 -dPCLXL 参数强制按PCL XL解析:
gpcl6win64.exe -dNOPAUSE -dPCLXL -sDEVICE=pdfwrite -sOutputFile="c:\output.pdf" "c:\input.prn"
额外建议
如果降级版本能解决问题,说明这是GhostPCL 9.23的一个bug,你可以去Ghostscript的官方社区提交这个问题,附上你的测试文件,帮助开发者修复这个回归问题。
内容的提问来源于stack exchange,提问作者Tomas
相关产品推荐
相关产品推荐

