返回顶部
首页 > 资讯 > 前端开发 > JavaScript >如何将HTML5 Canvas的内容保存为图片借助toDataURL实现
  • 244
分享到

如何将HTML5 Canvas的内容保存为图片借助toDataURL实现

2024-04-02 19:04:59 244人浏览 八月长安
摘要

本篇文章给大家分享的是有关如何将HTML5 canvas的内容保存为图片借助toDataURL实现,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧

本篇文章给大家分享的是有关如何将HTML5 canvas的内容保存为图片借助toDataURL实现,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

主要思想是借助Canvas自己的api - toDataURL()来实现,整个实现
html + javascript的代码很简单。

代码如下:


<html>
<meta Http-equiv="X-UA-Compatible" content="chrome=1">
<head>
<script>
window.onload = function() {
draw();
var saveButton = document.getElementById("saveImageBtn");
bindButtonEvent(saveButton, "click", saveImageInfo);
var dlButton = document.getElementById("downloadImageBtn");
bindButtonEvent(dlButton, "click", saveAsLocalImage);
};
function draw(){
var canvas = document.getElementById("thecanvas");
var ctx = canvas.getContext("2d");
ctx.fillStyle = "rgba(125, 46, 138, 0.5)";
ctx.fillRect(25,25,100,100);
ctx.fillStyle = "rgba( 0, 146, 38, 0.5)";
ctx.fillRect(58, 74, 125, 100);
ctx.fillStyle = "rgba( 0, 0, 0, 1)"; // black color
ctx.fillText("Gloomyfish - Demo", 50, 50);
}
function bindButtonEvent(element, type, handler)
{
if(element.addEventListener) {
element.addEventListener(type, handler, false);
} else {
element.attachEvent('on'+type, handler);
}
}
function saveImageInfo ()
{
var mycanvas = document.getElementById("thecanvas");
var image = mycanvas.toDataURL("image/png");
var w=window.open('about:blank','image from canvas');
w.document.write("<img src='"+image+"' alt='from canvas'/>");
}
function saveAsLocalImage () {
var myCanvas = document.getElementById("thecanvas");
// here is the most important part because if you dont replace you will get a DOM 18 exception.
// var image = myCanvas.toDataURL("image/png").replace("image/png", "image/octet-stream;Content-Disposition: attachment;filename=foobar.png");
var image = myCanvas.toDataURL("image/png").replace("image/png", "image/octet-stream");
window.location.href=image; // it will save locally
}
</script>
</head>
<body bGColor="#E6E6FA">
<div>
<canvas width=200 height=200 id="thecanvas"></canvas>
<button id="saveImageBtn">Save Image</button>
<button id="downloadImageBtn">Download Image</button>
</div>
</body>
</html>


以上就是如何将HTML5 Canvas的内容保存为图片借助toDataURL实现,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网JavaScript频道。

--结束END--

本文标题: 如何将HTML5 Canvas的内容保存为图片借助toDataURL实现

本文链接: https://lsjlt.com/news/82823.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何将HTML5 Canvas的内容保存为图片借助toDataURL实现
    本篇文章给大家分享的是有关如何将HTML5 Canvas的内容保存为图片借助toDataURL实现,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧...
    99+
    2024-04-02
  • HTML5如何使用Canvas实现放入图片和保存为图片功能
    这篇文章给大家分享的是有关HTML5如何使用Canvas实现放入图片和保存为图片功能的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。使用JavaScript将图片拷贝进画布要想将图...
    99+
    2024-04-02
  • html2canvas如何实现将div保存图片高清图
    这篇文章将为大家详细讲解有关html2canvas如何实现将div保存图片高清图,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。本文介绍了html2canvas把div保存图片高清图的方法示例,分享给大家,...
    99+
    2023-06-09
  • Android中将View的内容保存为图像的简单实例
    原理:创建一个新的Bitmap,然后再根据它来创建一个Canvas,最后调用View的draw方法将View画到Canvas上,这样得到的Bitmap就是我们想要的。代码: ...
    99+
    2022-06-06
    view Android
  • Html5 Canvas如何实现图片标记、缩放、移动和保存历史状态功能
    这篇文章主要介绍Html5 Canvas如何实现图片标记、缩放、移动和保存历史状态功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!效果预览动图是放cdn的,如果访问不了,可以登录在线尝试尝试: test.algbb...
    99+
    2023-06-09
  • 如何实现HTML5页面中长按保存图片功能
    这篇文章主要为大家展示了“如何实现HTML5页面中长按保存图片功能”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何实现HTML5页面中长按保存图片功能”这篇文...
    99+
    2024-04-02
  • js如何实现保存文本框内容为本地文件兼容IE,chrome,火狐浏览器
    小编给大家分享一下js如何实现保存文本框内容为本地文件兼容IE,chrome,火狐浏览器,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!很多网站实现了利用JS保存页面中文本框内容到本地,并另...
    99+
    2024-04-02
  • 如何实现Android中图片占用内存的深入分析
    小编今天带大家了解如何实现Android中图片占用内存的深入分析,文中知识点介绍的非常详细。觉得有帮助的朋友可以跟着小编一起浏览文章的内容,希望能够帮助更多想解决这个问题的朋友找到问题的答案,下面跟着小编一起深入学习“如何实现Android...
    99+
    2023-06-26
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作