delphi2007 教程

delphi2007 教程

首页 新随笔 联系 聚合 管理
  1013 Posts :: 0 Stories :: 28 Comments :: 0 Trackbacks
图片转换问题 Delphi / Windows SDK/API
http://www.delphi2007.net/DelphiMultimedia/html/delphi_20061016141026235.html
我有一个bmp图片是300dpi的,我要把他转换成200dpi的  
  而且他的大小也会跟着随之改变  
  比喻说  
  300dpi下一个图片是宽:263,高398,在200dpi下就是宽176,高265  
  就象photoshop中的'图片大小'中改边dpi时高宽也同时变化的  
  那样,图片的存储大小也回变化  
 

用GDI+的  
  SetResolution(96,   96)方法!这里是96DPI的  
   
  Image   :=   TGPImage.Create('A.BMP');  
  GetEncoderClsid('image/bmp',   encoderClsid);  
  TGPBitmap(image).SetResolution(200,   200);  
  image.Save('B.bmp',   encoderClsid);

其实dpi分辨率只是针对打印或扫描而言,跟像素分辨率没有必然的关系。因为一般图像中没有存储物理大小,所以也只好通过修改像素来适应了。  
   
  不过如果打印模块是你自己做的话,完全可以不缩减像素,那样可以获得更精致的打印效果。

posted on 2008-12-19 10:01 delphi2007 阅读(166) 评论(0)  编辑 收藏 引用
只有注册用户登录后才能发表评论。