在Delphi里怎样将jpg图片转化成bmp格式的图片阿?急用!因为做得一些东东只能对bmp格式的图片进行处理,但是不能限制只加载bmp图片阿,所以想处理之前先用deiphi把jpg图片变成bmp格式,有办法吗?

解决方案 »

  1.   

    Assign方法
    网络太多答案了!
    Google就有N个
    CSDN上都有就不会自己找??
      

  2.   

    建一个JPG变量 ,一个BMP变量 
    然后 bmp.assing的方法把jpg的东西传过来。
      

  3.   

    sorry,刚开始接触delphi和csdn,所以不太了解,有时不知道从哪入手,又急于解决问题,麻烦了。
      

  4.   

    var img: TImage;
        bmp: TBitmap;
    img.picture.loadfromfile(jpg);
    bmp.width := img.picture.width;
    bmp.heigth := img.picture.height;
    bmp.canvas.draw(0,0,img.picture.graphic);
      

  5.   

    uses Jpeg;var
      jpg :TJpegImage;
      bmp :TBitmap;
    begin
      ....................
      jpg :=TJpegImage.Create;
      jpg.LoadfromFile('.......');
      bmp :=TBitmap.Create;
      bmp.Assign(jpg);
      ...........................
      bmp.Free;
      jpg.Free;
    end;
      

  6.   

    procedure JpgToBmp(const JpgFileName:string;AJpg:TJpegImage;Abmp:Tbitmap);
    begin
      try
        AJpg.LoadFromFile(JpgFileName);
        Abmp.Assign(AJpg);
      finally
      end;
    end;
      

  7.   

    对用CREATE JPEG BMP
    BMP.ASSIGE(JPEG 就行了
      

  8.   

    打开一个jpg或者jpeg的图片,放在dbimage中显示,然后在存入sql server数据库:
    用一个openpicturedialog对话框控件,一个dbimage,将dbimage与数据库中对应的域连好,数据库中
    对应类型为:image。
    openpicturedialog的属性框中要设置一下,过滤,filter。点击……,出现一个过滤编辑对话框,
    左侧名称为:所有jpg(自己起一个名字),右边*.jpg ;下一行一样
                所有jpeg                 ,右边*.jpeg;
    然后在option属性中的ofallowmultiselect 选择为true。  ok,下面编程:procedure TForm1.BitBtnChoseImageClick(Sender: TObject);
    var
       jpgimage,resizejpg: TJpegImage;
       resizedbitmap : tbitmap;
       newheight, newwidth : integer;
       stretchrect : trect;
    begin  jpgimage :=tjpegimage.Create;
      resizejpg:=tjpegimage.create;
      resizedbitmap := tbitmap.create;  if OPENpicturedialog1.Execute then
        jpgimage.LoadFromFile(openpicturedialog1.FileName);
       newheight := 217;   //调整大小,你可以自己设置啦。
       newwidth :=393;
       stretchrect.left := 0;
       stretchrect.Top := 0;
       stretchrect.right := newwidth;
       stretchrect.bottom := newheight;
       resizedbitmap.Width := newwidth;
       resizedbitmap.height := newheight;    resizedbitmap.Canvas.StretchDraw(stretchrect, jpgimage);
        dbimage1.Picture.Assign(resizedbitmap);
        jpgimage.Free;
        resizejpg.Free;
        resizedbitmap.Free;
    end;
    向数据库中添加一步,就非常简单了,因为你的对应的域已经连好了,所以
    你就直接向数据库添加就ok了。
    希望能帮助你。祝你好运!
      

  9.   

    var
     Bitmap:TBitmap;
     ImageJPEG:Tjpegimage;
    begin
     Bitmap := TBitmap.Create;//生成一个Tbitmap类型的实例对象
     ImageJPEG:=TjpegImage.Create;//生成一个Tjpg类型的实例对象
     ImageJPEG.Assign(Bitmap);
     Bitmap.Free;
     ImageJPEG.Free;
    end;