Tif转成JPG的方法?有没有源码?

解决方案 »

  1.   

    参考 Bmp2Tiff v.3.0http://www.torry.net/pages.php?id=111
      

  2.   

    你需要两个开源库libtiff和libjpeg6b也有现成的封装CxImage,有dll版
      

  3.   

    tiff本身就是种框架格式,常见的tiff包装的图像格式细分下,可以拆成几十种小格式,除了libtiff这种库,那种bmp2tiff类似的示例性代码没任何工程上的意义。如果只是解不压缩纯RGB的tiff位图,比bmp复杂不了多少。
      

  4.   

    以下是我以前使用GDI+测试的代码,注意,我用的GDI+文件与网上流通的略有不同,需要作修改,仅供参考:// 把多帧图像分解为单图像保存到文件
    procedure TForm1.Button2Click(Sender: TObject);
    var
      I, Count: Integer;
      Clsid: TClsid;
      Parameters: TEncoderParameters;
      Quality: Integer;
      Image: TGpImage;
      GUID: TGUID;
    begin
      Image := TGpImage.Create({'..\media\hbmap108.gif'}'hb.tif');
      Image.GetFrameDimensionsList(@GUID, 1);
      Count := Image.GetFrameCount(GUID);
      GetImageEncoderClsid('image/jpeg', Clsid);
      Parameters.Count := 1;
      Parameters.Parameter[0].Guid := EncoderQuality;
      Parameters.Parameter[0].ValueType := EncoderParameterValueTypeLong;
      Parameters.Parameter[0].NumberOfValues := 1;
      Quality := 100;                             // 图片质量100
      Parameters.Parameter[0].Value := @Quality;
      for I := 0 to Count - 1 do
      begin
        Image.SelectActiveFrame(GUID, I);
        Image.Save('Hb' + IntToStr(I) + '.jpg', Clsid, @Parameters);
      end;
    end;
      

  5.   

    如果不追求效率的话,用FireMonkey的TBitmap。先LoadFromFile('a.tif'),然后SaveToFile('a.jpg');