Bra*_*rad 5 c++ svg imagemagick image-processing magick++
抱歉,如果标题没有任何意义。
目前,imagemagick 转换实用程序上的以下参数非常适合我的需要。我正在尝试获取 .svg 文件,将其放大并将其写入为 png 文件。
convert -density 36 home.svg home_1.png
Run Code Online (Sandbox Code Playgroud)
不幸的是,我需要使用 Magick++(ImageMagick 的 C++ 接口/API),但我似乎无法在 Magick++ 中获得等效的操作。
有没有 ImageMagick 专业人士可以帮助我解决这个问题?
我当前的代码是:
image.density(Geometry(36,36));
image.read( "Character.svg" );
image.write( "xx.png" );
Run Code Online (Sandbox Code Playgroud)
我尝试过移动image.density()该部分,但我的图像永远不会改变。它只是被光栅化并保存为 png 格式。
我不是 ImageMagick 专业人士,但是当我尝试这段代码时:
#include <Magick++.h>
int main(int argc, char **argv) {
Magick::Image img;
img.density(Magick::Geometry(36,36));
img.read(argv[1]);
img.write(argv[2]);
img.density(Magick::Geometry(72,72));
img.read(argv[1]);
img.write(argv[3]);
}
Run Code Online (Sandbox Code Playgroud)
使用此 SVG 文件,例如:
$ ./resize example.svg out_small.png out_large.png
Run Code Online (Sandbox Code Playgroud)
...文件out_small.png为 300x300 像素,而文件out_large.png为 600x600 像素。
这是通过 cygwin 在 Windows 7 上进行的。