C#在不增加文件大小2-3x的情况下合并tiff文件



我需要将单个tiff文件合并为一个文件。网上有很多看起来很相似的例子,比如这一个将多个多页tiff图像合并到一个tiff C#中。

问题是,所有这些解决方案的文件大小都是单个单页文件的两倍或三倍。

我只尝试了一个在线tiff合并工具,但文件大小没有增加,所以我知道这是可能的。

有人知道如何在c#代码中降低文件大小吗?

这是我使用的代码。

Bitmap firstImage = new Bitmap(images[0].bitmap);
encoder = System.Drawing.Imaging.Encoder.SaveFlag;
encoderInfo = ImageCodecInfo.GetImageEncoders()[3];
encoderParameters = new EncoderParameters(1); //(2)
encoderParameters.Param[0] = new EncoderParameter(encoder, (long)EncoderValue.MultiFrame);
// encoderParameters.Param[1] = new EncoderParameter(Encoder.Compression, (long)EncoderValue.CompressionCCITT4);
firstImage.Save(path, encoderInfo, encoderParameters);

encoderParameters.Param[0] = new EncoderParameter(encoder, (long)EncoderValue.FrameDimensionPage);
// Add the remaining images to the tiff
for (int i = 1; i < images.Count; i++)
{
firstImage.SaveAdd(images[i].bitmap, encoderParameters);
}
// Close out the file
encoderParameters.Param[0] = new EncoderParameter(encoder, (long)EncoderValue.Flush);
firstImage.SaveAdd(encoderParameters);

找到答案:(需要添加

ep.Param[1]=新编码器参数(System.Drawing.Imaging.Encoder.Compression,(long(EncoderValue.Compression CCITT4(

最新更新