カラー インデックス付きの TIFF 画像 (8 ビット) があり、それを RGB 24 ビット画像 (インデックスなし) に変換したいと考えています。それを行う方法は何ですか?
私はJMagickを使用しています。奇妙なことに、次を使用すると、グレースケールのインデックス付き 8 ビット画像で問題なく動作します。
image.transformRgbImage(info.getColorspace());
画像はインデックス化されていませんが、その後も 8 ビットのままである場合でも、グレースケールであり、実際には 8 ビットである必要があるため、これは幸運なことです。奇妙なことは、transformRgbImage() がそれを実行することですが、イメージを 24 ビットのものに変換することを期待しています。ともかく...
同じ方法は、カラー インデックス付きの 8 ビット イメージでは機能しません。その目標を達成するために JMagick API を使用する方法がわかりません。設定してみました:
image.setDepth(24);
また:
info.setDepth(24);
ただし、どちらも EXCEPTION_ACCESS_VIOLATION になります。私が設定したとき:
info.setDepth(32);
例外は発生しません。1) ただし、画像は 32 ビットであってはなりませんが、2) すべて黒 (1 つの一意の色) です。setDepth(24) でこのような例外が発生するのはなぜですか?? どうすればいいですか?
よろしくお願いします。