После литературного полутора дня я наконец-то нашел способ конвертировать мою динамически создаваемую «бумагу» (например, счет) для загрузки, которая работает во ВСЕХ браузерах. (Chrome - гигантская боль в ***).
В настоящее время я использую html2canvas. js и преобразую canvas в изображение и заставляю браузеры загружать его:
html2canvas($('#printableArea')[0], {
scale:0.8
}).then(function(canvas) {
var a = document.createElement('a');
a.href = canvas.toDataURL("image/png");
a.download = 'nalog.png';
a.click();
});
И остался только еще один маленький шаг к восстановлению веры в человечество. На нормальных размерах экрана div установлен на максимальную ширину 900px, и это работает. НО, когда в мобильном представлении div, из которого сделан холст, очень грубый, и мне все равно, что он отзывчивый, как и должно быть. НО это изображение из него тоже. Обычное изображение и мобильный:
Я понимаю, что холст сделан из моего текущего размера экрана. Но можно ли в моем коде динамически устанавливать размер canvas или div для обеспечения нормального размера даже в мобильном представлении?