var
  bmp: TBitmap;
  jpg: TJPEGImage;
begin
  bmp := TBitmap.Create;
  jpg := TJPEGImage.Create;
  try
    bmp.LoadFromFile(bmpfilename);
    jpg.assign(bmp);
    jpg.SaveToFile(jpgfilename); //保存成jpg后,就随便你了。
  finally
    bmp.free;
    jpg.free;
  end;
end;

解决方案 »

  1.   

    把JPG文件存到ACCESS里面去干什么?以前看过一篇文章说什么大型网站的图片库,都只是在数据库里面写链接,图片还是作为单个文件存在硬盘上的。顺便问一句,你的JPG是怎么存进去的?小弟不懂!多多指教,呵呵!
      

  2.   

    var
      stream : TMemoryStream;
    begin
      Stream :=TMemoryStream.Create;
      Stream.LoadFilename('c:\1.jpg');
      Table1.append;
      (Table1.Fieldbyname('字段') as TBlobFiled).loadStream(Stream);
      Table1.post;
      Stream.Free;
    end;
      

  3.   

    图像存储
    procedure TForm1.Button1Click(Sender: TObject);
    var 
    MyJPEG : TJPEGImage;
    MS: TMemoryStream;
    begin
    MyJPEG := TJPEGImage.Create;
     try
        with MyJPEG do
        begin
          Assign(Image.Picture.Graphic);
          MS:=TMemoryStream.create;
          SaveToStream(MS);
          MS.Position:=0;
                    Table1.Edit;
                     TBlobField(Table1.FieldbyName('Image')).LoadFromStream(MS);
                     Table1.Post;
                     messagebox(getactivewindow(),'图像保存完毕!','保存',mb_ok);          
        end;
      finally
        MyJPEG.Free;
      end;
    end;将图像从Microsoft Access数据库中取出并显示出来:
    procedure TForm1.Button1Click(Sender: TObject);
    var tempstream:TStringStream;
       tempjpeg:TJPEGImage; 
    begin
       try
            tempstream:=TStringStream.Create(' ');
            tempjpeg:=TJPEGImage.Create;     
            TBlobField(Query1.FieldByName('Image')).SaveToStream(tempstream);            
            tempstream.Position:=0;
            tempjpeg.LoadFromStream(tempstream);
            DBImage1.Picture.Bitmap.Assign(tempjpeg);
      finally
            tempstream.Free;
            tempjpeg.Free;
      end;
    end;