本文整理汇总了C++中magick::Blob::updateNoCopy方法的典型用法代码示例。如果您正苦于以下问题:C++ Blob::updateNoCopy方法的具体用法?C++ Blob::updateNoCopy怎么用?C++ Blob::updateNoCopy使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类magick::Blob
的用法示例。
在下文中一共展示了Blob::updateNoCopy方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: updateNoCopy_wrapper
void updateNoCopy_wrapper(Magick::Blob& blob, std::string& data) {
std::string str;
char* w = new char[data.size() + 1];
std::copy(str.begin(), str.end(), w);
w[str.size()] = '\0';
blob.updateNoCopy(w,data.size(),Magick::Blob::NewAllocator);
}
示例2: load
ImagePtr MagickImageLoader::load(std::istream& stream) {
if (stream.fail())
throw Exception("[MagickImageLoader::load] invalid stream given");
long int stream_size = streamSize(stream);
if (stream_size < 1)
throw Exception("[MagickImageLoader::load] empty stream given");
boost::scoped_array<char> tmp(new char[stream_size]);
Magick::Blob blob;
blob.updateNoCopy(tmp.get(), stream_size);
try {
Magick::Image image;
image.density("10");
image.ping(blob);
convertImageDpi(image);
image.read(blob);
return load(image);
} catch (Magick::Exception &e) {
cfError(MODULE_RDIB) << e.what();
throw Exception("[MagickImageLoader::load] failed");
}
}