当我尝试在 Chrome 中使用 globalCompositeOperation 来遮罩/混合形状和文本(形状遮罩/与其他形状混合效果很好)时遇到了一个问题(更具体地说,我使用的是 Chrome 12.0.7)。谁能建议我在这里可能误入歧途的地方或在画布元素中建议一种解决方法?
这是显示我所看到的图像:http: //i.stack.imgur.com/wRunv.jpg
下面是重现这些结果的代码:
<!DOCTYPE HTML>
<html>
<body>
<canvas id="testCanvas" width="500" height="500"></canvas>
<script type="text/javascript">
// setup canvas
var tcanvas = document.getElementById("testCanvas");
var tcontext = tcanvas.getContext("2d");
// draw square
tcontext.fillStyle = "#FF3366";
tcontext.fillRect(15,15,70,70);
// set composite property
tcontext.globalCompositeOperation = "xor";
// draw text
tcontext.fillStyle="#0099FF";
tcontext.font = "35px sans-serif";
tcontext.fillText("test", 22, 25);
</script>
</body>
</html>