Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Сохранить картинку на диск полученную html2canvas (https://javascript.ru/forum/misc/73377-sokhranit-kartinku-na-disk-poluchennuyu-html2canvas.html)

leonid2018 11.04.2018 10:52

Сохранить картинку на диск полученную html2canvas
 
Здравствуйте!

По клику на кнопку конвертируем содержимое div в png. Все работает. Теперь нужно по клику на другую кнопку сохранить полученную картинку в файл на компьютере.
Как узнать адрес(имя) полученной картинки? Лучше даже сразу ее обозвать image.png и сохранить на диск клиента.

$(document).ready(function() {
    $('.textS').click(function(){
	    html2canvas($("#capture7"), {
	    		allowTaint: true,
	        onrendered: function(canvas) {
					$('.paste').prepend(canvas);
            var dataURL = canvas.toDataURL();
        		console.log(dataURL);
	        }
      });
    });
	});


Заранее благодарен, js изучаю совсем недавно. :blink:

Nexus 11.04.2018 11:48

http://javascript.ru/forum/misc/7325...vas-v-jpg.html
https://jsfiddle.net/codepo8/V6ufG/2/
https://www.google.ru/search?q=js+save+canvas+as+image

leonid2018 11.04.2018 17:47

$(document).ready(function() {
    $('.textS').click(function(){
	    html2canvas($("#capture7"), {
	    		allowTaint: true,
	        onrendered: function(canvas) {
					$('div.box.paste').prepend(canvas);
             var dataURL = canvas.toDataURL("image/jpeg");
        		console.log(dataURL);
var image = canvas.toDataURL("image/png").replace("image/png", "image/octet-stream");
window.location.href=image;
var link = document.getElementById('link');
link.setAttribute('download', 'mybestimage.png');
link.setAttribute('href', canvas.toDataURL("image/png").replace("image/png", "image/octet-stream"));
link.click();
	        }
      });
    });
	});


Вот что в итоге получилось. Работает только после загрузки на хостинг (пишу, т.к. пока сам понял много времени потерял).
В коде html добавить <a id="link"></a>

Большое спасибо!


Часовой пояс GMT +3, время: 04:31.