delphi高手 请进!!!!!!关于图像的分辩率!!!急急急!!!(50分)

  • 主题发起人 主题发起人 爱delphi
  • 开始时间 开始时间

爱delphi

Unregistered / Unconfirmed
GUEST, unregistred user!
我想把一个图片的分辩率设置成350dpi怎么实现呀,????.
还有一个问题是关于图像透明的!我在一个窗体上放了两个image控件,(image1和image2),我把image1当成背景图片,image2是前景,image2是个小图片,上面是一些尺寸,我想把它变成半透明状态以便能可以看到背景图像,不知道那位可们能不能实现呀?
 
//设定BMP分辨率
procedure SetBmpDPI(Bitmap: TBitmap; DPI: Integer);
var
Stream: TMemoryStream;
Data: Word;
begin
try
Stream := TMemoryStream.Create;
Bitmap.SaveToStream(Stream);
Data := Round(DPI * 39.370079);
Stream.Position := 38;
if Stream.Write(Data,2) = 2 then
begin
Stream.Position := 42;
if Stream.Write(Data,2) = 2 then
begin
Stream.Position := 0;
Bitmap.LoadFromStream(Stream);
end
else
//Error writing to Stream...
ShowMessage('Error writing to Stream. Data not written.');

end
else
//Error writing to Stream...
ShowMessage('Error writing to Stream. Data not written.');
finally
Stream.Free;
end;
end;
 
谢谢你呀,我有一个疑问是不是jpeg不支持图片的分辨率呀?
 
JPEG和BMP格式不同,普通的JPEG文件分辨率信息在$E处使用2个字节
包含有EXIF信息的就比较复杂了,还需要分析EXIF格式
 
哦,这么复杂呢,我在编程时也感到jpeg这种格式处理图片不太灵活的,你知道怎么实现图片的半透明吗?
 
参考
http://community.csdn.net/Expert/topic/4653/4653822.xml?temp=.5606958
 
我调试了文章的源程序,发现并不能使图片出现半透明状态的呀,还出现图片严重缺色,那有没有别的什么好的方法使图像半透明呀?
 
怎么没有人回答了呀,我的问题已解决了,谢谢各位的参与,我还有一个问题是关于图片的裁切的,我有两个图片控件,一个是bigimg一个是smallimg,smallimg控件在bigimg上,可是怎么把这个smallimg图片给裁切下来,不用鼠标操作,我用canvas.copyrec来编写可是裁切下来只是原来图片的一部分怎么回事呀,下面是我的原吗:newbmp.Canvas.CopyRect(Rect(0,0,smallimg.width,smallimg.height),bigimg.Canvas,Rect(0,0,smallimg.width,smallimg.height));
newbmp.savetofile('c:/ewe.bmp');
//其中newbmp是我又申请的一个bmp类,
问题是为什么裁切出来 的是一部分呀,帮帮忙吧,我快急死了呀!!!!
 

Similar threads

D
回复
0
查看
941
DelphiTeacher的专栏
D
D
回复
0
查看
895
DelphiTeacher的专栏
D
D
回复
0
查看
866
DelphiTeacher的专栏
D
后退
顶部