it-roy-ru.com

дополнительные параметры в Chrome без печати в PDF

Мне нужна помощь еще раз. Я пытаюсь распечатать страницу в формате PDF, используя функцию безголового Chrome. Тем не менее, верхний и нижний колонтитулы присутствует в PDF. Я обнаружил, что эта опция была реализована в Devtools.

https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-printToPDF

Тем не менее, я не могу найти, как я могу использовать эти параметры в CLI. Также возможно ли вызвать Devtools из селена?

Кроме того, как я могу вызвать Page.PrintToPDF в инструментах Dev. Я пытался запустить команду в консоли. Это показывает, что страница не определена. 

18
user2580925

Добавьте этот CSS на страницу, которую вы создали, в PDF, чтобы удалить реализованные в Chrome Headless верхний и нижний колонтитулы.

CSS:

@media print {
  @page { margin: 0; }
  body { margin: 1.6cm; }
}

Вы должны отформатировать вашу команду, как показано ниже, чтобы создать PDF:

"C:\PATH\TO\CHROME\EXECUTABLE\FILE", "--headless","--disable-gpu","--print-to-pdf=" + directory path to where you want the file to go followed by the desired file name/fileName.pdf,"--no-margins", "the path to the file you want turned into a pdf"

Пример 1:

C:\chrome-win/chrome --headless --disable-gpu --print-to-pdf=C:\user\fileName.pdf --no-margins C:\Projects\index.html

Пример 2:

Вы также можете проверить эту функцию, перейдя в командной строке к папке, содержащей исполняемый файл Chrome, и выполнив эту команду:

chrome --headless --disable-gpu --print-to-pdf https://www.chromestatus.com/

Правка: исправлена ​​опечатка

8
nuccio

"/path/to/google-chrome": это путь к Google Chrome.

'—headless ': браузер Chrome в автономной среде без полноценного пользовательского интерфейса браузера

'—run-all-compositor-stages-before-draw': предотвращает создание PDF-файла до того, как все данные будут отображены (после того, как все данные будут отображены, будет создан PDF-файл).

'—virtual-time-budget = x: задерживает процесс создания Pdf, здесь x будет миллисекундами.

'—print-to-pdf': этот флаг создает pdf данного URL.

URL: URL веб-страницы.

Форматирование страницы PDF (с использованием CSS) Добавление этого (в CSS-файлы):

 @media print {
            @page { margin: 0mm 0mm 0mm 0mm;
            size:8in 9.5in;
            }
            }

Вышеприведенный код CSS не влияет на отображение веб-страниц, но влияет только на форматирование страницы в PDF.

0
Ayaz Ur Rashid