UNPKG

shot-web-screen

Version:
55 lines (54 loc) 1.84 kB
import { RENDERINFO } from '../types/index'; /** * @func 绘制马赛克、设计与其他图形不同:马赛克改变的是底图像素点颜色配置 * @desc * @param {} * @return {} */ declare class drawMosaic { record: Map<string, any>; baseImageCtx: CanvasRenderingContext2D | null; constructor(); /** * @func 绘制马赛克 * @desc 绘制的马赛克 * @param {} * @return {} */ draw(canvas: HTMLCanvasElement, image: HTMLCanvasElement | HTMLImageElement, drawList?: Array<RENDERINFO>): void; /** * 为一个位置添加马赛克 * 实现思路: * 1. 获取鼠标划过路径区域的图像信息 * 2. 将区域内的像素点绘制成周围相近的颜色 * @param imageCtx 底图上下文 * @param ctx 绘制执行上下文 * @param x 当前鼠标X轴坐标 * @param y 当前鼠标Y轴坐标 * @param size 马赛克画笔大小 */ addMosaic(imageCtx: CanvasRenderingContext2D, ctx: CanvasRenderingContext2D, x: number, y: number, size: number): void; /** * @func 获取底图执行上下文,用于获取底图imageData * @desc * @param {} * @return {} */ getImageCtx(image: HTMLCanvasElement | HTMLImageElement, width: number, height: number): CanvasRenderingContext2D; /** * 获取区域平均色 * @param imgData 需要进行操作的图片 * @param size 区域大小 */ private getAverageColor; /** * 设置图像指定坐标位置的颜色 * @param imgData 需要进行操作的图片 * @param x x点坐标 * @param y y点坐标 * @param colors 颜色数组 */ setAxisColor(imgData: ImageData, x: number, y: number, colors: Array<number>): void; } declare const _default: drawMosaic; export default _default;