我正在运行以下代码,使用Ghost4j从pdf创建bmp图像
我有一个由GhostScript生成器执行的commad,用于从pdf生成页面的Bmp图像。 代码是:
package ghost;
import net.sf.ghost4j.Ghostscript;
import net.sf.ghost4j.GhostscriptException;
public class GhostDemo {
public static void main(String[] a){
Ghostscript gs = Ghostscript.getInstance(); //create gs instance
String[] gsArgs = new String[10];/*command string array*/
gsArgs[0] = "-dUseCropBox";/*use crop box*/
gsArgs[1] = "-dNOPAUSE";
gsArgs[2] = "-dBATCH";
gsArgs[3] = "-dSAFER";
gsArgs[3] = "-r300";
gsArgs[4] = "-sDEVICE=bmp16m";
gsArgs[6] = "-dTextAlphaBits=4";
gsArgs[5] = "-sOutputFile=C:/PagesWorkspace/1/masterData/1.bmp";/*bmp file location with name*/
gsArgs[6] = "C:/MasterWorkspace/pipeline.pdf";/*pdf location with name*/
try {
gs.initialize(gsArgs); /*initialise ghost interpreter*/
gs.exit();
} catch (GhostscriptException e) {
e.printStackTrace();
}
}
}
我得到了例外
Exception in thread "main" java.lang.UnsatisfiedLinkError: Unable to load library 'gsdll32': The specified module could not be found.
at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:145)
at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:188)
at com.sun.jna.Library$Handler.<init>(Library.java:123)
at com.sun.jna.Native.loadLibrary(Native.java:255)
at com.sun.jna.Native.loadLibrary(Native.java:241)
at net.sf.ghost4j.GhostscriptLibraryLoader.loadLibrary(GhostscriptLibraryLoader.java:36)
at net.sf.ghost4j.GhostscriptLibrary.<clinit>(GhostscriptLibrary.java:32)
at net.sf.ghost4j.Ghostscript.initialize(Ghostscript.java:292)
at ghost.GhostDemo.main(GhostDemo.java:22)
任何人都可以告诉我为什么我会得到这个例外吗?
答案 0 :(得分:12)
你是否安装了Ghostscript?
gsdll32.dll
?如果没有,download the Ghostscript installer for Win32并运行它。安装后,目录gsdll32.dll
%your_install_dir%\gs\gs9.05\bin\
答案 1 :(得分:6)
在eclipse项目中粘贴dll文件使我的程序正常工作!
答案 2 :(得分:2)
对于SO社区,要检查此错误的另一件事是您使用的是32位Java。如果您的Java实例是64位,您将得到完全相同的消息:
Unable to load library 'gsdll32': The specified module could not be found.
即使 指向正确的dll,也没有任何进一步的解释。