Magento2-使用en_US以外的语言环境生成PDF文件

时间:2018-10-31 09:01:18

标签: pdf localization magento2

我的cronjob中有一个导出PDF文件以将其保存为存档的功能。一切正常,除了PDF的语言始终默认为英语。这是我的功能:

public function writePdf($document_id){
    $invoice = $this->invoiceRepository->get($document_id);
    $pdf = $this->invoicePdfGeneratorService->execute($invoice);
    return $this->fileFactory->create(
        '_' . $document_id . '.pdf',
        $pdf->render(),
        DirectoryList::VAR_DIR ,
        'application/pdf'
    ); 
}

我在invoiceGeneratorService中研究了通向getPdf方法的Magento\Sales\Model\Order\Pdf\Invoice.php的位置,然后发现了以下内容:

if ($invoice->getStoreId()) {
    $this->_localeResolver->emulate($invoice->getStoreId());
    $this->_storeManager->setCurrentStore($invoice->getStoreId());
}

由于我在单一商店模式下运行Magento 2,并且我的后端以及我的销售电子邮件都以德语(de_DE)呈现PDF,所以我假设我错过了一些东西。我的猜测是传递带有writePdf函数的商店ID,但是我没有找到有关如何执行此操作的任何文档。有人有主意吗?

0 个答案:

没有答案