对于传真管理应用程序,我编写了 C# 代码从头开始创建 TIFF 文件:
// Bitmap imgNew = new Bitmap(2550, 3300);
Bitmap imgNew = new Bitmap(1728, 1000);
imgNew.SetResolution((float)96, (float)96);
Graphics graphNew = Graphics.FromImage(imgNew);
graphNew.Clear(Color.White);
// Followed by a series of graphNew.DrawString statements
imgNew.Save(ms, ImageFormat.TIFF); // where ms is a MemoryStream
取消注释时,第一行将生成一个 8.5" x 11" 的图像,其中文本字段位于正确的位置。第二行的尺寸更接近现有商业应用程序生成的文件的尺寸,输出文件的大小约为我的应用程序创建的文件大小的 1/10。如果我对 SetResolution 参数使用较小的值 (46),则文本非常小,但文档尺寸正确。不幸的是,该文件仍然很大。
生成文件时,我显然没有做正确的事情。文件详细信息表明水平和垂直分辨率值均为96,位深为1,压缩设置为CCITT T.6。
我该怎么做才能保持正确的格式但减小文件大小?