- 帖子: 16
 - 感谢您收到 0
 
            Technical discuss            
        
    
    dompdf,这么做就可以支持中文了
- bluetooth
 - [bluetooth]
 - 
            
				
                            帖子作者
                                 - 离线
 - 新手上路
 - 
            
         
        Less
        更多
        
            
    
        
            
        
                2024-09-17 09:37         -  2024-09-17 09:46        #192
        由 bluetooth
    
    
    
            
            
            
            
                                
    
                                                
    
        新帖            
    
        第一步:下载Dompdf的工具包
该工具包的Git地址为:https://github.com/dompdf/utils。
下载完成后,解压,复制其中的load_font.php文件到项目下的vendor/dompdf/dompdf目录下,与lib和src目录同级。
第二步:修改load_font.php文件
因为把该文件直接复制放在了dompdf目录下,因此需要修改加载autoloader的路径
第三步:下载字体文件
可以使用任意支持中文的字体文件,这里以DroidSansFallback为例,该字体涉及版权,需要自行搜索下载,下载完成后,我们把该字体文件 DroidSansFallback.ttf 直接放在load_font.php同一目录
第四步:安装字体文件
在放置load_font.php的dompdf目录下,使用系统命令行工具执行该文件,具体命令如下:
注意:命令中的字体名称msyh不要加引号,否则后续将不可用。执行结果参考:
Unable to find bold face file.
Unable to find italic face file.
Unable to find bold_italic face file.
Copying DroidSansFallback.ttf to /var/www/html/libraries/fabrik/vendor/vendor/dompdf/dompdf/lib/fonts/DroidSansFallback.ttf...
Generating Adobe Font Metrics for /var/www/html/libraries/fabrik/vendor/vendor/dompdf/dompdf/lib/fonts/DroidSansFallback...
第五步:检查字体是否安装成功
如果字体安装成功,则可以在项目的vendor/dompdf/dompdf/lib/fonts目录中看到新生成的 DroidSansFallback.ttf及 DroidSansFallback.ufm文件。并且可以在该目录下的 installed-fonts.json 文件中看到如下相关信息:
'DroidSansFallback' => array(
'normal' => $fontDir . '/DroidSansFallback',
'bold' => $fontDir . '/DroidSansFallback',
'italic' => $fontDir . '/DroidSansFallback',
'bold_italic' => $fontDir . '/DroidSansFallback',
),
 
使用中文字体:
关键的一句:body {font-family: "DroidSansFallback";},指定字体名称
* {font-size:8.0pt;line-height:120%;font-family:FontAwesome,'DroidSansFallback'!important}
    该工具包的Git地址为:https://github.com/dompdf/utils。
下载完成后,解压,复制其中的load_font.php文件到项目下的vendor/dompdf/dompdf目录下,与lib和src目录同级。
第二步:修改load_font.php文件
因为把该文件直接复制放在了dompdf目录下,因此需要修改加载autoloader的路径
Code:
// 1. [Required] Point to the composer or dompdf autoloader
//require_once "vendor/autoload.php";
require_once dirname(dirname(__DIR__)) . '/autoload.php';
第三步:下载字体文件
可以使用任意支持中文的字体文件,这里以DroidSansFallback为例,该字体涉及版权,需要自行搜索下载,下载完成后,我们把该字体文件 DroidSansFallback.ttf 直接放在load_font.php同一目录
第四步:安装字体文件
在放置load_font.php的dompdf目录下,使用系统命令行工具执行该文件,具体命令如下:
Code:
php load_font.php DroidSansFallback DroidSansFallback.ttf
或者
Code:
php load_font.php DroidSans DroidSansFallback.ttf
注意:命令中的字体名称msyh不要加引号,否则后续将不可用。执行结果参考:
Unable to find bold face file.
Unable to find italic face file.
Unable to find bold_italic face file.
Copying DroidSansFallback.ttf to /var/www/html/libraries/fabrik/vendor/vendor/dompdf/dompdf/lib/fonts/DroidSansFallback.ttf...
Generating Adobe Font Metrics for /var/www/html/libraries/fabrik/vendor/vendor/dompdf/dompdf/lib/fonts/DroidSansFallback...
第五步:检查字体是否安装成功
如果字体安装成功,则可以在项目的vendor/dompdf/dompdf/lib/fonts目录中看到新生成的 DroidSansFallback.ttf及 DroidSansFallback.ufm文件。并且可以在该目录下的 installed-fonts.json 文件中看到如下相关信息:
'DroidSansFallback' => array(
'normal' => $fontDir . '/DroidSansFallback',
'bold' => $fontDir . '/DroidSansFallback',
'italic' => $fontDir . '/DroidSansFallback',
'bold_italic' => $fontDir . '/DroidSansFallback',
),
使用中文字体:
关键的一句:body {font-family: "DroidSansFallback";},指定字体名称
* {font-size:8.0pt;line-height:120%;font-family:FontAwesome,'DroidSansFallback'!important}
        Last edit: 2024-09-17 09:46  by bluetooth.