2

我在生成带有图像的 PDF 文件时遇到了 FPDF 的问题,如解释的那样here。最后我找到了这个问题的原因,但我不知道如何解决这个问题,任何人都可以提出一些好的解决方案来处理这个问题。

这个问题是由于allow_url_fopen我的服务器的设置,如果我启用该设置,那么 FPDF 库正在生成带有图像的 PDF 文件,也没有任何错误。

我将这个 FPDF 库用于我的一个客户站点,出于安全原因,他(客户)禁用了“allow_url_fopen”设置,并且他没有兴趣启用该设置。如果不启用我的服务器设置,我该如何解决这个问题。

4

3 回答 3

1

您可以使用 CURL 打开远程资源。

$curlHandler=curl_init();

curl_setopt($curlHandler, CURLOPT_URL, "http://youurl.com");

curl_setopt($curlHandler, CURLOPT_HEADER,0);

curl_setopt($curlHandler, CURLOPT_RETURNTRANSFER, 1);

$output =curl_exec($curlHandler);

....

curl_close($curlHandler);
于 2010-07-17T15:22:21.733 回答
1

老实说,您最好的选择是寻找另一种生成 PDF 的方法。FPDF自 2004 年以来只有一次更新,似乎不再积极维护。

其他一些纯 PHP 选项包括TCPDFZend_PDF,它们似乎都得到了积极的维护和支持。

您还应该考虑其他 PDF 生成技术。例如,有相当多的HTML 到 PDF转换器,一些是商业的,一些是开源的。 例如, wkhtmltopdf使用 WebKit 渲染引擎(Safari 和 Chrome 使用的引擎)来创建 PDF。

于 2010-07-17T16:23:56.807 回答
1

我有类似的问题,没有设置 allow_url_fopen 的修复方法是 1. 将图像移动到托管脚本的服务器 2. 假设图像是 imagefile.gif 在名为 images 的文件夹中 3. 访问我的脚本中的图像 $ _SERVER['DOCUMENT_ROOT']."images/imagesfile.gif"

于 2018-03-11T11:17:20.500 回答