UNPKG

@onesy/utils

Version:
21 lines (20 loc) 1.12 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const clamp_1 = __importDefault(require("./clamp")); const canvasFilterOldPhoto = (value, canvas) => { const context = canvas.getContext('2d'); const imageData = context.getImageData(0, 0, canvas.width, canvas.height); const { data } = imageData; const percentage = (value_) => (Math.abs(value) / 100) * value_ * (value < 0 ? -1 : 1); for (let i = 0; i < data.length; i += 4) { data[i + 0] = (0, clamp_1.default)(((((data[i + 0] / 255) - 0.4) + (percentage(data[i + 0]) / 255)) + 0.4) * 255, 0, 255); data[i + 1] = (0, clamp_1.default)(((((data[i + 0] / 255) - 0.4) + (percentage(data[i + 0]) / 255)) + 0.4) * 255, 0, 255); data[i + 2] = (0, clamp_1.default)(((((data[i + 0] / 255) - 0.4) + (percentage(data[i + 0]) / 255)) + 0.4) * 255, 0, 255); } context.putImageData(imageData, 0, 0); return canvas; }; exports.default = canvasFilterOldPhoto;