html 转 pdf 乱码,前端如何将HTML 生成PDF并避免中文乱码的解决方法

前端生成PDF 如果是非 UTF-8 字符再生成PDF 的过程中容易乱码,且布局容易错乱,是因为前端很多呈现结果都是基于字体来绘制的,而前端又无法通过浏览器访问客户机的本地资源,因为权限的控制,所以容易导致字体缺失从而导致乱码,因此任何一个前端工具在生成PDF 时候,如果是非英文字体,需要进行字体配置后,告诉生成引擎,当渲染该类元素时可以去找这类字体,从而避免错别字。

字体配置

所有ActiveReportsJS组件都基于Web浏览器环境来运行。

桌面报表设计器 是基于 Electron使用Chromium来显示用户界面。

Web 在线设计器 和 报表 viewer 组件在用户计算机的浏览器中运行的 Web 应用程序。

PDF, Excel 和 HTML 导出生成器 基于浏览器环境来测量并生成报表内容。

通常情况下,报表由文本内容组成,浏览器通过使用glyphs来渲染的字体形状。字体资源包含将字符编码映射到代表这些字符的字形的信息。因此,浏览器需要访问字体资源,才能够按照预期显示文本。

ActiveReportsJS 中的所有文本项都具有几种字体属性,包括

字体: 字体ID 如 Arial, Calibri, 或 Times New Roman

字体样式: 正常 或 斜体

字体粗细: 较细,细体,正常,适中,粗体,较粗

这三个属性的独特组合称为“字体”。字体系列通常由多个字体组成,通常由单独的文件表示。例如,以下是Windows 系统中Arial字体系列文件夹的屏幕截图:

你可能感兴趣的:(html,转,pdf,乱码)