Laravel生成pdf时如何设置语言

How to set language when generating pdf in Laravel

在 laravel 中生成 pdf 时是否有强制语言的方法?

我正在使用包 barryvdh/laravel-dompdf 并使用 blade 视图创建 pdf,如下所示:

 $pdf = PDF::loadView('businesssummary::report.pdf', [
            "vm" => $result,
            'locale' => Cache::get('locale', 'default')
        ]);

将 pdf 直接流式传输到页面时,就像这样

'<div class="container"><embed src="{{ Loc::route('directory.report') }}" width="100%" height="1120" type="application/pdf" scrolling="yes"></embed></div>'

效果很好,并且使用当前语言环境。

但是在创建要用作发送给用户的电子邮件中的附件的 pdf 时,使用的语言是应用程序的默认语言。

我可以为此设置区域设置,就像我为发送的电子邮件设置区域设置一样吗? 我似乎找不到有关如何(或如果可能)这样做的文档。

谢谢

所以我终于想出了一个简单的方法。

在使用 PDF::loadView(...) 加载视图之前,只需使用缓存中存储的值设置语言环境,如下所示:

App::setLocale(Cache::get('locale', 'default'));