繁体   English   中英

Magick ++无法从博客加载

[英]Magick++ not loading from blog

我正在使用Magick ++加载一些图像。 因为我要为所有图像加载包装PhysFS,所以我需要通过blob(而不是文件路径)加载图像。

这段代码:

    Magick::Image test("path/to/some.png");

没有问题的作品。

但是,一旦我做一个blob,我就会得到一个例外:

    PhysFS::ifstream img ("path/to/some.png");
    Magick::Blob blob( img.rdbuf(), img.length() );
    Magick::Image test(blob);

引发的异常是:

以类型为Magick :: ErrorMissingDelegate的未捕获异常终止,此图像格式为''@ error / blob.c / BlobToImage / 350,没有解码委托

我已验证Blob与文件大小相同。 因此,我确定它正在将其读入内存。

我尝试使用标准库ifstream以及设置std :: ios :: binary,但问题仍然存在。

Magick :: Blob作为构造函数需要一个void *,换句话说,就是一个用于读取数据的内存位置。 但是,您提供了指向std :: filebuf对象的指针,该指针不起作用。 您将不得不将文件读入内存。 例如,一个char *并在Blob构造函数中使用它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM