如何在codeigniter中集成mpdf中的font真棒图标



我有自己编写的pdf生成代码。下载pdf时,pdf中有一些字体很棒的图标。它不可见。我尝试了一些解决方案。我已将fontawesome-webfont.ttf放置在mpdf/ttfonts中。在此之后,我在mpdf/src/:中的fontvariables中编写了一些代码

'fontdata' => [

"fontawesome" => [
'R' => "fontawesome-webfont.ttf",
],
];

在这之后,我在pdf生成部分写了一些代码,比如:

$mpdfConfig = array(
'mode' => 'utf-8', 
'format' => 'A4-L',
'orientation' => 'P',
'default_font_size' => 10,
'default_font' => 'Arial',
'margin_top' => 17,    
'margin_bottom' => 23,   
//'tempDir' => '/tmp'
);
$mpdf = new MpdfMpdf($mpdfConfig);
$mpdf->curlAllowUnsafeSslRequests = true;

$stylesheet = '.fa-long-arrow-right { font-family: fontawesome; }';
$html = $this->load->view('temp/'.$date.'/stream_finder_'.$exam_id.'_'.$uid,$data,true);
$mpdf->WriteHTML($stylesheet,1);
$mpdf->WriteHTML($html,2);
$mpdf->Output('Stream-finder-report.pdf', 'D');

在html页面中,

<i class="fa fa-long-arrow-right" aria-hidden="true" style="left: 6px;position: absolute;font-size: 20px;color: #07bb7b;"></i>

但在生成的pdf中,fa-long-arrow-right是不可见的。有人能建议如何纠正吗?

通过定义将字体系列设置为空<i>不能输出任何内容。任一:

将字符&#xf178;(在Font Awesome中为向右箭头(直接写入HTML中作为实体

<i class="fa fa-long-arrow-right" aria-hidden="true" style="...">&#xf178;</i>

或者:

更改CSS以通过content属性输出字符。注意,可能需要为:before伪元素设置固定大小。

.fa-long-arrow-right:before {
content: "f178";
}

相关内容

  • 没有找到相关文章

最新更新