javascript 保存成jpg到游客浏览器,而不是上传到imgbb?[已关闭]

vuktfyat  于 2023-08-02  发布在  Java
关注(0)|答案(1)|浏览(110)

已关闭。此问题需要details or clarity。它目前不接受回答。
**希望改进此问题?**通过editing this post添加详细信息并阐明问题。

昨天关门了。
Improve this question
我有一个脚本,它的破碎,目前正试图上传形式的内容到imgbb。我不想这样,而是我希望它保存到一个JPG文件的画布内容在游客的Web浏览器本地。我该怎么做?下面是当前代码:

const formData = new FormData();
            formData.append("image", canvas.toDataURL().split(',')[1])
            var req = new XMLHttpRequest()
            req.onreadystatechange = function () {
                if (this.readyState == 4 && this.status == 200) {
                    response = JSON.parse(this.response)
                    console.log(response)
                    url = response.data.image.url
                    $('#Loading').hide();
                    $('#URL').val(url).fadeIn();
                }
            }
            req.open("POST", 'https://api.imgbb.com/1/upload?key=xxxxxxxxxxxxxxxxxxxxxxxxxx', true)
            req.send(formData)

        },

字符串
我在How To Save Canvas As An Image With canvas.toDataURL()?上试过这个教程,但是它不起作用,而且与许多浏览器都不兼容。
我尝试的一切都不起作用。昨天我都快疯了。

b4lqfgs4

b4lqfgs41#

要将画布保存为JPEG文件,您可以使用toDataURL生成的URL并创建一个下载链接,该链接将被自动单击

// Convert canvas content to JPEG data URL
const dataURL = canvas.toDataURL('image/jpeg');

// Create a download link
const link = document.createElement('a');
link.href = dataURL;
link.download = 'canvas_image.jpeg';

// Simulate a click on the link to trigger the download
link.click();

字符串
这是最基本的例子,应该在常规环境中工作,你能提供更多的细节来检查为什么不工作吗?

相关问题