javascript - 在 Chrome 扩展中下载 Canvas 作为图像

标签 javascript html canvas google-chrome-extension

此代码适用于我将 Canvas 下载为自定义 html 页面中的图像:

var save = function() {
            var x= document.getElementById("output-canvas");
            var dt = x.toDataURL('image/png');
            this.href = dt;
};
downloadLink.addEventListener('click', save, false);

但它对于我正在开发的 Chrome 插件中的 popup.html 中的 Canvas 不起作用(没有任何错误)。

有人可以帮我解决在 Chrome 插件中下载 Canvas 项目的问题吗?

编辑:

这是我的 list 文件:

{
  ...
  "permissions": [ "contextMenus", "tabs", "http://*/*", "https://*/*", "activeTab", "storage"],
  ...
}

最佳答案

list :

  1. manifest.json 中应允许您在 Canvas 上绘制的图像 URL "permissions" :

    "permissions": [
      "activeTab",
      "https://i.imgur.com/*"
    ],
    
  2. 链接元素应该有 download attribute包含要保存的文件的名称:

    <a download="test.png" href="...">Save me</a>
    

    var link = document.createElement('a');
    link.download = 'test.png';
    link.href = canvas.toDataURL('image/png');
    document.body.appendChild(link);
    

关于javascript - 在 Chrome 扩展中下载 Canvas 作为图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42075936/

相关文章:

javascript - 将 HTML 附加到 Javascript Fireunit 测试

javascript - 将Mysql时间戳转换为本地国家时间戳

javascript - 使用动态内容附加 localStorage

html5 中的 css 部分和旁白问题

javascript - JavaScript 可以加载原始字节以在 HTML5 Canvas 中使用吗?

javascript - Express Passport.js 成功重定向不加载页面,请求保持挂起

html - 进度条-如何添加标记/标线

未指定特定宽度的 HTML 省略号

animation - 有人有 HTML5 <canvas> 动画的基本示例吗?

jquery - HTML5/JavaScript 和基于 jQuery 的图表库之间的区别