用Delphi如何实现图形格式之间的转换(50分)

  • 主题发起人 主题发起人 superqiu
  • 开始时间 开始时间
S

superqiu

Unregistered / Unconfirmed
GUEST, unregistred user!
如何实现图形之间格式的转换如JPG,bmp,ico等格式
 

procedure IconToBMPDemo;
var
Icon: TIcon;
Bmp: TBitmap;
begin
Icon := TIcon.Create;
Icon.LoadFromFile('chemical.ico');
Bmp := TBitmap.Create;
Bmp.Width := Icon.Width;
Bmp.Height := Icon.Height;
Bmp.Canvas.Draw(0, 0, Icon);
Bmp.SaveToFile('chemical.bmp');
Bmp.Free;
Icon.Free;
end;

procedure JPegToBMPDemo;
var
JPeg: TJPegImage;
Bmp: TBitmap;
begin
JPeg := TJPegImage.Create;
JPeg.LoadFromFile('chemical.jpg');
Bmp := TBitmap.Create;
Bmp.Width := JPeg.Width;
Bmp.Height := JPeg.Height;
Bmp.Canvas.Draw(0, 0, JPeg);
Bmp.SaveToFile('chemical.bmp');
Bmp.Free;
JPeg.Free;
end;

procedure BMPToJPegDemo;
var
JPeg: TJPegImage;
Bmp: TBitmap;
begin
Bmp := TBitmap.Create;
Bmp.LoadFromFile('chemical.bmp');
JPeg := TJPegimage.Create;
JPeg.Assign(Bmp);
JPeg.SaveToFile('chemical.jpg');
JPeg.Free;
Bmp.Free;
end;

 
哪位大师知道 BMP to Icon?
 
以前写的,仅供参考。
procedure TIconShow.FileListBox1Click(Sender: TObject);
var
MyIcon:TIcon;
MyBitMap:Tbitmap;
begin
MyIcon:=TIcon.Create ;
MybItmap:=TBItMap.Create ;
try
//从Listbox1中得到图标文件名
StrFileName:=FileListBox1.Items[FileListBox1.ItemIndex];
StrPCopy(cStrFileName,StrFileName);
MyIcon.Handle:=ExtractIcon(hInstance,cStrfileName,0);

//在SpeedButton 显示转换成的位图。
SpeedButton1.Glyph:=MyBitMap;
SpeedButton1.Glyph.width:=MyIcon.Width;
SpeedButton1.Glyph.Height:=MyIcon.Height;
SpeedButton1.Glyph.Canvas.Draw (0,0,MyIcon);
SpeedButton1.Hint:=strFileName;
finally
MyIcon.Free ;
MyBitMap.Free ;
end;
end;//其它方式的转换如此类推。

我这一段没 Croco 的好。

Croco 的这一段中
1、 procedure IconToBMPDemo; 等。可能要改为
procedure Tform.IconToBMPDemo;//定义时要,说明时才不要。
2、在uses中还要加一小句:Jpeg 不然是不行的。

好了,祝你节日快乐。




 
BMP to Icon的例子www.csdn.net上有。
 
看看我提的问题, 其实还有问题
 
时间太久,强制结束。 wjiachun
 
后退
顶部