Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/408.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 特别更改画布上的笔划不透明度,但不更改颜色_Javascript_Canvas - Fatal编程技术网

Javascript 特别更改画布上的笔划不透明度,但不更改颜色

Javascript 特别更改画布上的笔划不透明度,但不更改颜色,javascript,canvas,Javascript,Canvas,我有一个漂亮整洁的脚本,可以循环使用各种颜色,它可以很好地与#xxxxxx格式配合使用,但我想更改透明度。有办法吗 我指的是ctx.strokeStyle() 以下是当前代码: canvas.strokeStyle = '#' + (((16777215 / s.length) * i).toString(16)); 它在for循环中循环,每个循环的i增量为1,它是开关的一部分。for循环如下所示:for(var i=0;i

我有一个漂亮整洁的脚本,可以循环使用各种颜色,它可以很好地与
#xxxxxx
格式配合使用,但我想更改透明度。有办法吗

我指的是
ctx.strokeStyle()

以下是当前代码:

canvas.strokeStyle = '#' + (((16777215 / s.length) * i).toString(16));

它在for循环中循环,每个循环的
i
增量为
1
,它是开关的一部分。for循环如下所示:
for(var i=0;i您可以在0到1的范围内更改
ctx.globalAlpha
,然后以不透明度绘制所需的每个元素。

使用
ctx.globalAlpha
格式,如Martin或
rgba([0-255]、[0-255]、[0-255]、[0-1])
格式。因此,您需要将整数转换为单个rgb值:

var color = ((16777215 / s.length) * i);
var r = (color >> 16) & 255;
var g = (color >> 8) & 255;
var b = color & 255;

var alpha = 0.5;

canvas.strokeStyle = "rgba("+r+","+g+","+b+","+alpha+")";

检查这个:@Manoj,这似乎无关紧要。这不是关于
的问题吗?这是当前的代码:
canvas.strokeStyle='#'+((16777215/s.length)*i.toString(16))我希望它是部分透明的@ManojAwasthi可以在css和其他一些应用程序中使用,但我在JavaScript中找不到它