我正在尝试将文本绘制到具有特定 alpha 级别的画布上,然后剪辑文本并使用它自己的 alpha 级别绘制背景颜色:
ctx.globalCompositeOperation = '...';
ctx.fillStyle = 'rgba(' + fgcolor.r + ', ' + fgcolor.g + ', ' + fgcolor.b + ',' + (fgcolor.a / 255.0) + ')';
ctx.fillText(String.fromCharCode(chr), x,y);
ctx.globalCompositeOperation = '...';
ctx.fillStyle = 'rgba(' + bgcolor.r + ', ' + bgcolor.g + ', ' + bgcolor.b + ',' + (bgcolor.a / 255.0) + ')';
ctx.fillRect(x, y, chr_width, chr_height);
我试过玩 globalCompositeOperation 和 beginPath 但我无法达到预期的结果。我还想避免 drawImage 和屏幕外画布,因为速度是一个主要问题。