canvas教程

canvas如何转存为图片!

字号+ 作者:H5之家 来源:H5之家 2017-01-06 14:06 我要评论( )

canvas如何转存为图片!

  有时候,我们绘制好的canvas想存储为本地图片,该怎么做呢?canvas提供了一个重要的方法toDataURL(),这个方法能把画布里的图案转变成base64编码格式的png或者其他格式的图片(根据你传入的mine类型的参数),然后返回 Data URL数据。接下来我们看具体是怎么实现的。

  html页面一个canvas画布:

  • <canvas id="canvas"></canvas>
  • <button class="button-balanced" id="save">save</button>
  • <br />
  • <a href="" download="canvas_love.png" id="save_href">
  •     <img src="" id="save_img"/>
  • </a>

    复制代码

      对应的js代码实现:

  • var c=document.getElementById("canvas");
  • function drawLove(canvas){
  •     let ctx = canvas.getContext("2d");
  •     ctx.beginPath();
  •     ctx.fillStyle="#E992B9";
  •     ctx.moveTo(75,40);
  •     ctx.bezierCurveTo(75,37,70,25,50,25);
  •     ctx.bezierCurveTo(20,25,20,62.5,20,62.5);
  •     ctx.bezierCurveTo(20,80,40,102,75,120);
  •     ctx.bezierCurveTo(110,102,130,80,130,62.5);
  •     ctx.bezierCurveTo(130,62.5,130,25,100,25);
  •     ctx.bezierCurveTo(85,25,75,37,75,40);
  •     ctx.fill();
  • }
  • drawLove(c);

  • var butSave = document.getElementById("save");
  • butSave.onclick=function(){
  •     var svaeHref = document.getElementById("save_href");
  •     /*
  •      * 传入对应想要保存的图片格式的mime类型
  •      * 常见:image/png,image/gif,image/jpg,image/jpeg
  •      */
  •     var img = document.getElementById("save_img");
  •     var tempSrc = canvas.toDataURL("image/png");
  •     svaeHref.href=tempSrc;
  •     img.src=tempSrc;  
  • };

    复制代码

      点击save按钮后,显示图片,点击图片即可弹出下载对话框。

      效果如下:

    083410taaqxnxcyqaak0aj.gif (48.21 KB, 下载次数: 1)

    下载附件

    2016-10-19 17:35 上传



     

  • 1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章
    • 怎样在canvas 上添加Button呢?

      怎样在canvas 上添加Button呢?

      2016-03-27 10:00

    • roland canvas download

      roland canvas download

      2015-11-22 09:00

    • JDownloader v2 多国语言含中文 + 教程

      JDownloader v2 多国语言含中文 + 教程

      2015-10-22 08:48

    网友点评