canvas 下载二维码和图片加水印的方法


Posted in HTML / CSS onMarch 21, 2018

昨天介绍了一个生成二维码的插件QRCode.js,它是借助HTML5 Canvas绘制而成。所以,今天的主角就是canvas啦–canvas的实际应用。

一、下载二维码(查看如何生成二维码

HTMLCanvasElement提供了toDataURL方法,该方法返回一个包含被类型参数规定图像表现格式的data URI。通过该方法我们就可以生成二维码图片并下载了。示例如下:

/*html*/
<div id="qrcode">div>
<a href="javascript:;" download="二维码" id="down">下载二维码</a>

/*js*/
var canvas = document.getElementsByTagName('canvas')[0];
var downImg = document.getElementById('down')
img.href = document.getElementsByTagName('canvas')[0].toDataURL('image/png')

二、图片加水印

利用canvas的fillText和drawImage方法可以轻松实现给图片加水印。示例如下:

/*html*/
<canvas id="canvas"></canvas>

/*js*/
var img = new Image();   // 创建img元素
var canvas = document.getElementById('canvas')
var ctx = canvas.getContext('2d');
img.src = 'myImage.png';

img.onload = function(){
    ctx.drawImage(img, 0, 0);
    ctx.font="30px yahei";   //设置水印文字
    ctx.fillText("大前端", 1100, 260)
}

今天暂时写到这里,欢迎分享关于canvas的其他应用。希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

HTML / CSS 相关文章推荐
CSS3+DIV实现漂亮的动画彩色标签
Jun 16 HTML / CSS
css3 box-shadow阴影(外阴影与外发光)图示讲解
Aug 11 HTML / CSS
CSS3不透明度实例讲解
Apr 26 HTML / CSS
CSS3制作彩色进度条样式的代码示例分享
Jun 23 HTML / CSS
css3新单位vw、vh的使用教程
Mar 23 HTML / CSS
使用HTML5 Canvas绘制直线或折线等线条的方法讲解
Mar 14 HTML / CSS
详解Html5微信支付爬坑之路
Jul 24 HTML / CSS
HTML5: Web 标准最巨大的飞跃
Oct 17 HTML / CSS
HTML5 绘制图像(上)之:关于canvas元素引领下一代web页面的问题
Apr 24 HTML / CSS
html5 更新图片颜色示例代码
Jul 29 HTML / CSS
原生CSS实现文字无限轮播的通用方法
Mar 30 HTML / CSS
详解Html5项目适配系统深色模式方案总结
Apr 14 HTML / CSS
快速创建 HTML5 Canvas 电信网络拓扑图的示例代码
Mar 21 #HTML / CSS
html5调用app分享功能示例(WebViewJavascriptBridge)
Mar 21 #HTML / CSS
浅谈html5与APP混合开发遇到的问题总结
Mar 20 #HTML / CSS
在canvas上实现元素图片镜像翻转动画效果的方法
Mar 20 #HTML / CSS
HTML5 新表单类型示例代码
Mar 20 #HTML / CSS
浅谈基于Canvas的手绘风格图形库Rough.js
Mar 19 #HTML / CSS
基于HTML5 WebGL的3D机房的示例
Mar 16 #HTML / CSS
You might like
在html文件中也可以执行php语句的方法
2015/04/09 PHP
PHP连接MySQL数据库三种实现方法
2020/12/10 PHP
jquery isEmptyObject判断是否为空对象的函数
2011/02/14 Javascript
使用jQuery清空file文件域的解决方案
2013/04/12 Javascript
固定背景实现的背景滚动特效示例分享
2013/05/19 Javascript
jQuery实现类似滑动门切换效果的层切换
2013/09/23 Javascript
JS获取网页属性包括宽、高等等
2014/04/03 Javascript
JavaScript列表框listbox全选和反选的实现方法
2015/03/18 Javascript
React.js中常用的ES6写法总结(推荐)
2017/05/09 Javascript
javascript实现非常简单的小数取整功能示例
2017/06/13 Javascript
微信小程序排坑指南详解
2018/05/23 Javascript
[01:08]DOTA2次级职业联赛 - Wings 战队宣传片
2014/12/01 DOTA
[59:07]海涛为你详解DOTA2新版本“贤哲秘契”
2014/11/22 DOTA
从零学Python之入门(二)基本数据类型
2014/05/25 Python
Python中的生成器和yield详细介绍
2015/01/09 Python
python遍历类中所有成员的方法
2015/03/18 Python
简单介绍Python中的round()方法
2015/05/15 Python
python获取指定路径下所有指定后缀文件的方法
2015/05/26 Python
python3模块smtplib实现发送邮件功能
2018/05/22 Python
python3用PIL把图片转换为RGB图片的实例
2019/07/04 Python
Django 项目重命名的实现步骤解析
2019/08/14 Python
python统计字符串中字母出现次数代码实例
2020/03/02 Python
python 实现在无序数组中找到中位数方法
2020/03/03 Python
Django+python服务器部署与环境部署教程详解
2020/03/30 Python
matlab中二维插值函数interp2的使用详解
2020/04/22 Python
如何导出python安装的所有模块名称和版本号到文件中
2020/06/05 Python
python3.6.5基于kerberos认证的hive和hdfs连接调用方式
2020/06/06 Python
Python爬虫实例——爬取美团美食数据
2020/07/15 Python
python用Tkinter做自己的中文代码编辑器
2020/09/07 Python
html5指南-3.如何实现html元素拖拽功能
2013/01/07 HTML / CSS
HTML5 在canvas中绘制矩形附效果图
2014/06/23 HTML / CSS
大学生职业生涯规划范文
2013/12/31 职场文书
2014年就业工作总结
2014/11/26 职场文书
windows下快速安装nginx并配置开机自启动的方法
2021/05/11 Servers
MySQL窗口函数的具体使用
2021/11/17 MySQL
Go语言读取txt文档的操作方法
2022/01/22 Golang