Псевдоселекторы для @ page
В соответствии с документацией или CSS spec , вы можете установить различную ориентацию для некоторых страниц с помощью CSS.
@page :pseudo-selector{
size: landscape;
}
Допустимые и работающие псевдоселекторы (которые я тестировал с кукловодом и Google Chrome) включают в себя
:blank
:first
:left
:right
Результат: ![enter image description here](https://i.stack.imgur.com/t92ux.png)
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`})