как использовать imageMagick с C#

не могли бы вы объяснить как я могу использовать ImageMagick с C# . Я пытаюсь преобразовать PDF в страницы в изображения.

Я хочу запустить команду imageMagick " convert-density 300 $input.pdf $выход.png"

3 ответов


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 на клиентах: http://magick.codeplex.com/


Magic.Net является портом C# для популярной библиотеки ImageMagick. Установите Magick.Net используя NuGet-пакет с URL-адресом https://www.nuget.org/packages/Magick.NET-Q16-AnyCPU/ . Обратите внимание, что существует множество версий 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);
        }
}