2012-06-16 1 views
5

Я бегу следующий код для создания BMP изображения из PDF с помощью Ghost4jНевозможно загрузить библиотеку «gsdll32»

У меня есть commad, который выполняется с помощью генератора GhostScript для генерации Bmp изображение страницы из PDF. Кодекс:

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) 

Может ли один скажите мне, почему я получаю это исключение?

ответ

12

У вас установлен Ghostscript?

  • Если да, то какая версия?
  • Если да, то в каком месте?
  • Включает ли он файл gsdll32.dll?

Если нет, то download the Ghostscript installer for Win32 и запустите его. После установки должен быть файл gsdll32.dll в каталоге %your_install_dir%\gs\gs9.05\bin\

+1

работаю нормально после того, как я скопировал эту dll в папку Windows/system32 – MeqDotNet

+0

, где можно найти '.dll' для 64-битного? – mmcrae

6

Вставка файла dll в проект eclipse сделала мою программу работы!

2

Для сообщества SO еще одна вещь, с которой нужно проверить эту ошибку, заключается в том, что вы используете 32-разрядную Java. Если ваш экземпляр Java является 64-битным, вы получите точно такое же сообщение:

Unable to load library 'gsdll32': The specified module could not be found.

без каких-либо дальнейших объяснений, даже если вы являются указывающим на правильный DLL.