3

我正在尝试在 C# 中使用 Magick.NET 实现一个功能。

以前我使用的是:-

// Convert to a png.
Process p = new Process();

p.StartInfo.FileName = @"C:\Program Files\ImageMagick-6.2.8-Q16\convert.exe";
p.StartInfo.Arguments = "-scale 60% \"" + svg + "\" \"" + png + "\"";
p.StartInfo.CreateNoWindow = true;

p.Start();

p.WaitForExit();

TransmitFile(context, png);

我想不必在服务器上存储 convert.exe .....现在我想使用一些将在代码中并且不需要引用服务器上的可执行文件的东西:-

// Pseudo-code:-
MagickImage img = new MagicImage();
Image.Add(svg);
Image.Format = MagickFormat.png;
Image.Scale = 60%;

但是我找不到足够的文档来实现我之前使用的相同功能。有没有适当文件的地方?我用谷歌搜索了很多,没有成功。

4

1 回答 1

7

这里有一些关于如何使用 Magick.NET 的示例。

可以在此处找到如何将一张图像转换为另一张图像的示例。但是没有例子-scale 60%

命令行中的大多数选项在 MagickImage 类中具有相同的名称。您的命令convert input.svg -scale 60% output.png转换为:

using (MagickImage image = new MagickImage("input.svg"))
{
  image.Scale(new Percentage(60));
  image.Write("output.png");
}
于 2015-08-05T09:54:08.773 回答