C# TIF压缩CCITT4
我正在尝试用CCITT4压缩tiff文件。原始大小为101 KB,运行后大小稍微减小98 KB。我的限制大小为50 KB,如何使大小低于我的限制?代码如下 我的极限;C# TIF压缩CCITT4,c#,compression,tiff,image-compression,C#,Compression,Tiff,Image Compression,我正在尝试用CCITT4压缩tiff文件。原始大小为101 KB,运行后大小稍微减小98 KB。我的限制大小为50 KB,如何使大小低于我的限制?代码如下 我的极限; 大小由于源图像似乎是彩色图像(恰好看起来像黑白),并且其尺寸需要调整为最大值,因此您需要: 按比例重新定义源图像的大小,设置转换图像需要遵守的最大宽度和高度限制 将图像转换为1bpp索引的格式:该方法提供了定义源图像新大小和设置特定大小的方法(PixelFormat.format1bppinged,在本例中)。内部转换方法相当好,
大小由于源图像似乎是彩色图像(恰好看起来像黑白),并且其尺寸需要调整为最大值,因此您需要:
1bpp索引的
格式:该方法提供了定义源图像新大小和设置特定大小的方法(PixelFormat.format1bppinged
,在本例中)。内部转换方法相当好,得到的图像质量通常是一个很好的折衷方案李>
100
)。如果最终图像字节数不符合要求(50KB
),则可以重复该过程MemoryStream
以供进一步处理94600
字节减少到6786
字节,质量最高
File.WriteAllBytes("[Image Path].tiff", imageStream.ToArray());
converttobTiffImageStream()
方法可称为:
var maximumWidthAndHeight = new Size(1024, 768);
int quality = 100;
var compression = EncoderValue.CompressionCCITT4;
var imageStream = ConvertToBWTiffImageStream(sourceImage, maximumWidthAndHeight, quality, compression);
请注意,MaximumWidth和Height
指定最大宽度和最大高度,而不是图像的新大小(否则会失真)。图像大小根据这些值按比例缩放
► 请记住添加以下内容:
使用ImageCodec=System.Drawing.Imaging.Encoder代码>
(GetImageMaxSize()方法是半哑的,我稍后会修复它)
由于源图像似乎是彩色图像(恰好看起来像黑白),并且其尺寸需要调整为最大值,因此您需要:
1bpp索引的
格式:该方法提供了定义源图像新大小和设置特定大小的方法(PixelFormat.format1bppinged
,在本例中)。内部转换方法相当好,得到的图像质量通常是一个很好的折衷方案李>
100
)。如果最终图像字节数不符合要求(50KB
),则可以重复该过程MemoryStream
以供进一步处理94600
字节减少到6786
字节,质量最高
File.WriteAllBytes("[Image Path].tiff", imageStream.ToArray());
converttobTiffImageStream()
方法可称为:
var maximumWidthAndHeight = new Size(1024, 768);
int quality = 100;
var compression = EncoderValue.CompressionCCITT4;
var imageStream = ConvertToBWTiffImageStream(sourceImage, maximumWidthAndHeight, quality, compression);
请注意,MaximumWidth和Height
指定最大宽度和最大高度,而不是图像的新大小(否则会失真)。图像大小根据这些值按比例缩放
► 请记住添加以下内容:
使用ImageCodec=System.Drawing.Imaging.Encoder代码>
(GetImageMaxSize()方法是半哑的,我稍后会修复它)
这些是黑白图像,对吗?对,黑白图像,还有我的尺寸限制(1766915)源图像像素格式设置为什么?你试过RLE压缩吗?您是只需要字节数组还是生成新映像?在这种情况下,生成新图像后的像素格式是什么?此外,第4组生成的图像质量非常低。你确定要这个吗?你是否需要这些图像具有TIFF格式,或者其他格式也可以(如果你更关心压缩)?确切地说,我不知道源图像像素格式,首先我调整源图像大小并克隆它,然后运行压缩算法。我需要在最后的字节数组,但不要尝试RLE压缩,我应该用CCITT4压缩结果文件。我可以使用PixelFormat缩小尺寸吗?这些是黑白图像,对吗?对,黑白图像,还有尺寸限制(1766915)。源图像PixelFormat设置为什么?你试过RLE压缩吗?您是只需要字节数组还是生成新映像?在这种情况下,生成新图像后的像素格式是什么?此外,第4组生成的图像质量非常低。你确定要这个吗?你是否需要这些图像具有TIFF格式,或者其他格式也可以(如果你更关心压缩)?确切地说,我不知道源图像像素格式,首先我调整源图像大小并克隆它,然后运行压缩算法。我需要在最后的字节数组,但不要尝试RLE压缩,我应该用CCITT4压缩结果文件。我可以使用像素格式来缩小尺寸吗?