【问题标题】:Overwrite only last default argument in function仅覆盖函数中的最后一个默认参数
【发布时间】:2018-03-10 15:59:28
【问题描述】:

我正在使用canvas2image下载我的网页截图。我想覆盖下载图像的默认文件名。它是下载图像函数的最后一个参数。

写图片的函数

return {
        saveAsImage: saveAsImage,
        saveAsPNG: function (canvas, width, height, fileName) {
            return saveAsImage(canvas, width, height, 'png',fileName);
        },

所以在这里我用所需的文件名覆盖了默认文件名,如下所示

我的图片保存功能

 $("#btnSave").click(function() { 
    html2canvas($("#target"), {
        onrendered: function(canvas) {
            // Convert and download as image 
            Canvas2Image.saveAsPNG(canvas,fileName = 'Calendar.png');
        }
    });
});

但它仍然根据文档下载默认名称为 Date.now() 的图像

if (type == undefined) { type = 'png'; }
            filename = filename == undefined||filename.length === 0 ?Date.now()+'.'+type: filename+'.'+type

另外,我没有使用来自 github 页面的最新库,而是在此 link 中定义的库 请查看此链接以查找我正在使用的实际库。我认为在最新版本中,他们已删除了 fileName 参数(我最初使用的是最新版本,然后图像以“下载”作为名称下载,没有任何扩展名)

【问题讨论】:

  • 您不应该期望人们通过提供的链接搜索您所引用的内容。您应该在问题本身中包含所有可能的内容。 How to ask a good question.
  • Canvas2Image.saveAsPNG(canvas,100,100,'png','Calendar.png');
  • @peteb 很抱歉提供了一个很长的列表,仅供参考。必要的事情就在问题本身(至少我的感受)

标签: javascript jquery html2canvas


【解决方案1】:

调用函数时,需要提供所有必需的参数。

所以不是

Canvas2Image.saveAsPNG(canvas,fileName = 'Calendar.png');

做:-

Canvas2Image.saveAsPNG(canvas,100,100,'png','Calendar.png');

注意:-你需要根据自己的意愿改变宽度和高度

【讨论】:

  • 我希望它是默认的,我的意思是 html 元素有什么。只是想更改名称
猜你喜欢
  • 1970-01-01
  • 2018-07-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多