zoukankan      html  css  js  c++  java
  • 微信小程序Canvas添加水印字体,通过setGlobalAlpha设置字体透明度。

    微信小程序自带的设置透明度只有setGlobalAlpha,但是CanvasContext.setGlobalAlpha设置透明度,是全局透明,整张图片都透明了。所以直接使用是不行的。

    换种思路实现:就是把需要加水印的图片弄成拷贝成两张(大小尺寸一样),然后一张图片加水印字体并通过CanvasContext.setGlobalAlpha设置字体透明度,然后把两张图片合并就能实现照片不透明,字体透明。

    微信扫一下小程序码可以查看实现的效果:

     

    主要js代码逻辑:

     1  var ctx= wx.createCanvasContext(‘canvanid’);
     2  var tempFilePaths =that.data.res.tempFilePaths;
     3  //获取图片基本信息
     4  wx.getImageInfo({
     5   src:tempFilePaths[0],
     6   success: function (res) {
     7   var width = res.width;
     8   var height = res.height;
    11         ctx.drawImage(res.path,0,0,width,height);
    12         ctx.beginPath();
    13         ctx.setFontSize('15');
    14         ctx.setFillStyle('red');
    15         ctx.setGlobalAlpha('0.6');
    16         ctx.fillText('加水印字体', 100,100);
    17          wx.getImageInfo({
    18             src:tempFilePaths[0],
    19             success: function (res1) {
    20              ctx.drawImage(res1.path,0,0,width,height);
    21              ctx.draw();
    22         }})
    23        
    24   }
    25 })

     

  • 相关阅读:
    对Postmaster 对 SIGQUIT 信号处理的理解
    kill bgwriter 的小实验
    我对 execl 的学习
    pid_t 数据类型
    我对bgwriter.c 与 guc 关系的初步理解
    对Linux 下 SIGUSR1 与 SIGUSR2 的理解
    向bgwriter 发送 SIGQUIT 的实验
    常用txt图标符号
    也做网页图标favicon.ico
    TakeColor颜色拾取工具
  • 原文地址:https://www.cnblogs.com/heluo/p/15371965.html
Copyright © 2011-2022 走看看