在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,canvas,base64

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
评论“html通过canvas转成base64的方法”
暂无“html通过canvas转成base64的方法”评论...

RTX 5090要首发 性能要翻倍!三星展示GDDR7显存

三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。

首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。

据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。