在php中将HTML转换为图像

在php中将HTML转换为图像,php,image-processing,php-gd,Php,Image Processing,Php Gd,我必须从PHP脚本创建一个PNG/JPEG图像。。简略地 代码将创建一个html表,并在该页面中包含一个图像。我需要将整个页面保存为图像,将该图像保存在我的服务器中,并返回图像的路径(使用webservice) 我可以从imagejpg函数很好地创建图像。我的问题是如何将HTML转换为图像,因为过程是通过web服务进行的,所以我不能截屏 请帮助我使用php将HTML转换为图像 提前感谢您可以从下载WKHTMLTO图像。所有操作系统都有一个版本,所以这不应该是一个问题。然后您可以这样使用它: $p

我必须从PHP脚本创建一个PNG/JPEG图像。。简略地

代码将创建一个html表,并在该页面中包含一个图像。我需要将整个页面保存为图像,将该图像保存在我的服务器中,并返回图像的路径(使用webservice)

我可以从imagejpg函数很好地创建图像。我的问题是如何将HTML转换为图像,因为过程是通过web服务进行的,所以我不能截屏

请帮助我使用php将HTML转换为图像


提前感谢

您可以从下载WKHTMLTO图像。所有操作系统都有一个版本,所以这不应该是一个问题。然后您可以这样使用它:

$path="wkhtmltoimg/wkhtmltoimage.exe"; //path to your executable
$url="http://google.com";
$output_path="test.png";
shell_exec("$path $url $output_path");
需要注意的一点是,如果PHP处于安全模式,shell_exec将无法工作,您将无法进行转换。

您可以使用将HTML页面的屏幕截图保存到本地磁盘:

<?php

use JonnyW\PhantomJs\Client;

$client = Client::getInstance();

$width  = 800;
$height = 600;
$top    = 0;
$left   = 0;

$request = $client->getMessageFactory()->createCaptureRequest('http://example.com', 'GET');
$request->setOutputFile('/path/to/save/capture/file.jpg');
$request->setViewportSize($width, $height);
$request->setCaptureDimensions($width, $height, $top, $left);

$response = $client->getMessageFactory()->createResponse();

// Send the request
$client->send($request, $response);

我刚刚创建了完整的HTML页面,包括地图。。。。我必须将整个html转换为图像。。请帮忙。。我必须分享HTML代码吗?