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'));
在 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'));