发票 pdf 打印 Magento 中的阿拉伯语单词

Arabic words in invoice pdf print Magento

我正在尝试通过在 magento 中使用集成 TCPDF 来解决这个问题,但我不知道该怎么做

这是我在这个文件中的尝试 \app\code\core\Mage\Sales\Model\Order\Pdf\Abstract.php

require_once('TCPDF/TCPDF.php');
$pdf = new TCPDF_TCPDF
(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true,'UTF-8', false);

我不知道我做错了什么。谢谢。

1) 不要编辑核心文件。

2) magento 中有多个发票生成器:来自后端的发票、成功页面上的发票等。因此请确保您正在编辑和测试正确的发票生成器。下面的示例适用于后端的发票。

3) 可能有自定义模块覆盖了您的 xml,例如 Webshopapps_Invoicing,检查一下,否则它不会工作(这是我在尝试类似操作时遇到的问题)。


将 TCPDF 复制到您的 magento lib 文件夹后,您现在可以 root/TCPDF/TCPDF.php 通过将 class 名称从 tcpdf 更改为 [=14] 来编辑 TCPDF.php =]

进入 code/local/Yourcompany 并创建文件夹 invoices。在此文件夹中创建 etc/config.xml 内容如下:

<?xml version="1.0"?>
<config>
    <modules>
         <Yourcompany_Invoices>
            <version>0.0.1</version>
        </Yourcompany_Invoices>
    </modules>
    <global>
        <models>
            <sales>
                <rewrite>                    
                    <order_pdf_invoice>Yourcompany_Invoices_Sales_Model_Order_Pdf_Invoice</order_pdf_invoice>
                </rewrite>
            </sales>
        </models>
   </global>
</config>

像这样在 code/local/Yourcompany 中创建另一个文件夹结构 Sales/Model/Order/Pdf 并添加 Invoice.php:

class Yourcompany_Invoices_Sales_Model_Order_Pdf_Invoice extends Mage_Sales_Model_Order_Pdf_Invoice { 
// it can be another class if you have a custom module overwriting it, like Webshopapps_Invoicing_Sales_Model_Order_Pdf_Invoice
  $pdf = new TCPDF_TCPDF();//your stuff here
}

然后提交测试订单并进入管理并查看 pdf 发票。