html通过canvas转成base64的方法


Posted in HTML / CSS onJuly 18, 2019

在H5的营销活动中,经常生成一张图片让用户分享或者保存,这时候处理方案有两种。

一种是让后端生成图片,返回一个图片地址给前端展示

一种是前端自主合并生成图片展示,文中主要说明这个方案

demo

<!--生成后存放的IMG-->
<img src="" id="saveImages" alt="">

<a href="javascript:;" class="create">生成海报</a>

<!--用来生成的HTML-->
<div id="saveContent" class="saveContent">
    <img src="">
    <div class="name pa"></div>
    <div class="msg pa"></div>
</div>
<style>
#saveContent{width: 7.5rem; height: 12.27rem; position: relative;}
#saveContent img{ width: 100%;}
#saveContent .name{color: #7c5234;font-size: .3rem;top: 6.55rem;line-height: .6rem;text-align: center;left: 0;right: 0;}
#saveContent .msg{color: #7c5234;font-size: .24rem;top: 7.35rem;text-align: center;left: 0;right: 0;}
#saveContent .msg span{ color: #cf5350; font-size: .36rem;}
</style>
<!--使用最新版本的html2canvas-->
<!--官网https://html2canvas.hertzen.com/-->
<script src="//html2canvas.hertzen.com/dist/html2canvas.min.js"></script>
<script src="//static.leiting.com/lib/jquery-1.9.0.min.js"></script>
<script>
//生成
$(function(){
    var isCreate=false;
    $('a.create').on('click',function(){
        isCreate=true;
        
        $('#saveContent img').attr('src','//activity.leiting.com/wd/201904/data/images/pop/1.jpg');
        $('#saveContent .name').html('aaaaaa');
        $('#saveContent .msg').html('bbbbbbbbbb');
        html2canvas(document.getElementById('saveContent'), {
            onrendered: function(ca) {
                $('#saveImages').attr('src',ca.toDataURL('image/jpeg'));
            }
        });
    })
})
</script>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

HTML / CSS 相关文章推荐
css3新增颜色表示方式分享
Apr 15 HTML / CSS
CSS3 Columns分列式布局方法简介
May 03 HTML / CSS
布局和排版教程 纯css3实现图片三角形排列
Oct 17 HTML / CSS
html5 canvas实现跟随鼠标旋转的箭头
Mar 11 HTML / CSS
HTML5中通过li-canvas轻松实现单图、多图、圆角图绘制,单行文字、多行文字等
Nov 30 HTML / CSS
HTML5 实战PHP之Web页面表单设计
Oct 09 HTML / CSS
HTML5本地存储localStorage、sessionStorage基本用法、遍历操作、异常处理等
May 08 HTML / CSS
24个canvas基础知识小结
Dec 17 HTML / CSS
在HTML5中使用MathML数学公式的简单讲解
Feb 19 HTML / CSS
HTML+css盒子模型案例(圆,半圆等)“border-radius” 简单易上手
May 10 HTML / CSS
详解使用 CSS prefers-* 规范提升网站的可访问性与健壮性
May 25 HTML / CSS
CSS 鼠标选中文字后改变背景色的实现代码
May 21 HTML / CSS
基于Canvas+Vue的弹幕组件的实现
Jul 23 #HTML / CSS
HTML5 WebGL 实现民航客机飞行监控系统
Jul 25 #HTML / CSS
关于前端上传文件全面基础扫盲贴(入门)
Aug 01 #HTML / CSS
把富文本的回车转为br标签
Aug 09 #HTML / CSS
浅谈cookie和localStorage那些事
Aug 27 #HTML / CSS
HTML5实时语音通话聊天MP3压缩传输3KB每秒
Aug 28 #HTML / CSS
详解基于 Canvas 手撸一个六边形能力图
Sep 02 #HTML / CSS
You might like
PHP5权威编程阅读学习笔记 附电子书下载
2012/07/05 PHP
安装apache2.2.22配置php5.4(具体操作步骤)
2013/06/26 PHP
推荐10个提供免费PHP脚本下载的网站
2014/12/31 PHP
CodeIgniter开发实现支付宝接口调用的方法示例
2016/11/14 PHP
PHP实现的迪科斯彻(Dijkstra)最短路径算法实例
2017/09/16 PHP
Thinkphp5.0 框架的请求方式与响应方式分析
2019/10/14 PHP
Mootools 1.2教程 滚动条(Slider)
2009/09/15 Javascript
基于jQuery的淡入淡出可自动切换的幻灯插件
2010/08/24 Javascript
jQuery下实现等待指定元素加载完毕(可改成纯js版)
2013/07/11 Javascript
JS查找字符串中出现次数最多的字符
2016/09/05 Javascript
详解vue2.0 使用动态组件实现 Tab 标签页切换效果(vue-cli)
2017/08/30 Javascript
在vue中添加Echarts图表的基本使用教程
2017/11/22 Javascript
实例分析js事件循环机制
2017/12/13 Javascript
vue实现验证码按钮倒计时功能
2018/04/10 Javascript
通过nodejs 服务器读取HTML文件渲染到页面的方法
2018/05/17 NodeJs
vue canvas绘制矩形并解决由clearRec带来的闪屏问题
2019/09/02 Javascript
详解Vue+elementUI build打包部署后字体图标丢失问题
2020/07/13 Javascript
轻松实现TensorFlow微信跳一跳的AI
2018/01/05 Python
Python2与Python3的区别实例总结
2019/04/17 Python
Flask框架搭建虚拟环境的步骤分析
2019/12/21 Python
如何使用python实现模拟鼠标点击
2020/01/06 Python
基于Python实现人脸自动戴口罩系统
2020/02/06 Python
Python查找不限层级Json数据中某个key或者value的路径方式
2020/02/27 Python
python GUI库图形界面开发之PyQt5表格控件QTableView详细使用方法与实例
2020/03/01 Python
Python多线程Threading、子线程与守护线程实例详解
2020/03/24 Python
解决python多线程报错:AttributeError: Can't pickle local object问题
2020/04/08 Python
利用matplotlib为图片上添加触发事件进行交互
2020/04/23 Python
matplotlib绘制鼠标的十字光标的实现(内置方式)
2021/01/06 Python
微软瑞士官方网站:Microsoft瑞士
2018/04/20 全球购物
Lacoste澳大利亚官网:服装、鞋类及配饰
2018/11/14 全球购物
优秀辅导员事迹材料
2014/02/16 职场文书
酒店优秀员工事迹材料
2014/06/02 职场文书
运动会口号16字
2014/06/07 职场文书
市场营销工作计划书
2014/09/15 职场文书
大学迎新生标语
2014/10/06 职场文书
硕士毕业答辩开场白
2015/05/27 职场文书