php dompdf中文乱码怎么办

php dompdf中文乱码就像困扰我们的梦魇,它每次出现都让我们很沮丧,让我们不知道该怎么办,去哪里找原因。下面就给大家介绍几种解决php dompdf中文乱码的方法:

**方法一:** 推荐使用 Dejavu 中文字体,Dejavu 字体已经在 dompdf 中默认集成了,只需要在代码里添加

`$dompdf->set_option(‘defaultFont’, ‘Dejavu Sans’)`

这一句代码即可完成字体选择;

**方法二:** 将 dompdf 源码文件夹里面的 Tools 下的***字库,也就是 cmap 目录上传到你所使用的网站根目录下,在代码里添加

`$dompdf->set_option(“enable_font_subsetting”,true);`

可以解决乱码问题;

**方法三:** 如果你电脑上安装了某些中文字体,可以将这些字体文件放在你的网站的根目录的 Fonts 目录下,在代码中加上这一句

`$dompdf->set_option(“defaultFont”, “你的中文字体名称”);`

即可完成设置,以上这三种方法中的任何一种都有可能可以解决你的乱码问题,如果你的乱码问题依然没有得到解决,那可能你的网页是因为输出到 PDF 里去的时候进行了编码转换,你需要检查一下你的网站代码,如果发现有 UTF-8–>GBK 的转换,这样domPDF按照GBK去渲染PDF文件,当然是会乱码的,只需要将代码改成GBK–>UTF,即可解决乱码的问题!

PHP DOMPDF中文乱码的问题一直困扰着许多php开发者们。各种诸如中文、英文混排的pdf文件都极易出现乱码的情况,使用不当的字体文件也容易导致中文乱码。

其实,documentation文档中也提到了解决方法,但是有些用户在使用时仍旧有不能正确显示中文的情况,有可能是这必须使用fc-list指令示例查看所有字体文件去获得实际字体文件路径才能拥有完整的字库来显示中文,

fclist指令大概有如下格式:

sudo fc-list :lang=zh

要显示所有字体列表,得到字体文件的实际路径。获得字体文件实际路径后,只需要在要渲染的dompdf文档对象中加入如下一行设定body内容或者html中的内容就可以了:

$dompdf->set_option(‘defaultFont’, ‘FONT_PATH_HEREIFIED_NAME_HERE’);

有些字体文件可能不支持,可以使用ttf Font Shedder工具,将字体转换成相应的格式,更容易支持。

DOMPDF能够针对不同的浏览器支持不同的格式的字体,比如FONT_EMAIL、FONT_LANG、FONT_CODE等,想要使用就要补充相关的字体,且字体必须符合format,并注意有些字体容量较大中文显示尤为困难,因此要注意有没有可替代的精简版字体以节省容量。

最后,建议开发者们在使用DOMPDF愿PDF文件中正常显示中文时,一定要采用正确的字体文件,使用fc-list命令查看和获取相应的字体文件,用ttf font shedder工具将字体转换格式,并补充相关字体满足PDF显示中文需求,如果字

购买须知:
1. 因源代码属于知识性付费产品且具复制性,买家付款后将不支持以其他任何理由要求退款(为此请确保在演示站测试无误后再下单);
2. vip免费下载的源码均为未测试源码,不能保证源码完整均为框架,本站只收集搬运资源、我们不验证资源是否完整与可用,需要会员自行研究搭建测试 。
3. 该程序源码应在符合法律法规的条件下仅用于相关正规场景的测试、娱乐以及学习交流,不得用于商业活动及非法途径,如若违反国内外现行法律法规及其所产生的一切不良后果与本店无关,且本店有权单方暂停或终止服务,并享有持续追究其法律责任的权利;
4. 若您最终确认购买,则视为您认同并接受以上所述全部内容。
免责声明:
1.本文部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责。
2.若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。
3.如果本站有侵犯、不妥之处的资源,请在网站右边客服联系我们。将会第一时间解决!
4.本站所有内容均由互联网收集整理、网友上传,仅供大家参考、学习,不存在任何商业目的与商业用途。
5.本站提供的所有资源仅供参考学习使用,版权归原著所有,禁止下载本站资源参与商业和非法行为,请在24小时之内自行删除!
6.侵权联系邮箱:188773464@qq.com

moyy免费源码分享 建站教程 php dompdf中文乱码怎么办 https://moyy.us/1471.html

相关文章