पियरे के जवाब के अलावा आप भी एक काले और सफेद छवि अपनी छवि के लिए एक मुखौटा स्रोत के रूप में अपने डेटा को कॉपी करके एक CanvasPixelArray में की तरह उपयोग कर सकते हैं:
var
dimensions = {width: XXX, height: XXX}, //your dimensions
imageObj = document.getElementById('#image'), //select image for RGB
maskObj = document.getElementById('#mask'), //select B/W-mask
image = imageObj.getImageData(0, 0, dimensions.width, dimensions.height),
alphaData = maskObj.getImageData(0, 0, dimensions.width, dimensions.height).data; //this is a canvas pixel array
for (var i = 3, len = image.data.length; i < len; i = i + 4) {
image.data[i] = alphaData[i-1]; //copies blue channel of BW mask into A channel of the image
}
//displayCtx is the 2d drawing context of your canvas
displayCtx.putImageData(image, 0, 0, 0, 0, dimensions.width, dimensions.height);
हाँ, यदि मुखौटा छवि पर वास्तव में कुछ पारदर्शी क्षेत्र है तो आप कैनवास के शीर्ष पर छवि खींचने के लिए आसानी से 'drawImage()' का उपयोग कर सकते हैं। पारदर्शी भाग अंतर्निहित छवि/कैनवास के माध्यम से चमकता है। – devnull69
मेरा मतलब यह नहीं है कि, मैं छवि को क्लिप क्लिप करना चाहता हूं, ताकि शेष छवि पारदर्शी हो जाए। – Jaap