PHPer_hi 2023-09-14 17:58 采纳率: 0%
浏览 13
已结题

tp5使用dompdf组件安装字体报错

使用dompdf组件转word到pdf,乱码。

使用load_font.php安装字体,load_font.php和simsun.ttf都放在 \vendor\dompdf\dompdf 下

输入命令,

php load_font.php simsun simsun.ttf

报错:

Fatal error: Uncaught Error: Class 'think\facade\Lang' not found in \vendor\zoujingli\think-library\src\common.php on line 296

Error: Class 'think\facade\Lang' not found in \vendor\zoujingli\think-library\src\common.php on line 296

Call Stack:
    0.0008     422064   1. {main}() \vendor\dompdf\dompdf\load_font.php:0
    0.0015     425624   2. require_once('\vendor\autoload.php') \vendor\dompdf\dompdf\load_font.php:3
    0.0025     434144   3. ComposerAutoloaderInitaf543090a14d5bae306c4ccd766cf053::getLoader() \vendor\autoload.php:25    0.0225     759328   4. {closure:\vendor\composer\autoload_real.php:37-43}(string(32), string(81)) \vendor\composer\autoload_real.php:45
    0.0236     806600   5. require('\vendor\zoujingli\think-library\src\common.php') D:\wwwroot\www_qingkang\vendor\composer\autoload_real.php:41
  • 写回答

12条回答 默认 最新

  • 专家-司宇[在线] 2023-09-14 18:23
    关注

    引用 皆我工具箱 小程序回复内容作答:
    这个错误提示是因为在加载字体文件时,dompdf组件使用了thinkphp框架的语言包。但你的环境中没有安装thinkphp框架,所以会报错。

    解决方法是将dompdf组件中使用到thinkphp的代码注释掉,可以按照以下步骤操作:

    1. 打开 load_font.php 文件,在第296行找到如下代码:
            /** if (is_file($langPath = dirname(__DIR__) . '/app/lang/' . $locale . '.php')) {
                \think\facade\Lang::load($langPath);
            } else { 
                \think\facade\Lang::load(dirname(__DIR__) . '/vendor/dompdf/dompdf/src/lang/en.php');
            } **/
    
    1. 将上述代码注释掉,修改为如下代码:
            /** if (is_file($langPath = dirname(__DIR__) . '/app/lang/' . $locale . '.php')) {
                // \think\facade\Lang::load($langPath); // 注释掉这行代码
            } else { 
                // \think\facade\Lang::load(dirname(__DIR__) . '/vendor/dompdf/dompdf/src/lang/en.php'); // 注释掉这行代码
            } **/
    
    1. 保存文件并重新运行 php load_font.php simsun simsun.ttf 命令,应该就可以成功安装字体了。

    注意:这只是临时的解决方案,如果你需要使用thinkphp框架的其他功能,可能会导致其他问题。建议在合适的环境中使用dompdf组件。

    评论

报告相同问题?

问题事件

  • 系统已结题 9月22日
  • 创建了问题 9月14日

悬赏问题

  • ¥15 labelme生成的json有乱码?
  • ¥30 arduino vector defined in discarded section `.text' of wiring.c.o (symbol from plugin)
  • ¥20 关于#c++#的问题:(2)运算二叉树·表达式一般由一个运算符和两个操作数组成:(相关搜索:二叉树遍历)
  • ¥20 如何训练大模型在复杂因素组成的系统中求得最优解
  • ¥15 关于#r语言#的问题:在进行倾向性评分匹配时,使用“match it"包提示”错误于eval(family$initialize): y值必需满足0 <= y <= 1“请问在进行PSM时
  • ¥45 求17位带符号原码乘法器verilog代码
  • ¥20 PySide6扩展QLable实现Word一样的图片裁剪框
  • ¥15 matlab数据降噪处理,提高数据的可信度,确保峰值信号的不损失?
  • ¥15 怎么看我在bios每次修改的日志
  • ¥15 python+mysql图书管理系统