2010-08-17 51 views
2

我正在使用谷歌可视化api为我的基于php的网站。我打算使用tcpdf来提供我使用Google Visualization API生成的相同图像的pdf版本。在php中的截图

是否有任何方法可以将这些可视化文件保存在我的服务器上,以便我直接在tcpdf中使用它们?

如果没有,那么我可以自动截取图像的截图并在tcpdf中使用它们吗?

我之所以没有手动截屏和保存,是因为可视化中的所有值都是动态的,并且每天都在不断变化,所以我正在自动进行一些操作。请提出建议?

回答

1

Google Visualization API的结果可以是图片或Flash(在交互式图表上)。如果你的结果是一个图像(最常见),你可以从服务器下载到服务器文件夹,并从本地路径添加到tcpdf。

可以使用例如卷曲:

$ch = curl_init($remoteURL); // get the image from this url 
$fp = fopen($localFile, "wb"); //put the image in this server path 

// set URL and other appropriate options 
$options = array(CURLOPT_FILE => $fp, 
    CURLOPT_HEADER => 0, 
    CURLOPT_FOLLOWLOCATION => 1, 
    CURLOPT_TIMEOUT => 60); // 1 minute timeout (should be enough) 
curl_setopt_array($ch, $options); 

// Execute curl 
curl_exec($ch); 
curl_close($ch); 

// close the file 
fclose($fp); 

一旦图像是在你的服务器的时间路径,你可以将图像添加到使用“图像”的方法和路径的文件,你的ctpdf已保存到您的服务器。

  • 服务器路径必须可以通过Web服务器写入。这对* nix环境特别重要。

这里更多的方法可以做到文件下载 http://www.php-mysql-tutorial.com/wikis/php-tutorial/reading-a-remote-file-using-php.aspx

+0

但谷歌的可视化API有图像的JavaScript的形式,而不是PNG或JPG ...谷歌图表API有它PNG或JPG格式。 – 2010-08-18 19:05:20

+0

图表图表和交互式图表都是同一个API的一部分(Google Chart Tools)如果您需要将图像放入服务器以制作PDF,您需要使用图像版本。 SWF/Javascript版本在客户端呈现。 – Dubas 2010-08-19 10:32:44