如何将 HTML canvas 导出为可下载的图像?
How do I export a HTML canvas to an image that can be downloaded?
我目前有一个 HTML canvas 插值数据点,我想获取下面显示的 canvas 并允许用户按下按钮并将其下载到他们的电脑.
一般来说,我对 HTMl canvas 有非常基本的经验,但我该怎么做呢?我假设我必须编写并将其与 canvas 或网页上的按钮相关联。哪一个会更容易?
感谢您的帮助。
function downloadCanvasContentFn(canvasId = "", fileName = "") {
let id = "canvasDownloadLinkId";
//get the link if already exisit in page
let link = document.getElementById(id);
//if not create one
if (link == null) {
//Create a link
link = document.createElement('a');
link.id = id;
}
//set file name
link.download = fileName + '.png';
//get canvas as data URL
link.href = document.getElementById(canvasId).toDataURL()
//click -- this will download
link.click();
}
上述函数可以是一个可重复使用的函数,以帮助将 canvas 下载为文件。现在只需传递图像的 canvasid 和文件名。 :)
我目前有一个 HTML canvas 插值数据点,我想获取下面显示的 canvas 并允许用户按下按钮并将其下载到他们的电脑.
一般来说,我对 HTMl canvas 有非常基本的经验,但我该怎么做呢?我假设我必须编写并将其与 canvas 或网页上的按钮相关联。哪一个会更容易?
感谢您的帮助。
function downloadCanvasContentFn(canvasId = "", fileName = "") {
let id = "canvasDownloadLinkId";
//get the link if already exisit in page
let link = document.getElementById(id);
//if not create one
if (link == null) {
//Create a link
link = document.createElement('a');
link.id = id;
}
//set file name
link.download = fileName + '.png';
//get canvas as data URL
link.href = document.getElementById(canvasId).toDataURL()
//click -- this will download
link.click();
}
上述函数可以是一个可重复使用的函数,以帮助将 canvas 下载为文件。现在只需传递图像的 canvasid 和文件名。 :)