function JpgToBmp (JPGpicLocation, BMPpicLocation: string):boolean;
var
  JpegImg: TJpegImage;
  Bitmap: TBitmap;
begin
  Result:=False;
  JpegImg := TJpegImage.Create;
  try
    JpegImg.LoadFromFile(JPGpicLocation);
    Bitmap := TBitmap.Create;
    try
      Bitmap.Assign(JpegImg);
      Bitmap.SaveToFile(BMPpicLocation);
      Result:=True;
    finally
      Bitmap.Free
    end;
  finally
    JpegImg.Free
  end;
end;以上代码可以把大部分的RGB的JPG转为BMP,但是CMYK模式的不行

解决方案 »

  1.   

    用TImage显示这个图是正常的
      

  2.   

    delphi7 显示不了,你是用哪个版本?
    delphi7 显示不了,你是用哪个版本?
      

  3.   


    那个版本应该是没问题的,现在只讨论在DELPHI7下的
      

  4.   

    procedure TForm1.Button1Click(Sender: TObject);
    Var
      jpeg: TJPEGImage;
      bmp: TBitmap;
      FileName,FileName1:string;
    Begin
      FileName:='D:\2.jpg';
      FileName1:='D:\2.bmp';
      Image1.Picture.LoadFromFile(Filename);
      jpeg:= TJPEGImage.Create;
      try
        jpeg.LoadFromFile( filename );
        bmp:= TBitmap.Create;
        try
          bmp.Assign( jpeg );
          bmp.SaveTofile(filename1);
        finally
          bmp.free
        end;
      finally
        jpeg.free
      end;
      Image2.Picture.LoadFromFile(Filename1);
    end;测试D7下成功转换。
      

  5.   


    你这个代码在D7下能转RGB模式的JPG图,但是CMKY的不行,你可以试下我在楼上提供的图片
      

  6.   

    可以用高版本写个DLL,D7调用即可。
      

  7.   

    ImageEnView1.IO.LoadFromFile('C:\Users\lenovo\Desktop\1532053124_584114.jpg');
       ImageEnView1.IO.SaveToFileBMP('C:\Users\lenovo\Desktop\1.bmp');
    用imageenview来做就可以了