4

ここで EPS ファイルを操作するためのライブラリをダウンロードしました。

そして、EPS ファイルを解析するコードを書きました。

EPSImageReaderSPI spi = new EPSImageReaderSPI();
EPSImageReader eps = new EPSImageReader(spi);

File file = new File("file.eps");
InputStream in = null;
try {
    in = new FileInputStream(file);
} catch (FileNotFoundException e) {
    e.printStackTrace();  
}
ImageInputStream iis = null;
iis = ImageIO.createImageInputStream(in);
eps.setInput(iis);
eps.getHeight(0);

私のコードがクラッシュし、次のように言っています。

スレッド「メイン」の例外 javax.imageio.IIOException: データ型 -1 は Main.main(Main .java:39) で sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) で sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) で sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) で java. lang.reflect.Method.invoke(Method.java:597) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)

助けてください。

更新しました:

jmagickをインストールしようとすると、コマンドを実行すると:

./configure --with-java-home=/System/Library/Frameworks/JavaVM.framework/Versions/Current --with-magick-home=/usr/local/Cellar/imagemagick/6.8.0-10 --with-magick-inc-dir=/usr/local/Cellar/imagemagick/6.8.0-10/include

このエラーを取得します。

MagickCore-config をチェックしています... /usr/local/Cellar/imagemagick/6.8.0-10/bin/MagickCore-config /usr/local/Cellar/imagemagick/6.8.0-10/bin/MagickCore-config: 行50: pkg-config: コマンドが見つかりません /usr/local/Cellar/imagemagick/6.8.0-10/bin/MagickCore-config: 53 行目: pkg-config: コマンドが見つかりません /usr/local/Cellar/imagemagick/6.8 .0-10/bin/MagickCore-config: 47 行目: pkg-config: コマンドが見つかりませんmagick/api.h の使用可能性をチェックしています... magick/api.h の存在をチェックしていません... magick/api.h をチェックしていません... 構成なし: エラー: ImageMagick ヘッダー ファイルが見つかりません


更新しました:

私が直す!コマンドを次のように変更するだけです。

./configure --with-java-home=/System/Library/Frameworks/JavaVM.framework/Versions/Current --with-magick-home=/usr/local/Cellar/imagemagick/6.8.0-10 --with-magick-inc-dir=/usr/local/Cellar/imagemagick/6.8.0-10/include/ImageMagick/

それから私は試しました:

make all

そしてエラーを取得します:

make 1 : ディレクトリに入る/Users/olegsuzaev/jmagick-6.4.0/src'make[2]: Entering directory/Users/olegsuzaev/jmagick-6.4.0/src/magick'../../Make.rules:175: * セパレーターがありません。止まる。make[2]: ディレクトリ/Users/olegsuzaev/jmagick-6.4.0/src/magick' make[1]: *** [dir_target] Error 2 make[1]: Leaving directory/Users/olegsuzaev/jmagick-6.4.0/src を離れます make: * [dir_target] エラー 2

誰かが新しいエラーを助けることができますか?

4

1 に答える 1

2

このコードの作成者に連絡するか、コードを自分で調べて、この例外が発生している理由を理解することをお勧めします。

別の方法として、Javaで利用できるEPSAPIがいくつかあるようです。ここにいくつかあります:

また、ImageMagick(Cライブラリ)はEPSを読み取るためのEPSをサポートしており、JavaからImageMagickへのアクセスを可能にするJMagickと呼ばれるImageMagickのJNIラッパーがあります。

于 2013-02-10T23:53:04.420 に答える