2017-09-06 1 views
11

Ich brauche Hilfe noch einmal. Ich versuche, eine Seite als PDF mit Headless-Funktion des Chroms zu drucken. Kopf- und Fußzeile sind jedoch in der PDF vorhanden. Ich habe festgestellt, dass diese Option in Devtools implementiert wurde.zusätzliche Optionen in Chrome headless print-zu-pdf

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

Allerdings kann ich nicht finden, wie ich diese Optionen in CLI verwenden können. Auch ist es möglich, die Devtools von Selen aufzurufen?

Zusätzlich wie kann ich Page.PrintToPDF in Dev-Tools aufrufen. Ich habe versucht, den Befehl in der Konsole auszuführen. Es zeigt an, dass Seite nicht definiert ist.

+0

Zunächst einmal tun Verwenden Sie diese beiden Flags von der Befehlszeile? --headless \ # Führt Chrome im Headless-Modus aus. --disable-gpu \ # Vorübergehend für jetzt benötigt. – nuccio

Antwort

1

Fügen Sie dieses CSS zu der Seite hinzu, die Sie in ein PDF erstellen, um die Headline und Footer von Chrome Headless zu entfernen.

CSS:

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

Sie Ihren Befehl formatieren sollte wie unten um das PDF zu erstellen:

"Verzeichnispfad Chrome Executable/Chrom", "--headless", "- disable- gpu "," - print-to-pdf = "+ Verzeichnispfad zu dem Ort, an den die Datei gehen soll, gefolgt von dem gewünschten Dateinamen/Dateiname.pdf," - no-margins "," der Pfad zu der Datei, die Sie will in ein pdf umgewandelt werden "

beispiel1:

C: \ chrome-win/chrome --headless --disable-gpu --print-topdf = C: \ Benutzer \ Dateiname.pdf --keine Ränder C: \ Projects \ index.html

Beispiel2 : Sie können auch diese Funktionalität testen, indem Sie in der Befehlszeile zu Ihrem Chrome-Executable navigieren und Sie diesen Befehl ausführen:

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

Verwandte Themen