Wie setze ich dpi mit phantomjs Knoten?

8

Ich benutze Phantomjs Knotenmodul. Unten ist der Link wo ich dieses Modul bekomme.

Ссылка

das funktioniert wirklich gut, wenn ich eine JPG-Bilddatei von HTML erstellen. aber die Standardeinstellung "dpi" ist 72, was nicht gut zum Drucken der Bilddatei ist. Also ich möchte die dpi einstellen, wenn ich das Bild rendert.

von dem obigen Link lese ich ein Beispiel wie page.set ('viewportSize', {width: 640, height: 480}). Es stellt die Bildgröße perfekt ein. aber ich möchte dpi des Bildes einstellen, bitte führe mich, wie ich das erreichen kann.

%Vor%     
Bharat Bhushan 06.08.2014, 07:35
quelle

2 Antworten

6

Es gibt zwei Möglichkeiten.

1. Zoom

Sie können page.zoomFactor verwenden, um die Seite zu vergrößern. Sie müssen die Ansichtsfenstergröße entsprechend anpassen, bevor Sie den ZoomFactor ändern:

%Vor%

2. PDF

Wenn Sie sich mit der Qualität befassen, rendern Sie ein PDF der Seite. Eine PDF ist vektorbasiert und Sie können so viel hineinzoomen, wie Sie möchten. Es funktioniert mit der Erweiterung pdf , wenn Sie den Dateinamen render :

geben %Vor%

Sie können sehen, wie das Beispiel rasterize.js die Seitengrößen behandelt. Es gibt jedoch einige Einschränkungen. Sie müssen daran denken, die Breite der gerenderten PDF-Datei anzupassen. Siehe zum Beispiel diese (unbeantwortete) Frage .

    
Artjom B. 06.08.2014 09:06
quelle
-1

Meine Lösung war, den Phantom-PDF-Rendering-Prozess nicht zu verwenden, da die Qualität der erzeugten PDFs inakzeptabel schlecht ist.

Zuerst erzeuge ich das Bild mit der Auflösung, die ich für die benötigte Auflösung benötige. Für mich war das 3300x2550 (11in x 8,5in bei 300dpi) und verwendete einen Seitenzoomfaktor von 2,364 (nächste Annäherung eines Divisors von 11, weil wir 11pt font zu 2550/1080; 26/11 verwenden), um die ungefähre Schriftgröße beizubehalten wie auf 1080p. Dann verwende ich ein externes Dienstprogramm (iText oder Aspose zum Beispiel), um das generierte Bild in eine PDF zu pushen. Es druckt schön und sieht gut in der pdf aus. Das einzige Problem, das ich habe, ist der Speicherplatz ist etwas erheblich, weil eine 3300x2550 Bilddatei bei jedem Lauf generiert wird.

    
Taugenichts 14.10.2015 18:04
quelle

Tags und Links