初学delphi6.0
我使用delphi本身的组件Image编辑图片字段,保存BMP格式的图片没问题,但选择了JPG格式的文件就保存不了,显示不出来,请你支招......在线等......
最好能给出例子.

解决方案 »

  1.   

    Image1.Picture.Graphic.SaveToFile('c:\1.jpg');
      

  2.   

    Image1.Picture.Graphic.SaveToFile('c:\1.jpg');
    ===============
    楼上的已经说得够清楚了
      

  3.   

    Image1.Picture.Graphic.SaveToFile('c:\1.jpg');
    就是这样了
    你写一下!
      

  4.   

    procedure TForm1.Button1Click(Sender: TObject);
    var sourcedc,destdc:hdc;bhandle:hwnd;
        bitmap:Tbitmap;jpg:Tjpegimage; stream:Tmemorystream;
    begin
    sourcedc:=createdc('display','','',nil);
    destdc:=createcompatibleDC(sourcedc);
    BHandle:=CreateCompatibleBitmap(sourceDC,Screen.Width,Screen.Height);
    SelectObject(DestDC,BHandle); 
    BitBlt(DestDC,0,0,Screen.Width,Screen.Height,SourceDC,0,0,SRCCOPY);
    Bitmap:=TBitmap.Create;
    jpg:=Tjpegimage.create;
    stream:=Tmemorystream.Create;
    bitmap.Handle:=BHandle;
    bitmap.SaveToStream(stream);
    jpg.Assign(bitmap);
    jpg.SaveToFile('D:\新建文件夹1\text\FullScreen.jpg');
    bitmap.SaveToFile('D:\新建文件夹1\text\FullScreen.bmp');
    DeleteDC(DestDC) ;
    ReleaseDC(BHandle,SourceDC);
    end;
      

  5.   

    procedure DBToImage(Field: TField;const Path : string);
    var
      ADOData : TADOBlobStream;
      JPGImg  : TJPEGImage;
    begin
      ImagePhoto.Picture.Bitmap := nil;  if not Field.IsNull then
      begin
         ADOData := TADOBlobStream.Create(TBlobField(Field),bmRead);     JPGImg := TJPEGImage.Create;
         try
           JPGImg.LoadFromStream(ADOData);
           JPGImg.SaveToFile(Path);  //后缀为.jpg
         finally
           ADOData.Free;
           JPGImg.Free;
         end;  end;
    end;
    没有测试,但应该是可以的!
      

  6.   

    如果你还嫌麻烦的话,去Delphi园地下一个ImageEn组件,就可一个很方便的解决你的问题了。
      

  7.   

    to:Cutepat(阳关微笑):
       请问:ImageEh组件如何在delphi60中安装呢?
      

  8.   

    在按了“保存”按钮之后所触发的事件处理程序:
    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;
    下面的这段代码是在按了“查看图像”按钮之后所触发的事件处理程序:
    procedure TForm1.Button1Click(Sender: TObject);
    var tempstream:TStringStream;
       tempjpeg:TJPEGImage; 
    begin
       try
            tempstream:=TStringStream.Create(' ');     
            TBlobField(Query1.FieldByName('Image')).SaveToStream(tempstream);            
            tempstream.Position:=0;
            tempjpeg:=TJPEGImage.Create;
            tempjpeg.LoadFromStream(tempstream);
            DBImage1.Picture.Bitmap.Assign(tempjpeg);
      finally
            tempstream.Free;
            tempjpeg.Free;
      end;
    end;
      

  9.   

    http://soft.kaer.cn:8018/FileDown.aspx?FID=168