MGWatermark 添加水印
开发中一些给特定人显示的页面内容,又不能外泄怎么办???像交管六合一系统、政府政务系统都是不能外泄的,如果外泄根据什么去追究责任呢? 这就需要对页面做一些特殊处理,通常的方式就是加水印,即使外泄,也可以根据水印追究责任,从而约束外泄人员
小程序在水印方面没有特定的API,所以需要我们自定义,下面是我通过画布canvas进行水印绘制已完成添加水印的功能
文末附demo 欢迎交流!!!
主要代码进行解析
水印用了画布canvas绘制
(1) 使用 wx.createContext 获取绘图上下文 context
var ctx = wx.createCanvasContext("watermarkCanvas");
(2) 设置文字的旋转角度,角度为45°;
ctx.rotate(45 * Math.PI / 180);
(3) 开始创建一个路径。需要调用 fill 或者 stroke 才会使用路径进行填充或描边
- 在最开始的时候相当于调用了一次 beginPath。
- 同一个路径内的多次 setFillStyle、setStrokeStyle、setLineWidth等设置,以最后一次设置为准。
ctx.beginPath();
(4) 设置填充色
ctx.setFillStyle("rgba(169,169,169,.5)");
(5) 在画布上绘制被填充的文本, 文本 x坐标