在嘗試globalCompositeOperation在Chrome中更正地掩蓋/混合形狀和文本(形狀掩碼/與其他形狀混合工作得很好)時遇到問題我使用Chrome 12.0.7)。任何人都可以提出我可能在這裏誤入歧途的地方,或者在畫布元素中提出解決方法嗎?在Chrome中使用帶有形狀和文本元素的HTML5 globalCompositeOperation「xor」
這裏是一個圖像顯示我所看到的: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>
你遇到了什麼樣的問題?爲什麼你看到的不是你想要的? –
globalCompositeOperation的使用似乎按照Firefox和IE中的預期工作,但是在試圖混合文本和形狀的Chrome中似乎工作方式不同。對於特定的xor例子,與正方形重疊的文本部分應該是白色的。這可以在我原始問題中鏈接的圖像中看到。 – Ninx