用Delphi改变图片的像素,即大小
2007-09-24 21:04
197 查看
用Delphi改变图片的像素,即大小.需代码!急用,谢谢!
我给你讲一种非常简单的方法:
第一步:在窗体上放上image1和image2两个图片控件。再放一个Button按钮控件。
第二步:在image1的Picture属性中载入一张JPG或者BMP图片。而image2不要管它。
第三步:双击Button进行按扭编写环境。写入下面代码:
Image2.Height := 200;//新图像高度
Image2.Width := 300;//新图像宽度
Image2.Canvas.StretchDraw(Image2.ClientRect,Image1.Picture.Graphic);
Image2.Picture.SaveToFile('c:/b.jpg');//保存新图像
问题回答完了,请测试无误后立即给分,别拖时间。
你没有说要压缩,所以我没写压缩的代码。其实这种情况最好是要压缩一下,压缩代码也非常简单(因为我不喜欢太长的代码),如果你需要请加我QQ5555044
晕。。。。。。。。不知道。。。。。。 uses添加Jpeg.
var
bmp,bmp1:TBitmap;
jpeg:TJpegImage;
str:string;
begin
str:='你的图片的完整路径+图片名'
if (ExtractFileExt(str)='.JPG') or (ExtractFileExt(str)='.jpg') then
begin
jpeg:=TJpegImage.Create;
try
jpeg.LoadFromFile(str);
bmp:=TBitmap.Create;
try
bmp.Width:=strtoint(edit1.Text);
bmp.Height:=strtoint(edit2.Text);
bmp.Canvas.StretchDraw(rect(0,0,bmp.Width,bmp.Height),jpeg);
jpeg.Assign(bmp);
finally
bmp.Free;
end;
jpeg.SaveToFile('D:/aa.jpg');
finally
jpeg.Free;
end;
end;
end;
if (ExtractFileExt(str)='.BMP') or (ExtractFileExt(str)='.bmp') then
begin
bmp1:=TBitmap.Create;
try
bmp1.LoadFromFile(str);
bmp:=Tbitmap.Create;
try
bmp.Width:=strtoint(edit1.Text);
bmp.Height:=strtoint(edit2.Text);
bmp.Canvas.StretchDraw(rect(0,0,bmp.Width,bmp.Height),bmp1);
bmp1.Assign(bmp);
finally
bmp.Free;
bmp1.SaveToFile('D:/aa.bmp');
end;
finally
bmp1.Free;
end;
end;
end;
只是edit1和edit2中添加的bmp的宽和高不要太大了,否则会出现“储存空间不足”错误。具体多大数值就超出了,具体情况具体分析,你可以自己试一下。
我给你讲一种非常简单的方法:
第一步:在窗体上放上image1和image2两个图片控件。再放一个Button按钮控件。
第二步:在image1的Picture属性中载入一张JPG或者BMP图片。而image2不要管它。
第三步:双击Button进行按扭编写环境。写入下面代码:
Image2.Height := 200;//新图像高度
Image2.Width := 300;//新图像宽度
Image2.Canvas.StretchDraw(Image2.ClientRect,Image1.Picture.Graphic);
Image2.Picture.SaveToFile('c:/b.jpg');//保存新图像
问题回答完了,请测试无误后立即给分,别拖时间。
你没有说要压缩,所以我没写压缩的代码。其实这种情况最好是要压缩一下,压缩代码也非常简单(因为我不喜欢太长的代码),如果你需要请加我QQ5555044
晕。。。。。。。。不知道。。。。。。 uses添加Jpeg.
var
bmp,bmp1:TBitmap;
jpeg:TJpegImage;
str:string;
begin
str:='你的图片的完整路径+图片名'
if (ExtractFileExt(str)='.JPG') or (ExtractFileExt(str)='.jpg') then
begin
jpeg:=TJpegImage.Create;
try
jpeg.LoadFromFile(str);
bmp:=TBitmap.Create;
try
bmp.Width:=strtoint(edit1.Text);
bmp.Height:=strtoint(edit2.Text);
bmp.Canvas.StretchDraw(rect(0,0,bmp.Width,bmp.Height),jpeg);
jpeg.Assign(bmp);
finally
bmp.Free;
end;
jpeg.SaveToFile('D:/aa.jpg');
finally
jpeg.Free;
end;
end;
end;
if (ExtractFileExt(str)='.BMP') or (ExtractFileExt(str)='.bmp') then
begin
bmp1:=TBitmap.Create;
try
bmp1.LoadFromFile(str);
bmp:=Tbitmap.Create;
try
bmp.Width:=strtoint(edit1.Text);
bmp.Height:=strtoint(edit2.Text);
bmp.Canvas.StretchDraw(rect(0,0,bmp.Width,bmp.Height),bmp1);
bmp1.Assign(bmp);
finally
bmp.Free;
bmp1.SaveToFile('D:/aa.bmp');
end;
finally
bmp1.Free;
end;
end;
end;
只是edit1和edit2中添加的bmp的宽和高不要太大了,否则会出现“储存空间不足”错误。具体多大数值就超出了,具体情况具体分析,你可以自己试一下。
相关文章推荐
- 用opencv改变图片大小(像素、尺寸)
- winform改变图片像素大小
- 用opencv改变图片大小(像素、尺寸)
- 改变图片尺寸大小不改变像素
- opencv2改变图像像素大小到指定像素并保存改变后的图像
- Python之批量改变图片大小
- 控件对图片的操作,改变透明度、大小、方向(学习笔记)
- c#上传并改变图片大小
- 改变图片的大小
- Java读取图片像素和大小
- 图片像素、大小、分辨率的关系
- Delphi中改变图片(bitmap)的亮度、对比度、饱和度
- 图片像素、大小、分辨率的关系
- 零基础ios开发(一 改变图片大小和位置)
- PHP中改变图片的尺寸大小的代码
- UIBarButtonItem 、UITabBarItem 改变字体,大小,图片
- 鼠标悬浮的时候改变图片的大小-动画html5
- 绘制改变大小的图片
- 滚轮改变图片大小
- Gridview 读取数据库图片并 改变大小(图片处理)