Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将图像保存到硬盘驱动器_Javascript_Html_Image Processing - Fatal编程技术网

Javascript 将图像保存到硬盘驱动器

Javascript 将图像保存到硬盘驱动器,javascript,html,image-processing,Javascript,Html,Image Processing,我使用图像将图片加载到画布上。 然后,我希望能够向我的用户提供将图像保存到硬盘的选项 我已经到处搜索过了,如果我使用Ajax并从服务器上检索,有很多方法可以做到这一点 有没有一种方法可以避免访问我的服务器,并通过图像控件或画布控件直接保存到硬盘上,这样您几乎可以做到这一点。在我的评论中,我提到了一个创建和下载pdf文件的pdf生成器。这是因为打开pdf文件时,浏览器的自动操作(在大多数情况下)是下载该文件。当您对图像执行此操作时,它将在新选项卡中打开,但您至少可以右键单击并保存 它通过调用窗口来

我使用图像将图片加载到画布上。
然后,我希望能够向我的用户提供将图像保存到硬盘的选项

我已经到处搜索过了,如果我使用Ajax并从服务器上检索,有很多方法可以做到这一点


有没有一种方法可以避免访问我的服务器,并通过图像控件或画布控件直接保存到硬盘上,这样您几乎可以做到这一点。在我的评论中,我提到了一个创建和下载pdf文件的pdf生成器。这是因为打开pdf文件时,浏览器的自动操作(在大多数情况下)是下载该文件。当您对图像执行此操作时,它将在新选项卡中打开,但您至少可以右键单击并保存

它通过调用
窗口来工作。在画布上打开
toDataUrl()

下面是一个使用chartjs的示例

  • 小提琴:)
  • 片段:
var数据={
标签:[“一月”、“二月”、“三月”、“四月”、“五月”、“六月”、“七月”],
数据集:[
{
标签:“我的第一个数据集”,
填充颜色:“rgba(220220,0.2)”,
strokeColor:“rgba(2201)”,
点颜色:“rgba(220220,1)”,
pointStrokeColor:“fff”,
pointHighlightFill:“fff”,
pointHighlightStroke:“rgba(2201)”,
数据:[65,59,80,81,56,55,40]
},
{
标签:“我的第二个数据集”,
填充颜色:“rgba(151187205,0.2)”,
strokeColor:“rgba(151187205,1)”,
pointColor:“rgba(0,0,0,0)”,
pointStrokeColor:“rgba(0,0,0,0)”,
pointHighlightFill:“rgba(0,0,0,0)”,
pointHighlightStroke:“rgba(151187205,1)”,
数据:[28,48,40,19,86,27,90]
}
]
};
var chart_canvas=document.getElementById(“canvas”).getContext(“2d”);
var line\u chart=新图表(图表画布)。line(数据);
$(“按钮”)。在(“单击”,函数(){
open(document.getElementById(“canvas”).toDataURL());
});

拯救

所以您几乎可以做到这一点。在我的评论中,我提到了一个创建和下载pdf文件的pdf生成器。这是因为打开pdf文件时,浏览器的自动操作(在大多数情况下)是下载该文件。当您对图像执行此操作时,它将在新选项卡中打开,但您至少可以右键单击并保存

它通过调用
窗口来工作。在画布上打开
toDataUrl()

下面是一个使用chartjs的示例

  • 小提琴:)
  • 片段:
var数据={
标签:[“一月”、“二月”、“三月”、“四月”、“五月”、“六月”、“七月”],
数据集:[
{
标签:“我的第一个数据集”,
填充颜色:“rgba(220220,0.2)”,
strokeColor:“rgba(2201)”,
点颜色:“rgba(220220,1)”,
pointStrokeColor:“fff”,
pointHighlightFill:“fff”,
pointHighlightStroke:“rgba(2201)”,
数据:[65,59,80,81,56,55,40]
},
{
标签:“我的第二个数据集”,
填充颜色:“rgba(151187205,0.2)”,
strokeColor:“rgba(151187205,1)”,
pointColor:“rgba(0,0,0,0)”,
pointStrokeColor:“rgba(0,0,0,0)”,
pointHighlightFill:“rgba(0,0,0,0)”,
pointHighlightStroke:“rgba(151187205,1)”,
数据:[28,48,40,19,86,27,90]
}
]
};
var chart_canvas=document.getElementById(“canvas”).getContext(“2d”);
var line\u chart=新图表(图表画布)。line(数据);
$(“按钮”)。在(“单击”,函数(){
open(document.getElementById(“canvas”).toDataURL());
});

拯救

所以您几乎可以做到这一点。在我的评论中,我提到了一个创建和下载pdf文件的pdf生成器。这是因为打开pdf文件时,浏览器的自动操作(在大多数情况下)是下载该文件。当您对图像执行此操作时,它将在新选项卡中打开,但您至少可以右键单击并保存

它通过调用
窗口来工作。在画布上打开
toDataUrl()

下面是一个使用chartjs的示例

  • 小提琴:)
  • 片段:
var数据={
标签:[“一月”、“二月”、“三月”、“四月”、“五月”、“六月”、“七月”],
数据集:[
{
标签:“我的第一个数据集”,
填充颜色:“rgba(220220,0.2)”,
strokeColor:“rgba(2201)”,
点颜色:“rgba(220220,1)”,
pointStrokeColor:“fff”,
pointHighlightFill:“fff”,
pointHighlightStroke:“rgba(2201)”,
数据:[65,59,80,81,56,55,40]
},
{
标签:“我的第二个数据集”,
填充颜色:“rgba(151187205,0.2)”,
strokeColor:“rgba(151187205,1)”,
pointColor:“rgba(0,0,0,0)”,
pointStrokeColor:“rgba(0,0,0,0)”,
pointHighlightFill:“rgba(0,0,0,0)”,
pointHighlightStroke:“rgba(151187205,1)”,
数据:[28,48,40,19,86,27,90]
}
]
};
var chart_canvas=document.getElementById(“canvas”).getContext(“2d”);
var line\u chart=新图表(图表画布)。line(数据);
$(“按钮”)。在(“单击”,函数(){
open(document.getElementById(“canvas”).toDataURL());
});

拯救

所以您几乎可以做到这一点。在我的评论中,我提到了一个创建和下载pdf文件的pdf生成器。这是因为打开pdf文件时,浏览器的自动操作(在大多数情况下)是下载该文件。当您对图像执行此操作时,它将在新选项卡中打开,但您至少可以右键单击并保存

它通过调用
窗口来工作。在画布上打开
toDataUrl()

下面是一个使用chartjs的示例

<
myCanvas = document.getElementById("myCanvas");

$("body").append("<a id='hiddenLink' href='" + myCanvas.toDataURL() + "' style='display:none;' download>Download Pic</a>");
$("#hiddenLink")[0].click();
$("#hiddenLink").remove();
myCanvas = document.getElementById("myCanvas");

a = document.createElement("a");
a.href = myCanvas.toDataURL();
a.download = "download";
a.click();