Я хочу преобразовать HTML-страницу в PDF-формат A4.
page.paperSize = {
format: 'A4',
orientation: 'portrait',
border: '1cm'
};
Есть ли способ масштабирования веб-сайта, чтобы он соответствовал ширине A4?
Если у меня есть следующий HTML:
<div style="width:1500px; text-align:right;">
right 1500px
</div>
Правый конец div падает со страницы.
Я играл со свойством viewportSize
:
page.viewportSize = {
width: 480,
height: 800
};
Я бы ожидал, что большая ширина окна просмотра приведет к большей части страницы, отображаемой в PDF.
page.zoom
Также не имеет желаемого эффекта.
PDF файлы - это отчеты. Для профессионального вида они должны быть A4, а не произвольным размером.
Или phantomjs неправильный инструмент для моей проблемы?
Я использую phantomjs версии 1.9.7 на Ubuntu 12.04.4.
Edit:
Кажется, здесь есть три разных измерения:
-
vieportSize
, который является размером, который используется для рендеринга, как указано в документах -
paperSize
, который представляет собой размер полученного PDF-документа. - а затем размер экрана. phantomjs всегда соответствует ширине одного экрана по размеру бумаги. Размер экрана моей версии phantomjs составляет 1024 x 768 пикселей. Если порт представления больше размера экрана, то все, что находится за пределами 1024 пикселей, не отображается.
Я еще не нашел способ изменить размер экрана.
Я нашел это путем рендеринга http://www.whatismyscreenresolution.com/
в PDF.