C# 将2页.tif文件转换为.jpg

C# 将2页.tif文件转换为.jpg,c#,imagemagick,c#-2.0,magick.net,C#,Imagemagick,C# 2.0,Magick.net,转换/读取2页.tif文件时出错。正确的方法是什么 以下是错误: ImageMagick.MagickCoderErrorException: Magick: C:\DigitalAssets\sample.TIF: Null count for "Tag 33426" (type 4, writecount -3, passcount 1). `_TIFFVSetField' @ error/tiff.c/TIFFErrors/561 at ImageMagick.MagickImag

转换/读取2页.tif文件时出错。正确的方法是什么

以下是错误:

ImageMagick.MagickCoderErrorException: Magick: C:\DigitalAssets\sample.TIF: Null count for "Tag 33426" (type 4, writecount -3, passcount 1). `_TIFFVSetField' @ error/tiff.c/TIFFErrors/561
   at ImageMagick.MagickImage.HandleReadException(MagickException exception)
   at ImageMagick.MagickImage.Read(String fileName, MagickReadSettings readSettings)
   at Digital_Asset_Converter_Service.Service.EPSFolderWatcher_Created(Object sender, FileSystemEventArgs e)
代码如下:

string fileName = @"C:\DigitalAssets\sample.tif";
using (MagickImageCollection image = new MagickImageCollection())
    {
        MagickReadSettings settings = new MagickReadSettings();
        // settings.ColorSpace = ColorSpace.RGB;
        settings.Density = new MagickGeometry(300, 300);
        //settings.FrameIndex = 0;
        // settings.FrameCount = 1;

        image.Read(fileName,settings);
    }

您的图像包含损坏的tiff标记,导致MagickCoderErrorException。我们对ImageMagick进行了更改,允许您忽略特定的tiff标记。以下是防止MagickCoderErrorException的示例:

using (MagickImage image = new MagickImage())
{
  image.SetDefine(MagickFormat.Tiff, "ignore-tags", "33426");
  // Or if you want to ignore multiple tags:
  image.SetDefine(MagickFormat.Tiff, "ignore-tags", "33426,33428");

  MagickReadSettings settings = new MagickReadSettings();
  // settings.ColorSpace = ColorSpace.RGB;
  settings.Density = new MagickGeometry(300, 300);

  image.Read(fileName, settings);
}