Heim  >  Artikel  >  Web-Frontend  >  Beispiel für den Export von HTML in PDF mit PhantomJS

Beispiel für den Export von HTML in PDF mit PhantomJS

小云云
小云云Original
2018-01-05 14:50:462836Durchsuche

Kürzlich werden wir eine PDF-Konvertierungsfunktion für unseren Artikelservice erstellen. Nach dem Vergleich denke ich, dass Phantomjs bei der Konvertierung besser ist. Dieser Artikel stellt hauptsächlich eine Zusammenfassung der Methode zum Exportieren von HTML in PDF mit PhantomJS vor. Ich hoffe, dass er allen helfen kann.

Umgebung

centos x86_64

Download

kann von der offiziellen Website heruntergeladen werden: offizielle Website

oder wget kann ebenfalls verwendet werden :

wget -P /tmp/ https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2

Installieren

// 解压
tar xjf /tmp/phantomjs-2.1.1-linux-x86_64.tar.bz2 -C /usr/local/
// 重命名
mv /usr/local/phantomjs-2.1.1-linux-x86_64 /usr/local/phantomjs
// 建立软连接
ln -s /usr/local/phantomjs/bin/phantomjs /usr/local/bin/
现在可以在终端执行phantomjs --version查看是否安装成功

Konfiguration

reicht jetzt nicht aus. Es treten einige Probleme auf, wenn PhantomJS für die Konvertierung verwendet wird:

  • Chinesische verstümmelte Zeichen

  • Inkonsistenz der Schriftstärke

Lösung:

1: Chinesische verstümmelte Zeichen

yum -y install bitmap-fonts bitmap- fonts-cjk
2: Schriftart inkonsistente Dicke

Dies ist der Grund, warum Schriftarten in Centos nicht vorhanden sind. Schriftarten können importiert werden.

  • Installieren Sie das Font-Management-Tool: yum install -y fontconfig mkfontscale

  • Besuchen Sie c:windowsfonts und kopieren Sie die erforderlichen Schriftarten. Laden Sie es dann nach /usr/share/fonts auf dem Server

  • hoch und führen Sie die drei Befehle mkfontscale, mkfontdir, fc-cache -fv aus und starten Sie dann den Server neu (Reboot).

Codeverwendung

Beginnen Sie jetzt, Sie können den Code schreiben:

import phantom from 'phantom';
const pageToPdf = (url) => {
 phantom.create().then((ph) {
 ph.createPage().then((page) => {
  page.open(url).then((status) => {
  // 配置存储的pdf地址
  page.render('存储的地址.pdf').then((status) => {
   console.log('Page rendered');
   ph.exit();
  });
  });
 });
 });
};
pageToPdf('https://www.tongbanjie.com');

Ergebnis

OK, jetzt können Sie Deploy Habe den Code ausprobiert.

Verwandte Empfehlungen:

js zum Konvertieren von HTML in PDF,

Verwenden Sie PHP unter Linux Teilen Sie Beispiele für die Konvertierung von Word in PDF

So installieren Sie die PHP-PDF-Erweiterung von XAMPP in einer Linux-Umgebung

Das obige ist der detaillierte Inhalt vonBeispiel für den Export von HTML in PDF mit PhantomJS. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn