我必须用r g b a组件填充图像。它正在使用函数something.fillStyle = " rgba ("+r+","+g+","+b+","+a+")";
,但我想使用something.fillStyle = value
,其中value
是格式为alpha r g b
的十六进制的颜色值。当value
为#ffff00
(黄色)时,它很好但是当我使用带有alpha(#ffffff00
)的值时,它总是黑色的。有没有办法做到这一点?
答案 0 :(得分:1)
这是不可能的,请参阅http://www.w3.org/TR/css3-color/#numerical。十六进制颜色值不允许设置“alpha”值,这仅适用于rgba
和hsla
。
答案 1 :(得分:0)
可能。此外,您可以设置将应用的globalAlpha,即使函数中的其余颜色使用的是十六进制颜色。
if (myAlpha) {
ctx.globalAlpha = myAlpha;
}
看一下hextorbg函数here。