如何将 canvas 另存为图片而不是直接下载?

How can I save the canvas as an image instead of downloading it directly?

我有一个 p5 游戏,我想将 canvas 保存为 p5.Image,以便稍后在 canvas 上显示。但是我只找到了直接下载canvas图像的saveCanvas()函数。有没有办法保存为图片供以后使用?

AFAIK p5.js 库不提供执行此操作的方法。但是,您可以通过以下代码将其转换为数据 url:

const dataURL = document.querySelector("#myCanvas")
                        .toDataURL()
                        .replace("image/png", "image/octet-stream");

然后您可以将其用作常规图像源,例如您可以将当前页面重定向到图像:

window.location.href = dataURL;