Сделать скриншот части страницы
Привет. Делаю генератор анонсов для соц сетей. В него подгружается фоновое изображение и текст поверх. Собрал сначала через 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, время: 19:05. |