var a:TjpegImage;
       b:Tbitmap;
       a1:word;
       b1:Handle;
       c1:Hpalette;
begin
      try
        a:=TJpegImage.Create;
        b:=TBitMap.Create ;
        a.LoadFromFile(aa);
        a.SaveToClipboardFormat(a1,b1,c1);
        b.LoadFromClipboardFormat(a1,b1,c1);
        b.SaveToFile(bb);
      finally
        a.free;
        b.free;
      end;aa,bb文件名
uses 里加上graphics,jpeg

解决方案 »

  1.   

    var
      MyJpeg: TJpegImage;
      bmp: Tbitmap;
    begin
      bmp:=tbitmap.Create;
      MyJpeg:= TJpegImage.Create;
      myjpeg.LoadFromFile('c:\windows\desktop\aa.jpg');
      bmp.Assign(myjpeg);
      bmp.SaveToFile('c:\windows\desktop\test.bmp'); // Save the JPEG to Disk
    end;
      

  2.   

    多谢各位啦!小生这相有礼啦!!!
    原来是我程序的另外的部分写错啦:图形转换过后,又将原先的 .jpg 文件给改名(改为 .bmp)拷贝过来用啦!改过来以后就没事啦!!!
    但是,为什么直接拷贝改名有时候是成功的,而有时候又是失败的呢???
      

  3.   

    多谢各位,问题解决了!
    其实问题出在我程序的其它部分:我在图形转换后又拿原先那个 .jpg 文件给拷贝更名为 .bmp 文件拿来用啦!(真不好意思,^_^)
    但是,有一点不明白,直接拷贝转换 有时候能成功,而有时候又会失败呢???
      

  4.   

    //==============================================================================
    //转换JPG到BMP格式**************************************************************
    //==============================================================================
    procedure JPG2BMP(const Source, Target:string);
    var JPG: TJpegImage;
        BMP: TBitmap;
    begin
      BMP := TBitmap.Create;
      JPG := TJpegImage.Create;
      try
        JPG.LoadFromFile(Source);
        BMP.Assign(JPG);
        BMP.SaveToFile(Target);
      finally
        BMP.free;
        JPG.Free;
      end;
    end;