C# 如何将imageMagick与C结合使用
你能解释一下我如何用C语言来使用ImageMagick吗。我正在尝试将PDF转换为图像页面 我想运行imageMagick命令convert-density 300$input.pdf$output.pngC# 如何将imageMagick与C结合使用,c#,image,pdf,imagemagick,C#,Image,Pdf,Imagemagick,你能解释一下我如何用C语言来使用ImageMagick吗。我正在尝试将PDF转换为图像页面 我想运行imageMagick命令convert-density 300$input.pdf$output.png string arguments = string.Format(@"-density 300 {0}.pdf {1}.png", intputFileName, outputFileName"); var startInfo = new ProcessStartInfo { Arg
string arguments = string.Format(@"-density 300 {0}.pdf {1}.png", intputFileName, outputFileName");
var startInfo = new ProcessStartInfo {
Arguments = arguments,
Filename = @"C:\path\to\imagick\convert.exe"
};
Process.Start(startInfo).WaitForExit();
参考资料:
最好使用Magick.NET,无需在客户端安装ImageMagick:
Magic.Net是一个用于流行的库ImageMagick的C端口。使用url中的Nuget包安装Magick.Net。请注意,Magick.Net有许多版本,因此请根据需要进行选择。通过这种方式,您可以使用C。请参阅下面的代码 注意,它将垂直附加图像。类似地,可以水平追加
using ImageMagick;
string inputPdf= @"C:\my docs\input.pdf";
string outputPng= @"C:\my docs\output.png";
using (MagickImageCollection images = new MagickImageCollection())
{
images.Read(inputPdf);
using (IMagickImage vertical = images.AppendVertically())
{
vertical.Format = MagickFormat.Png;
vertical.Density = new Density(300);
vertical.Write(outputPng);
}
}
塔克斯。有没有办法隐藏命令提示符停止弹出命令提示符?再次感谢。非常有帮助!如果您需要隐藏控制台,请查找hstart工具。请尝试startInfo.CreateNoWindow=truestartInfo.UseShellExecute=false;这个有效,谢谢!感谢你1000次:这种方法的问题是Magick.NET需要GhostScript将PDF转换为图像,这不是免费的。这很奇怪,因为从命令行简单地使用ImageMagick不需要Ghostscript将pdf转换为图像。