如何在jCanvas jQuery插件中集成globalCompositeOperation(或任何其他提供“multiply”颜色操作的插件)?
// How do I get this working? //
var ctx = document.getElementById('canvas').getContext('2d');
ctx.globalCompositeOperation = 'darker';
// With this - //
$("canvas").drawArc({
fillStyle: "#c7302a",
x: 100, y: 100,
radius: 50
});
$("canvas").drawArc({
fillStyle: "#395797",
x: 170, y: 100,
radius: 50,
opacity: 1
});发布于 2013-01-31 22:11:46
好的,我解决了。在苦苦挣扎了几个小时后,它太简单了:我使用了context blender插件。
JS代码:
$("#canvasReal").drawArc({ // Draw on the real canvas
fillStyle: "#c7302a",
x: 100, y: 100,
radius: 50
});
$("#canvasOff").drawArc({ // Draw on the off screen canvas
fillStyle: "#395797",
x: 150, y: 100,
radius: 50
});
// Blend off-screen canvas onto the real canvas
var over = canvasOff.getContext('2d');
var under = canvasReal.getContext('2d');
over.blendOnto(under,'multiply'); HTML代码:
<canvas width="500" height="250" id="canvasReal"></canvas>
<canvas width="500" height="250"id="canvasOff" style="display:none;"></canvas>发布于 2013-07-18 02:03:09
对于记录,jCanvas有一个compositing属性,该属性的值映射到ctx.globalCompositeOperation。
$("canvas").drawArc({
fillStyle: "#c7302a",
x: 100, y: 100,
radius: 50,
compositing: 'darker'
});-Caleb
https://stackoverflow.com/questions/14612931
复制相似问题