图片保存问题,在线等待高手指点。
我在Image控件上画图,但是需要调整Image的大小,保存图片是就把Image的整个Picture保存下来。但是我只想保存Image的可见部分的图像,如何实现? 问题点数:20、回复次数:5Top
1 楼delphizd(DELPHI字典)回复于 2003-11-02 12:05:30 得分 5
可以让你的delphi 程序具有Photoshop 功能的一组控件
http://218.56.11.178:8000/web/File_Down.aspx
->控件-多媒体-》ImageEn.v2.0.7 /ImageEn.v2.0.7
Top
2 楼ColdWolf(天边流星)回复于 2003-11-02 12:22:07 得分 5
你可以将可见部分拷贝到另外一个imange控件上,而后通过另外一个imange来保存。Top
3 楼greenpeople(绿人)回复于 2003-11-02 12:42:03 得分 5
可以给分了吧?
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,jpeg, DB, ADODB, DBCtrls, Grids, DBGrids, StdCtrls,
ExtCtrls;
type
TForm1 = class(TForm)
Image1: TImage;{用来存放图片以备用}
Image2: TImage;{用来显示从数据库中提取出来的图片}
Button1: TButton;
Button2: TButton;
DBGrid1: TDBGrid;
ADOQuery1: TADOQuery;
DataSource2: TDataSource;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
MyJPEG : TJPEGImage;
MS: TMemoryStream;
begin
Image1.picture.loadfromfile('d:\work\pic.bmp'); {须保证d:\下有名为pic.bmp文件}
MyJPEG:=TJPEGImage.Create;
Try
MyJPEG.Assign(Image1.Picture.Graphic); {图像转成JPEG格式,如为JPEG图片则不必加}
MS:=TMemoryStream.Create;
MyJPEG.SaveToStream(MS);
MS.Position:=0;
ADOQuery1.Append;
ADOQuery1.FieldByName('name').Value:='1';
TBlobField(ADOQuery1.FieldByName('pic')).LoadFromStream(MS);
ADOQuery1.Post;
messagebox(getactivewindow(),'图像保存完毕!','保存',mb_ok);
MS.Free;
Finally
MyJPEG.Free;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
MyJPEG : TJPEGImage;
MS: TMemoryStream;
begin
MS:=TMemoryStream.Create;
MyJPEG:=TJPEGImage.Create;
ADOQuery1.Requery;
try
TBlobField(ADOQuery1.FieldByName('pic')).SaveToStream(MS);
MS.Position:=0;
MyJPEG.LoadFromStream(MS);
Image2.Picture.Bitmap.Assign(MyJPEG);
finally
MS.Free;
MyJPEG.Free;
end;
end;
end.Top
4 楼pingguo(e网情深)回复于 2003-11-04 11:26:43 得分 0
答非所问。我是想保存一个bmp图片的一部分。Top
5 楼minimu(minimu)回复于 2003-11-13 16:22:53 得分 5
ImageEn的效率比较低(个人感觉)Top




