mirror of
https://github.com/XCharts-Team/XCharts.git
synced 2026-05-26 10:50:08 +00:00
[feature][API] add SaveAsImage()
This commit is contained in:
24
Plugins/Download.jslib
Normal file
24
Plugins/Download.jslib
Normal file
@@ -0,0 +1,24 @@
|
||||
mergeInto(LibraryManager.library, {
|
||||
Download: function (str, fn) {
|
||||
var msg = UTF8ToString(str);
|
||||
var fname = UTF8ToString(fn);
|
||||
function fixBinary(bin) {
|
||||
var length = bin.length;
|
||||
var buf = new ArrayBuffer(length);
|
||||
var arr = new Uint8Array(buf);
|
||||
for (var i = 0; i < length; i++) {
|
||||
arr[i] = bin.charCodeAt(i);
|
||||
}
|
||||
return buf;
|
||||
}
|
||||
var binary = fixBinary(atob(msg));
|
||||
var data = new Blob([binary]);
|
||||
var link = document.createElement('a');
|
||||
link.download = fname;
|
||||
link.href = URL.createObjectURL(data);
|
||||
document.body.appendChild(link);
|
||||
link.click();
|
||||
document.body.removeChild(link);
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user