我正在为Linux Server中的应用程序运行PostScript到PDF转换服务。我已经安装了ghostscript版本8.70。我正在使用gsdll64.dll和ghostscript 9.26在Windows中测试代码,并且工作正常。
我在pom文件中添加了jna 4.1.0和ghost4j 1.0.1依赖项。
运行程序时,出现以下错误:
Caused by: org.ghost4j.GhostscriptException: Cannot initialize Ghostscript interpreter. Error code is -100
at org.ghost4j.Ghostscript.initialize(Ghostscript.java:365)
at org.ghost4j.converter.PDFConverter.run(PDFConverter.java:231)
我的代码如下所示:
InputStream iis = null;
ByteArrayOutputStream bos = null;
try {
//load the bytes data into the inputstream
iis = new ByteArrayInputStream(psBytes);
//create the byte array output stream
bos = new ByteArrayOutputStream();
//load PostScript bytes through input stream
PSDocument document = new PSDocument();
document.load(iis);
//create converter
PDFConverter converter = new PDFConverter();
//set options
converter.setPDFSettings(PDFConverter.OPTION_PDFSETTINGS_PREPRESS);
converter.convert(document, bos);
return bos.toByteArray();
}catch (org.ghost4j.document.DocumentException de){
String[] errArg = {de.getMessage()};
throw new ApplicationException(ErrorCode.XXXXX, errArg);
}
最佳答案
因此,您不是在使用Ghostscript,而是在使用Ghost4j。您的第一步应该是从命令行初始化Ghostscript本身。只需执行“ gs”,看看会发生什么。
错误-100只是意味着“发生了致命的事情”,我对Ghost4j并不熟悉,但是大概有某种方法可以查看stdout和stderr发生了什么,在这些通道上发回了什么消息?
关于java - PS到PDF的转换。 GhostScript异常-无法初始化Ghostscript解释器。错误代码是-100,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55482964/