【发布时间】:2018-12-16 11:52:07
【问题描述】:
我知道如何使用feComponentTransfer 来调整RGBA 值,使用table 和tableValues。
但是有没有办法使用 alpha 值作为输入(例如)来调整 R、G 或 B 值?
为什么?假设我合成了许多半透明的形状,在这些形状重叠的地方产生了不同的不透明度。我想使用这些不透明度值来使用基于每个像素不透明度的查找表来调整 RGB。
例如,在this image 中,椭圆、正方形和文本使用 alpha 0.1 绘制。重叠区域具有更高的 alpha 值。
如何将这张图像中的每个像素用 alpha 0.1 映射到 rgba(255,0,0,1) 以及在任何地方用 alpha 0.2 映射到 rgba(0,255,0,1)(并在抗锯齿边缘上的这两个 alpha 值之间插入替换颜色)?更多颜色将分配给所有其他不超过 1 的 alpha 值。
制作这样一个查找表很容易。
但是如何使用 svg 过滤器应用于图像?
【问题讨论】:
-
我认为没有一种简单的方法可以捕捉 alpha 层并为每个 alpha 值分配不同的颜色。
标签: svg svg-filters