Холст: замаскировать изображение и сохранить его альфа-канал?

Вот что я пытаюсь сделать:

Получите изображение A и изображение B. Изображение B представляет собой черно-белое изображение маски.Замените альфа-канал изображения A красным каналом изображения B.Нарисуйте изображение С на холсте.Нарисуйте изображение A поверх изображения C.

Все выглядит нормально до шага 4. Изображение C вообще не видно, а там, где изображение A должно быть прозрачным, есть белый цвет.

cx.putImageData(imageA, 0, 0);
var resultData = cx.getImageData(0, 0, view.width, view.height);

for (var h=0; h<resultData.data.length; h+=4) {
    resultData.data[h+3] = imageB.data[h];
}

cx.putImageData(imageC, 0, 0);
cx.putImageData(resultData, 0, 0);

Ответы на вопрос(2)

Ваш ответ на вопрос