AS3染色位图

3
我有一个精灵图集,是与我正在开发的项目相关的。我需要能够更改图像的色调,以便我可以在空间中看到它。图像上有一些简单的纹理,但将以5种不同的颜色显示。我附上了一张图片,以确切地说明我的意思:http://i42.tinypic.com/29443l5.png 我尝试使用以下内容来实现所需的效果:
var c:ColorTransform = new ColorTransform();
c.color = 0xf30909;
transform.colorTransform = c;

但是我得到的一切都是红色的,不是我想要的。我正在构建AIR应用程序,因此无法导入fl.motion.Color包(或者至少Flash Builder 4.5没有它)。您有什么办法实现所需的效果吗?谢谢。

2个回答

6

为了完整起见...

(这句话与IT技术无关,不确定是否需要翻译)
public function Tint(display:DisplayObject, color:uint) {
    display.transform.colorTransform = new ColorTransform(color >> 16 & 0x0000FF / 255, color >> 8 & 0x0000FF / 255, color & 0x0000FF / 255);
}

1
感谢您帮助我们开始使用一个可行的示例! - Bitterblue
谢谢!正是我来这里的目的。 - bunnybare

3

color属性设置偏移量,即它使ColorTransform将颜色值添加到您的图像中。您可能希望使用Multiplier属性。请参见ColorTransform文档


是的!这就是我所需要的。现在我只需要看到需要的确切数值...但那是另一个故事了。谢谢。 - Petre Popescu

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接