1

我继承了一些接受 TIFF 文件并将其保存的代码,也是 TIFF 格式,但带有压缩。该代码使用System.Drawing.Imaging命名空间中的类(而不是 say System.Windows.Media)。

我了解获取压缩编码器,设置编码器参数等。但是我对下面的片段感到困惑。将原始图像保存为MemoryStreamBMP 格式,然后从 BMP 格式图像生成输出 TIFF:

using (var memStream = new MemoryStream())
{
    image.Save(memStream, ImageFormat.Bmp);
    memStream.Seek(0L, SeekOrigin.Begin);

    using (var bmpImage = Image.FromStream(memStream))
    {
        bmpImage.Save(outputFile, tiffEncoder, encoderParams);
    }
}

生成中间 BMP 格式图像并将其用作输出 TIFF 的基础的原因是什么?

更新:有问题的图像是线条艺术 - 即黑白 - 并且使用的压缩是“CC4”(CCITT Group 4)。
我想如果输入是 BMP 格式,CC4 压缩可能会更有效。但我认为从 TIFF 到 BMP 的中间转换会损失一些效率......

4

0 回答 0