it-swarm.com.de

zusätzliche Optionen in Chrome headless print-to-pdf

Ich brauche noch einmal Hilfe. Ich versuche, eine Seite mit dem Headless-Feature des Chrome als PDF zu drucken. Kopf- und Fußzeile sind jedoch im PDF enthalten. Ich habe festgestellt, dass diese Option in Devtools implementiert wurde.

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

Ich kann jedoch nicht finden, wie ich diese Optionen in CLI verwenden kann. Kann man die Devtools auch von Selen aus aufrufen?

Wie kann ich außerdem Page.PrintToPDF in Entwicklungswerkzeugen aufrufen? Ich habe versucht, den Befehl in Console auszuführen. Es wird angezeigt, dass Seite nicht definiert ist. 

18
user2580925

Fügen Sie dieses CSS der von Ihnen erstellten Seite in ein PDF hinzu, um die Kopf- und Fußzeile von Chrome Headless zu entfernen.

CSS:

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

Sie sollten Ihren Befehl wie folgt formatieren, um die PDF-Datei zu erstellen:

"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"

Beispiel 1:

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

Beispiel 2

Sie können diese Funktion auch testen, indem Sie in Ihrer Befehlszeile zu dem Ordner navigieren, der die ausführbare Datei von Chrome enthält, und diesen Befehl ausführen:

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

edit: fester Tippfehler

8
nuccio

"/path/to/google-chrome": Dies ist der Pfad von Google Chrome.

'—headless ': Chrome-Browser in einer Umgebung ohne Kopfhörer ohne vollständige Browser-Benutzeroberfläche

'—run-all-compositor-stages-before-draw': Verhindert die Erstellung von PDF-Dateien, bevor alle Daten gerendert werden (Nachdem alle Daten gerendert wurden, wird das PDF erstellt).

'—virtual-time-budget = x: Es verzögert den Erstellungsprozess von Pdf, wobei x die Millisekunden ist.

'—print-to-pdf': Dieses Flag erstellt das PDF der angegebenen URL.

URL: Die URL der Webseite.

PDF-Seitenformatierung (mit CSS) Hinzufügen (zu CSS-Dateien):

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

Der obige CSS-Code hat keine Auswirkung auf das Webseiten-Rendering, jedoch nur auf die Formatierung der Seite in PDF.

0
Ayaz Ur Rashid