经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » ASP.net » 查看文章
ABP进阶教程10 - PDF导出中文乱码 - IT-Evan
来源:cnblogs  作者:IT-Evan  时间:2019/10/16 12:10:25  对本文有异议

点这里进入ABP进阶教程目录 

问题描述

功能按钮 - 导出PDF,中文信息导出为乱码。

 

解决方案

导出PDF是通过pdfmake.js实现的。

检查发现是pdfmake引用的vfs_fonts.js字体只有一种: Roboto,而Roboto不支持中文。

解决思路是生成一个包含支持中文字体的vfs_fonts.js替换掉旧的文件。

下载项目

下载pdfmake https://github.com/bpampuch/pdfmake

安装gulp

全局安装

npm i gulp-cli -g

本地安装

npm install --save-dev gulp

查看版本

gulp -v

 

生成字体

生成字体

gulp buildFonts

 

替换字体

把生成的pdfmake-master\build\vfs_fonts.js复制替换
JD.CRS.Web.Mvc\wwwroot\lib\dataTables\pdfmake\vfs_fonts.js 

更新配置

打开展示层(即JD.CRS.Web.Mvc)的\wwwroot\view-resources\Views\Course\Index.js //用以存放Course查询相关脚本

找到DataTable/buttons参数设置

添加如下代码 

  1. pdfMake.fonts = {
  2. Roboto: {
  3. normal: 'Roboto-Regular.ttf',
  4. bold: 'Roboto-Medium.ttf',
  5. italics: 'Roboto-Italic.ttf',
  6. bolditalics: 'Roboto-Italic.ttf'
  7. },
  8. 微软雅黑: {
  9. normal: 'msyh.ttf',
  10. bold: 'msyh.ttf',
  11. italics: 'msyh.ttf',
  12. bolditalics: 'msyh.ttf',
  13. }
  14. };

 

原文链接:http://www.cnblogs.com/IT-Evan/p/ABP26.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号