如何使用actionscript3将纯色填充到透明PNG文件的形状中?

时间:2012-04-11 04:19:39

标签: actionscript png transparent mask

例如,我有一个透明的png文件,形状是汽车。 在png文件中,我只绘制白色边框形状。 边界外侧和内侧都是透明的。

我想使用actionscript3代码来显示不同颜色的汽车对象,这意味着只在边框内填充颜色,而对于边框外部,保持透明。 怎么做?

到目前为止,最简单的解决方法是使用PhotoShop准备许多图像,但这对我来说还不够好。当我有很多形状并使用多种颜色时,我要准备许多图像。

添加更多详情: (因为我使用白色边框,如果您的浏览器背景为白色,则可能看不到基本的png文件) This is my basic png file

this is my expected car 1

this is my expected car 2

将我的形状更改为黑色,希望这有助于理解我的问题。

enter image description here

enter image description here

enter image description here

2 个答案:

答案 0 :(得分:1)

由于您正在处理已加载的图像/像素,因此您可以使用BitmapData的floodFill(),这几乎可以满足您的需求。下面的方法描述也有一个例子。

它几乎可以满足您的需求,尽管在某些情况下它可能并不完美。值得一看Jan's optimizing the floodFill() method文章,这篇文章更深入。

advanced floodFill() example

答案 1 :(得分:0)

一个简单的解决方案是使用多个图层。顶层只包含边框。下层只包含没有边框的汽车。您可以使用ColorTransformColorMatrixFilter来调整汽车图层的颜色。