ImageMagick“转换”实用Magick ++等价? [英] ImageMagick "convert" utility Magick++ equivalent?

查看:186
本文介绍了ImageMagick“转换”实用Magick ++等价?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

很抱歉,如果标题没有任何意义。

Sorry if the title didn't make any sense.

目前,imagemagick转换实用程序上的以下参数非常适合我的需要。我想带一个.svg文件,把它变大并把它写成一个png文件。

Currently, the following parameters on the imagemagick convert utility are perfect for what I need. I'm tring to take an .svg file, make it larger and write it as a png file.

 convert -density 36  home.svg  home_1.png

不幸的是,我需要使用Magick ++(C ++接口/ API for ImageMagick),但我似乎无法在Magick ++中获得相同的操作。

Unfortunately, I need to be using Magick++ (the C++ Interface/API for ImageMagick), but I can't seem to get the equivalent operation in Magick++.

是否有任何ImageMagick专业人员可以帮助我解决这个问题?

Are there any ImageMagick pros that would be able to help me out on this?

我目前的代码是:

image.density(Geometry(36,36));

    image.read( "Character.svg" );

    image.write( "xx.png" ); 

我试过移动 image.density()部分,但我的形象永远不会改变。它只是栅格化并保存为png。

I've tried moving the image.density() part around, but my image is never changes. It's simply rasterized and saved as a png.

推荐答案

我不是ImageMagick专业版,但是当我尝试这段代码时:

I'm no ImageMagick pro, but when I tried this code:

#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]);
}

此SVG文件,例如:

$ ./resize example.svg out_small.png out_large.png

...文件 out_small.png 为300x300像素,而 out_large.png 为600x600像素。

...the file out_small.png was 300x300 pixels, whereas out_large.png was 600x600 pixels.

这是在Windows 7上通过cygwin。

This was on Windows 7 via cygwin.

这篇关于ImageMagick“转换”实用Magick ++等价?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆