So konvertieren Sie HTML-Seiten mit PHP in Bilder

PHPz
Freigeben: 2023-04-03 15:40:02
Original
1534 Leute haben es durchsucht

In der Webentwicklung ist es häufig erforderlich, HTML-Seiten in Bilder umzuwandeln, um Funktionen wie die Generierung von Bestätigungscodes und E-Mail-Screenshots zu ermöglichen. Als sehr beliebte Server-Skriptsprache kann PHP auch HTML in Bilder konvertieren. In diesem Artikel wird erläutert, wie Sie mit PHP HTML-Seiten in Bilder konvertieren.

  1. Verstehen Sie das Prinzip von HTML zu Bildern

Bevor wir die spezifische Implementierung vorstellen, wollen wir kurz das Prinzip von HTML zu Bildern verstehen. Eine übliche Methode besteht darin, die HTML-Seite mithilfe einer Bibliothek eines Drittanbieters in ein Bild zu rendern und das Bild dann an den Browser auszugeben oder als Datei zu speichern.

  1. Installieren Sie die erforderlichen Erweiterungen

PHP unterstützt die Konvertierung von HTML in Bilder nicht nativ und muss auf Erweiterungen von Drittanbietern zurückgreifen. Zu den bekannteren gehören wkhtmltoimage, dompdf, phantomjs usw. wkhtmltoimagedompdfphantomjs 等。

wkhtmltoimage 为例,需要在服务器上先安装 wkhtmltox 库。

sudo apt-get update
sudo apt-get install wkhtmltopdf
Nach dem Login kopieren

然后安装 PHP 扩展 php-wkhtmltox

sudo apt-get install php-wkhtmltox
Nach dem Login kopieren
  1. 使用 wkhtmltoimage 扩展

安装好 wkhtmltoimage 扩展后,就可以使用以下代码来将 HTML 页面转换成图片。

<?php
$command = &#39;wkhtmltoimage http://www.baidu.com ./baidu.jpg&#39;;
$result = shell_exec($command);
Nach dem Login kopieren

上述代码中,wkhtmltoimage 命令将 http://www.baidu.com 页面渲染成图片,并保存为 ./baidu.jpg 文件。

除了从网页地址转换图片外,也可以将本地 HTML 文件转换成图片:

<?php
$command = &#39;wkhtmltoimage ./local.html ./local.jpg&#39;;
$result = shell_exec($command);
Nach dem Login kopieren
  1. 使用 dompdf 扩展

dompdf 是一个将 HTML 转换为 PDF 的 PHP 扩展,它也能够将 HTML 转换成图片。

安装 dompdf 扩展。

composer require dompdf/dompdf
Nach dem Login kopieren

使用以下代码将 HTML 页面转换成图片。

<?php
use Dompdf\Dompdf;

$html = file_get_contents(&#39;http://www.baidu.com&#39;);
$dompdf = new Dompdf();
$dompdf->loadHtml($html);
$dompdf->render();
$file = './baidu.png';
file_put_contents($file, $dompdf->output());
Nach dem Login kopieren

在上述代码中,使用 file_get_contents 获取页面 HTML 内容,然后使用 Dompdf 在服务器端渲染成图片,并将其保存到本地。

  1. 使用 phantomjs 扩展

dompdf 类似,phantomjs 也是一个能够将 HTML 页面渲染成图片的工具。安装 phantomjs 库。

sudo apt-get install phantomjs
Nach dem Login kopieren

然后使用以下代码将 HTML 页面转换成图片。

<?php
$html = file_get_contents('http://www.baidu.com');
$command = 'phantomjs rasterize.js ' . escapeshellarg($html) . ' ./baidu.png 800px*600px';
$result = shell_exec($command);
Nach dem Login kopieren

在上述代码中,phantomjs 命令使用了 rasterize.js 脚本来完成页面渲染。其中,第一个参数是要渲染的 HTML 内容,第二个参数为输出文件,第三个参数为输出图片的尺寸。

  1. 总结

本文介绍了如何使用 PHP 将 HTML 页面转换成图片。我们可以使用 wkhtmltoimagedompdfphantomjs

Nehmen wir als Beispiel wkhtmltoimage: Sie müssen zuerst die wkhtmltox-Bibliothek auf dem Server installieren. 🎜rrreee🎜Dann installieren Sie die PHP-Erweiterung php-wkhtmltox. 🎜rrreee
    🎜Verwenden Sie die Erweiterung wkhtmltoimage 🎜🎜🎜Nach der Installation der Erweiterung wkhtmltoimage können Sie den folgenden Code verwenden, um HTML-Seiten in Bilder umzuwandeln . 🎜rrreee🎜Im obigen Code rendert der Befehl wkhtmltoimage die Seite http://www.baidu.com in ein Bild und speichert es als ./baidu .jpg-Datei. 🎜🎜Neben der Konvertierung von Bildern aus Webadressen können Sie auch lokale HTML-Dateien in Bilder konvertieren: 🎜rrreee<ol start="4">🎜Verwenden Sie die <code>dompdf-Erweiterung 🎜🎜🎜dompdf code> ist eine PHP-Erweiterung, die HTML in PDF konvertiert. Sie kann auch HTML in Bilder konvertieren. 🎜🎜Installieren Sie die Erweiterung <code>dompdf. 🎜rrreee🎜Verwenden Sie den folgenden Code, um HTML-Seiten in Bilder umzuwandeln. 🎜rrreee🎜Verwenden Sie im obigen Code file_get_contents, um den HTML-Inhalt der Seite abzurufen, und verwenden Sie dann Dompdf, um ihn serverseitig in ein Bild zu rendern und lokal zu speichern. 🎜
      🎜Verwenden Sie die phantomjs-Erweiterung🎜🎜🎜Ähnlich wie dompdf ist auch phantomjs ein Tool, das rendern kann HTML-Seiten in Bildtools umwandeln. Installieren Sie die phantomjs-Bibliothek. 🎜rrreee🎜Dann verwenden Sie den folgenden Code, um die HTML-Seite in ein Bild umzuwandeln. 🎜rrreee🎜Im obigen Code verwendet der Befehl phantomjs das Skript rasterize.js, um das Rendern der Seite abzuschließen. Dabei ist der erste Parameter der darzustellende HTML-Inhalt, der zweite Parameter die Ausgabedatei und der dritte Parameter die Größe des Ausgabebildes. 🎜
        🎜Zusammenfassung🎜🎜🎜In diesem Artikel wird erläutert, wie Sie mit PHP HTML-Seiten in Bilder konvertieren. Wir können Erweiterungen wie wkhtmltoimage, dompdf oder phantomjs verwenden, um diese Funktionalität zu erreichen. Wenn Sie verschiedene Erweiterungen verwenden, müssen Sie auch auf die Installation der abhängigen Umgebung und die Verwendung zugehöriger Bibliotheken achten. 🎜

Das obige ist der detaillierte Inhalt vonSo konvertieren Sie HTML-Seiten mit PHP in Bilder. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage