[英]Decode svg from memory ImageMagick
如何從緩沖區解碼 svg 圖像? 我知道 SVG 只是文本,但除了從磁盤讀取之外,我不知道如何將它們解析為 Magick::Image。
#include <Magick++.h>
#include <stdio.h>
using namespace Magick;
int main() {
printf("EnableOpenCL ret: %d\n", Magick::EnableOpenCL());
Magick::Image svgImage;
svgImage.read("input.svg"); // first read file
svgImage.magick("png"); // then specify PNG format
svgImage.write("output.png");
return 0;
}
您可以將緩沖區復制到 Magick++ 的Magick::Blob
中並將其傳遞給Magick::Image
構造函數。
Magick::Blob svgData(memory_ptr, memory_length);
Magick::Image svgImage(svgData, svgRenderSize, "SVG");
其中memory_ptr
是 memory 中 svg 數據的地址, memory_length
是svgRenderSize
memory_ptr
Magick::Geometry
實例的圖像大小。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.