Кукловод - Как изменить ориентацию некоторых страниц в документе? - PullRequest
0 голосов
/ 02 марта 2019

Я использую Puppeteer для создания 30-страничного PDF-файла, и некоторые страницы должны быть ориентированы на альбомную ориентацию.Как я могу указать это только для страницы x и страницы y?

1 Ответ

0 голосов
/ 03 марта 2019

Псевдоселекторы для @ page

В соответствии с документацией или CSS spec , вы можете установить различную ориентацию для некоторых страниц с помощью CSS.

@page :pseudo-selector{
 size: landscape;
}

Допустимые и работающие псевдоселекторы (которые я тестировал с кукловодом и Google Chrome) включают в себя

:blank
:first
:left
:right

Результат: enter image description here

PS: на момент ответа другие селекторы, такие как :nth-child и идентификаторы страниц, упомянутые в черновике, не работают в хромовой версии 73.

Альтернативный способ

Единственный другой способ справиться сэто печатать страницы отдельно, а затем объединять их позже.Вы можете печатать определенные страницы с помощью pageRanges,

page.pdf({pageRanges: '1-5', path: 'first.pdf'})

и использовать пакеты, такие как pdf-merge, чтобы объединить два файла PDF.

const PDFMerge = require('pdf-merge');
PDFMerge(['first.pdf', 'second.pdf'], {output: `${__dirname}/3.pdf`})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...