欢迎光临
我们一直在努力

修复WHMCS账单PDF不可显示中文的问题

问题原因: WHMCS 使用开源项目 TCPDF 来生成 PDF 文件,但该项目本身并不支持中文字符因为缺少相关中文字体。

解决办法:

下载字体文件:https://drive.google.com/file/d/1jpDY0C3YnTVV4Sq-hqHzSdnHa0rOW8xe/view?usp=sharing
上传3个字体文件至 whmcs 相关目录之下:/vendor/tecnickcom/tcpdf/fonts/
到WHMCS后台:Configuration () > System Settings > General Settings (WHMCS 8.0之前版本, Setup > General Settings). 选择 Invoices 选项栏。
PDF Font Family 选项中选择Custom并填入 droidsansfallback

对文件不放心的可自己制作相关PHP字体文件:

首先下载ttf字体文件: https://github.com/aosp-mirror/platform_frameworks_base/blob/de0fe2daafb769cc37ca922ffef6dbafb8c6cae2/data/fonts/DroidSansFallbackFull.ttf
注意这里得下载DroidSansFallbackFull 而不是 DroidSansFallback,因为本人实测直接使用DroidSansFallback.ttf制作的字体反而无法/正常显示英文。
更换文件名 DroidSansFallbackFull.ttf 为 DroidSansFallback.ttf
下载TCPDF项目并上传至装有PHP的linux服务器当中:https://github.com/tecnickcom/tcpdf
把DroidSansFallback.ttf字体放入fonts文件夹,并随便创立一个 a.php 文件:
代码在附带的图片当中,因论坛限制,我无法直接插入

用php a.php 执行, 或者直接网页中打开 a.php 网页开始转档,转好之后会在fonts里面产生三个档案:droidsansfallback.php、droidsansfallback.ctg.z、droidsansfallback.z

References:

https://whmcs.community/topic/273009-pdf-invoice-version-is-broken/

https://charles4code.blogspot.com/2018/09/few-notes-about-tcpdf-open-source-php.html

https://3wa.tw/mypaper/?uid=shadow&mode=view&id=1793

https://docs.whmcs.com/PDF_Invoice_Customisation

赞(0) 打赏
未经允许不得转载:罗刹 » 修复WHMCS账单PDF不可显示中文的问题
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏