话题2429198的标题是: 怎样压缩图片? (200分)
分类:图形图象 细文 (2004-02-01 0:14:00)
一张JPF图片经过SaveToFile保存另一张JPG图片,容量变大几倍。怎样压缩图片?[
]
zhoufujin (2004-02-02 19:37:00)
一张JPF图片经过SaveToFile保存另一张JPG图片,容量变大几倍
//???? No
app2001 (2004-02-02 19:43:00)
procedure TForm1.Button1Click(Sender: TObject);
var
b: TBitmap;//原图片
nb: TBitmap;//Resize以后的图片
r: TRect;
begin
b := TBitmap.Create;
if OpenDialog1.Execute then
begin
b.LoadFromFile(OpenDialog1.FileName);
nb := TBitmap.Create;
//你可以自己定义高度和宽度,这里是都变成一半
nb.Height := b.Height div 2; //高度变为原来的一半
nb.Width := b.Width div 2; //宽度变为原来的一半
r.TopLeft := Point(0, 0);
r.BottomRight := Point(nb.Width, nb.Height);
with nb.Canvas do
begin
Pen.Style := psDash;
Brush.Style := bsClear;
Rectangle(0, 0, nb.Width, nb.Height);
StretchDraw(r, TGraphic(b));
end;
if SaveDialog1.Execute then nb.SaveToFile(SaveDialog1.FileName);
nb.Free;
end;
这样算不算压缩????
andy263 (2004-02-02 19:48:00)
不用savetofile 用copyfile
细文 (2004-02-02 20:12:00)
接受答案了.
app2001的回答最终被接受。