shot-web-screen
Version:
截屏、截图插件、capture screen
55 lines (54 loc) • 1.84 kB
TypeScript
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;