请问怎样把32*38位图转换为16*16按钮位图(100分)

  • 主题发起人 主题发起人 guyaling
  • 开始时间 开始时间
用photoshop中的菜单:图象->图象大小->改变文件象素即可。
 
试试一个古老的Dos程序Sea
 
下面的代码可以改变大小!你自己写一个小程序即可。
///source,Dest不要解释了。x,y是Width,Height,colorBit是新文件的位图的颜色数目。
///Ex:FitBitmap('C:/Big.bmp','c:/Out.bmp',16,16,pfPixel24)
procedure FitBitmap(const Source,Dest:string;const x,y:integer;const ColorBit:TPixelFormat);
var
abmp,bbmp:tbitmap;
scalex,scaley:real;
begin
abmp:=tbitmap.Create;
bbmp:=tbitmap.Create;
try
abmp.LoadFromFile(Source);
scaley:=abmp.Height/y;
scalex:=abmp.Width/x;
bbmp.Width:=round(abmp.Width/scalex);
bbmp.Height:=round(abmp.Height/scaley);
bbmp.PixelFormat:=pf8bit;
SetStretchBltMode(bbmp.Canvas.Handle,COLORONCOLOR);
stretchblt(bbmp.Canvas.Handle,0,0,bbmp.Width,bbmp.Height,abmp.Canvas.Handle,0,0,abmp.Width,abmp.Height,srccopy);
bbmp.SaveToFile(Dest);
finally
abmp.Free;
bbmp.Free;
end;
end;
 
我有一组BMP32*32*16M图标,photoshop无法打开,后用acdsee把bmp文件改为jpg文件,
可用photoshop打开,改变文件大小,另存为16*16bmp小图标。speedbutter添加小图标。
一个小问题麻烦大家,不好意思。在此对fyrab,Kingron,misai表示感谢!!!
 
接受答案了.
 
后退
顶部