Delphi 德尔菲:两个时代的混合

Delphi 德尔菲:两个时代的混合,delphi,transparency,alphablending,blending,alpha-transparency,Delphi,Transparency,Alphablending,Blending,Alpha Transparency,我有中二的成绩。一个是固定的(BackgroundImage-Car),另一个是可移动的,始终位于前面(FrontImage-Tree) 当两个图像重叠时,正面图像应该是透明的。我尝试了Remy Lebeau关于这个问题的答案中的确切代码: 但过度借贷的形象看起来很奇怪。看起来不像预期的那样 感谢您的帮助适用于2张png图像。第一: 第二: (我制作了printscreen,然后用“魔杖”删除了背景并保存为PNG) 只需将它们插入到对象检查器中的TImage组件中,它们就会正常工作(至

我有中二的成绩。一个是固定的(BackgroundImage-Car),另一个是可移动的,始终位于前面(FrontImage-Tree)

当两个图像重叠时,正面图像应该是透明的。我尝试了Remy Lebeau关于这个问题的答案中的确切代码:

但过度借贷的形象看起来很奇怪。看起来不像预期的那样


感谢您的帮助

适用于2张png图像。第一:

第二:

(我制作了printscreen,然后用“魔杖”删除了背景并保存为PNG)


只需将它们插入到对象检查器中的TImage组件中,它们就会正常工作(至少在XE2和更高版本中)。没有增加透明度的代码,它已经存在。

雷米·勒博没有在这个答案中编写任何代码。你的意思是用“流浪汉”来回答吗?请描述一下,你到底做了什么?在链接中,图像一开始是完全不透明的,并且变得均匀透明。在你的例子中,我假设你有一棵不透明的树在透明的背景上,并且想要这样做?对不起,你是对的:这是正确的链接:这里我使用了名为:procedure SetBMPAlpha(BMP:TBitmap;Alpha:Byte)的函数;我提到我在一个滚动框上有两个TImages。位图被分配给每个TImage组件。(汽车->背景->不透明,树->正面->透明)用户现在可以通过鼠标移动->移动一幅图像,当然,这些图像可以并排放置,也可以相互重叠。因此,用户还可以选择Alpha值并更改透明度。我正在搜索一种可以处理位图的解决方案。@Jacks您到底想实现什么?您链接到的所有正面图片都是半透明的(因此初始图像是完全不透明的,但您希望将alpha值设置为127,例如所有像素)还是您的图像具有alpha通道,因此它们像精灵,像非矩形图像,所以汽车可能站在树的后面,但树本身是不透明的?您好,开始时,每个图像都是不透明的。然后,前面的图像(树)应该在后面的图像(汽车)的顶部移动,当它移动时,我应该能够改变前面图像(树)的透明度。我希望现在一切都清楚了-P