canvas怎么导出绘制的图片

要从HTML canvas导出(导出)图片,您可以使用toDataURL()方法获取canvas内容的数据URL,然后创建一个新的Image元素并将其源设置为该URL。接下来,您可以使用a标签的download属性来触发下载。

以下是一个简单的示例代码:

<!DOCTYPE html>
<html>
<body>
<canvas id="myCanvas" width="200" height="100" style="border:1px solid #000000;">
</canvas>
<button onclick="exportImage()">导出画布图片</button>
 
<script>
function exportImage() {
    var canvas = document.getElementById("myCanvas");
    // 绘制一些东西到canvas上以测试导出功能
    var ctx = canvas.getContext("2d");
    ctx.fillStyle = "red";
    ctx.fillRect(0, 0, 150, 75);
    ctx.fillStyle = "green";
    ctx.fillRect(150, 0, 150, 75);
    
    // 导出canvas为图片
    var dataURL = canvas.toDataURL("image/png");
    downloadImage(dataURL, "canvas-image.png");
}
 
function downloadImage(dataURL, filename) {
    // 创建一个a元素,用于触发下载
    var link = document.createElement('a');
    link.download = filename;
    link.href = dataURL;
    link.click();
}
</script>
 
</body>
</html>

在这个例子中,当用户点击按钮时,exportImage函数被调用。这个函数首先将canvas绘制的内容转换为一个数据URL,然后调用downloadImage函数,传入这个数据URL和期望的文件名。downloadImage函数创建一个临时的a标签,设置其hrefdownload属性,并触发点击,从而开始下载过程。

效果图:

相关推荐

  1. vue3 使用html2canvas导出div指定区域内图片

    2024-03-13 15:50:02       44 阅读
  2. HTML5 Canvas图形绘制技术应用

    2024-03-13 15:50:02       9 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-13 15:50:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-13 15:50:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-13 15:50:02       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-13 15:50:02       20 阅读

热门阅读

  1. HTTP协议相关面试知识

    2024-03-13 15:50:02       23 阅读
  2. MongoDB学习笔记

    2024-03-13 15:50:02       23 阅读
  3. 【项目实践】Pyside6+Qtdesigner:登录窗体设计

    2024-03-13 15:50:02       20 阅读
  4. SQL 中避免使用 != 或 <>

    2024-03-13 15:50:02       23 阅读
  5. unityAB包管理(远程下载)

    2024-03-13 15:50:02       21 阅读
  6. 【蓝桥杯】分糖果

    2024-03-13 15:50:02       19 阅读
  7. 前端框架发展史

    2024-03-13 15:50:02       20 阅读
  8. 线上事故,到底该谁担责?

    2024-03-13 15:50:02       18 阅读