1

デコードされたRGBAデータ(32ビットPNGから)をcl :: Image2Dに配置し、(何らかの処理の後)enqueueReadImage()を使用してMagick++イメージに書き戻す必要があります。

ただし、現時点では、Magick++画像オブジェクトでRGBAデータに直接アクセスする方法はありません。これは可能ですか?そうでない場合、Magick ++オブジェクトからRGBA形式のデータを取得するための最良の方法は何ですか?

4

1 に答える 1

3

Magick :: Image::write関数を使用できます

Magick::Image im;
// read image ....

// only for RGBA !!!
size_t im_size = im.columns() * im.rows() * 4;
uint8_t * pixels = new uint8_t[im_size];
im.write(0, 0, im.columns(), im.rows(), "RGBA", ::Magick::CharPixel, pixels);
于 2012-10-25T14:34:13.740 に答える