watermark-js-plus
Version:
watermark for the browser
29 lines (27 loc) • 1.08 kB
JavaScript
var blindDecodeFallback;
var registerBlindDecodeFallback = function (fallback) {
blindDecodeFallback = fallback;
};
var applyBlindDecodeComposite = function (_a) {
var ctx = _a.ctx, width = _a.width, height = _a.height, fillColor = _a.fillColor, compositeOperation = _a.compositeOperation, compositeTimes = _a.compositeTimes;
if (!(compositeTimes > 0)) {
return;
}
var previousCompositeOperation = ctx.globalCompositeOperation;
ctx.globalCompositeOperation = compositeOperation;
if (ctx.globalCompositeOperation !== compositeOperation && blindDecodeFallback) {
ctx.globalCompositeOperation = previousCompositeOperation;
blindDecodeFallback({
ctx: ctx,
fillColor: fillColor,
compositeOperation: compositeOperation,
compositeTimes: compositeTimes,
});
return;
}
ctx.fillStyle = fillColor;
for (var i = 0; i < compositeTimes; i++) {
ctx.fillRect(0, 0, width, height);
}
};
export { applyBlindDecodeComposite, registerBlindDecodeFallback };