0
我有一個base64編碼數據。例如data:image/png;base64,R0lGODlhIA...
,我想用Magick ++將它轉換成PNG。這是我的代碼:如何將base64-encode圖像轉換爲imagemagick中的PNG圖像?
std::string data = "data:image/png;base64,R0lGODlhIA...";
std::string output; //this is the output PNG data
Magick::Blob input_blob((void*) data.c_str(), data.length());
Magick::Image input_image;
input_image.magick("INLINE");
input_image.read(input_blob);
Magick::Blob output_blob;
input_image.write(&output_blob, "PNG");
output.assign((char*) output_blob.data(), output_blob.length());
代碼工作,但是當以base64編碼的數據是非常大的,代碼行input_image.read(input_blob);
會崩潰。
誰能告訴我代碼是否正確或如何將base64編碼數據轉換爲magick ++中的PNG?
任何幫助表示讚賞!
Th謝謝你,我使用第一種方法,它的工作原理。 – jseanj