用类似下面代码
Image oldImage = (Image)Image.FromFile(@"c:\test.tif").Clone();Image image = new Bitmap(2304, 3307);Graphics g = Graphics.FromImage(image);g.DrawImage(oldImage, new Rectangle(0, 0, image.Width, image.Height), cropRect.X*5, cropRect.Y*5, cropRect.Width*5, cropRect.Height*5, GraphicsUnit.Pixel);
                
image.Save(@"c:\new.tif"); //这个生成的new.tif好大,有时比原来的test.tif大近十倍,我总觉得生成的new.tif是个BMP格式的,那怎样在程序中把它变成tif格式呢?

解决方案 »

  1.   

    不会吧
    打开tif的文件然后保存,格式仍然是tif的,文件的大小明显的减小了
    你的问题固定了bmp的大小2304*3307,
    cropRect.X*5, cropRect.Y*5, cropRect.Width*5, cropRect.Height*5
    这些导致的
    保存后的图像
    你双击打开,你就会看到不是windows自带的图像查看器打开的
      

  2.   

    是不是没有用ImageFormat 指定public void Save(string, ImageFormat);的文件格式?
      

  3.   

    to:popcorn(米花.珠海)image.Save(@"c:\new.tif", ImageFormat.Tiff);也是一样的情况,图像还是比原来从数据库中读取的大十倍左右。
      

  4.   

    这个问题已经解决了。费了不少劲。特别是CCITT4格式压缩时特麻烦。