Сделать скриншот части страницы
Привет. Делаю генератор анонсов для соц сетей. В него подгружается фоновое изображение и текст поверх. Собрал сначала через canvas, но столкнулся с проблемой сглаживания шрифта.
Шрифт выглядит очень грубо(хотя подгружал даже векторный исходник) и нет возможности настроить letter-spacing для него. Поэтому интересно, можно ли по клику сделать скриншот определенного блока и скачать его как jpg/png? Есть ведь сервисы, которые делают скриншоты страниц. Кто что знает об этом? Спасибо. UPD. Видел решения с участием сервер, хочется найти решение только на клиенте. |
|
EmperioAf,
спасибо |
Я нашел решение, если вы наткнулись на эту тему, потому что столкнулись со схожей проблемой, то я сейчас опишу что для этого нужно:
подключаете три библиотеки html2canvas.js - переводит область в canvas canvas-to-blob.js - переводит canvas в блоб FileSaver.js - скачивает function exportimage(){ html2canvas($('#image'), { onrendered: function (canvas) { canvas.toBlob(function(blob) { saveAs(blob ,"image.png"); }, "image/png"); var img = canvas.toDataURL('image/png').replace("image/png", "image/octet-stream"); window.location.href = img; } }); } |
Часовой пояс GMT +3, время: 16:15. |