PHP-font-lib必须通过composer安装或复制到lib / php-font-lib

时间:2012-11-17 15:17:22

标签: php dompdf

我正在尝试将某些HTML转换为pdf。 在一些谷歌搜索后,我发现dompdf,但当我尝试转换我检索

PHP-font-lib must either be installed via composer or copied to lib/php-font-lib

这就是我想要做的事情:

require 'pdf/dompdf.php';
$dompdf = new DOMPDF();
$dompdf->load_html($html);
$dompdf->render();
$dompdf->stream("sample.pdf");

我该如何解决?谢谢!

3 个答案:

答案 0 :(得分:47)

Dompdf最近搬到了Github,我们还添加了Composer支持。为此,我们删除了对所需外部库php-font-lib的引用。

注意:如果您使用composer安装dompdf(和php-font-lib),则需要将define("DOMPDF_ENABLE_AUTOLOAD", false);放在dompdf_config.custom.inc.php中。这将允许composer自动加载php-font-lib,它通过dompdf的composer.json文件安装。否则,您可能仍会收到错误消息。 (见issue

如果您不使用作曲家,并希望将最新版本的dompdf与此库一起使用:(source

  • Github获取最新的dompdf版本并将其解压缩到一个目录中。
  • 也可以从Github
  • 下载图书馆版本
  • 创建dompdf / lib / php-font-lib / classes /目录。
  • 在zip文件中,获取src / FontLib /文件夹的内容并将其粘贴到新创建的目录中。

答案 1 :(得分:2)

在审核我的编辑时,我会在此处发布最新的dompdf 0.6.1

的详细信息

如果您使用composer安装dompdf(和php-font-lib),则需要将define("DOMPDF_ENABLE_AUTOLOAD", false);放在dompdf_config.custom.inc.php中。这将允许作曲家自动加载php-font-lib,它是通过dompdf的composer.json文件安装的。否则,您可能仍会收到错误消息。 (参见本期#636)

如果您不使用composer并想使用最新版本的dompdf,则需要手动安装php-font-lib:(https://stackoverflow.com/a/24505929/3854385

  • Github获取最新的dompdf版本并将其解压缩到一个目录中。
  • 也可以从Github
  • 下载图书馆版本
  • 创建dompdf / lib / php-font-lib / classes /目录。
  • 在zip文件中,获取src / FontLib /文件夹的内容并将其粘贴到新创建的目录中。

答案 2 :(得分:0)

另一个避免从Composer更改自动下载文件的技巧是定义DOMPDF_ENABLE_AUTOLOAD并在重新加载配置文件之后:

// Disable DOMPDF's internal autoloader if you are using Composer
define('DOMPDF_ENABLE_AUTOLOAD', false);
require_once CONFIG_DIR . 'vendor/dompdf/dompdf/dompdf_config.inc.php';

$dompdf = new \DOMPDF;