使用 ImageMagick.NET 在代码中控制图像设置(相当于命令行定义的代码)

Controlling image setting in code using ImageMagick.NET (code equivalent to command line -define)

我正在使用 ImageMagick.Net 写图像。我正在尝试控制输出图像中的某些设置。我不知道如何从代码修改这些设置,尽管它们在 ImageMagick 命令行中可用 (ImageMagick defines)。

我特别感兴趣的是修改“预测器”设置,当使用“Deflate”方法压缩图像时,该设置默认为 3。

示例代码:

        var collection = new MagickImageCollection(args[0]);
        IWriteDefines tiffWriteDefines= new TiffWriteDefines()
        {
            PreserveCompression = true
        };
        collection.Write(@"d:\outImage.tiff", tiffWriteDefines);

这些设置是通过指定

从命令行控制的

Magick image.tif -define tiff:predictor=1

经过一番努力,我找到了答案: 要修改此设置,您应该检查集合中的每个图像,然后:

foreach (var image in imageCollection)
{
    image.Settings.SetDefine(MagickFormat.Tiff, "predictor", "1");
}

这解决了我的问题。