Jasperreports5.6支持PDF微软雅黑字体

最近在开发需求时遇到一个问题,在打印标签时候要求,使用微软雅黑字体打印货物标签,在Jasperreports中使用微软雅黑字体显示正常,但是在浏览器中却不能正常显示

  • Jasperreport中显示如下

  • 在浏览器中显示如下

    默认值显示宋体,如果更换为其他字体则无法正常显示

网上解决PDF导出中文显示问题相关的文章很多,无非就是设置控件的pdf font name和pdf encoding属性,但是在5.6中都已经被弃用了(不推荐)。并且原来的解决方案还存在两个问题:(1)预览的字体通常不是STSong-Light, 这会导致预览字体与导出到PDF不一致。(2)当字符串中既有字母又有汉字的时候,导出的PDF可能莫名的换行。本文就介绍一种完美的解决方案,既保持一致性,也不会出现换行问题。

Pdf Font name is now deprecated. You should use a Font extension when using a not standard font. See Tools->Options->Fonts.    STSong-Light

根据这个提示猜测到可能需要安装字体

接下来就按照提示信息,下载所需的字体,我下载的是微软雅黑的
下载地址:https://download.csdn.net/download/weixin_43159039/12673117

接下来就是安装字体了
选择工具->选项->Fonts

选择刚刚下载的字体,点击下一步

选择粗体对应的字体文件

最终如下图

点击完成就安装完成了

安装完成之后就会在ireport项目fonts目录下出现字体文件
我的电脑目录为 D:\安装包\iReport-5.6.0\iReport-5.6.0\ireport\fonts,根据实际情况查看
我们会发现新增2个文件,然后irfonts.xml文件也发生了修改
里面的内容变为了

<?xml version="1.0" encoding="UTF-8"?><fontFamilies><fontFamily name="&#24494;&#36719;&#38597;&#40657;"><normal><![CDATA[msyh.ttf]]></normal><bold><![CDATA[msyhbd.ttf]]></bold><pdfEncoding><![CDATA[Identity-H]]></pdfEncoding><pdfEmbedded><![CDATA[true]]></pdfEmbedded></fontFamily></fontFamilies>

此时只是在我们的ireport编辑器中生效
如果想在项目中使用就必须吧字体生成jar文件,放在项目的WEB-INF/lib文件夹下

选择iReport的安装目录,选择fonts目录,命令行切换到该目录,执行命令

 jar cf msyh.jar  *

最快的方式则是直接在文件夹地址栏出入cmd

执行之后就在此文件下生成了一个msyh.jar
然后将此jar放入项目中

  • tomcat服务中直接放入 apache-tomcat/webapps/项目/WEB-INF/lib中
  • 如果是eclipse则直接放入/WEB-INF/lib 或者引入到classpath中就可以

存在问题

  • 使用此方法会导致原本的换行功能出现问题

如果你觉得以上特别步骤特别复杂,也可以直接使用我生成好的jar包
地址为:https://download.csdn.net/download/weixin_43159039/12673157

Jasperreports5.6支持PDF微软雅黑字体相关推荐

  1. Linux下安装宋体以及微软雅黑字体-转PDF后不显示中文,以及中文乱码

    PS:转PDF后不显示中文,以及中文乱码. 1.检查字体是否已经安装: fc-list               ----------检查所有已有的字体 fc-list :lang=zh       ...

  2. mac微软雅黑字体_【字体字重】常见设计稿字体对应字重

    总结如下: Font-weight就是字形的重量,就是粗不粗.在和程序员对接设计的过程中,发现前端大佬很多该加粗的地方都没有加粗,由此顺藤摸瓜,发现前端大佬们在看标注时,都不知道Pingfang的me ...

  3. mac微软雅黑字体_“微软雅黑”有坑,小编向你推荐免费的开源字体

    今日,某公司实习生使用"微软雅黑"字体,被方正公司投诉.该公司宣称:公司损失达到2800万. 可能有些人有疑惑,"微软雅黑"不该是免费的么!今天,小编就来科普一 ...

  4. Windows下的Gvim使用微软雅黑字体

    配置步骤: Gvim 7.2 ftp://ftp.vim.org/pub/vim/pc/gvim72.exe 下载后执行安装. ClearType : http://download.microsof ...

  5. 在Wince中添加微软雅黑字体

    更新系统字库:例如要在WinCE5.0加入微软雅黑字体的支持. 第一步:增加如下注册表 [HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/FontPath] "F ...

  6. html微软雅黑字体模糊,WinXP中微软雅黑字体模糊看得很吃力怎么解决

    如果系统是Windows XP,然后又下载安装了微软雅黑,再如果发现你平时浏览的一些网页是使用微软雅黑字体的时候很模糊,看得很吃力,那么又不想失去这一字千金的字体,应该怎么办呢?这里来修改cttune ...

  7. markdown如何修改为 微软雅黑 字体

    微软雅黑字体 <font face="微软雅黑" >微软雅黑字体</font>

  8. html微软雅黑字体模糊,如何解决WinXP下微软雅黑字体不清晰的问题

    不少WinXP用户在浏览网页时使用的是微软雅黑字体,有时候微软雅黑字体莫名其妙的变得不清晰了,而你又不想切换其它字体,那该怎么办呢?其实我们可以通过WinXP自带的cttune.cpl文档来修复模糊的 ...

  9. manjaro安装微软雅黑字体_manjaro设置字体_Manjaro 20.03字体美化的2.5个级别

    为了测试xscreensaver动态桌面背景和一些reddit用户分享的炫酷Linux桌面配置文件,今天特意在实体Manjaro系统(5年没重装过)之上又安装了一个Manjaro系统虚拟机.本来这个M ...

  10. mac 字体微软雅黑字体_如何在Mac上验证和删除字体

    mac 字体微软雅黑字体 The humble font isn't as humble as you might think, especially on a Mac. Fonts are more ...

最新文章

  1. Java最全的思维导图汇总!速度收藏!
  2. opencv mat 修改_OpenCV中initUndistortRectifyMap函数存在bug原因探究
  3. 跟计算机断层扫描相关的技术,计算机断层扫描技术(简称PET)
  4. java concurrent包介绍及使用
  5. 前端学习(3169):react-hello-react之删除一个todoList
  6. vs没有添加引用_国内考研VS英国读研!各有哪些利弊?
  7. There is 和 There are的使用_28
  8. 油猴GM_download使用及下载扩展名flac,油猴脚本修改下载扩展名
  9. linux光盘游戏,Linux下五个好玩的即时战略游戏
  10. CollabNet Subversion Edge 版本库访问规则 svn
  11. osm服务器 显示乱码,怎样获得osm上的行政区划shp文件
  12. Ubuntu ROS Arduino Gazebo学习镜像iso说明(indigo版)
  13. uniapp设置百度小程序索引页dynamicLib、usingComponents、swan-sitemap-list
  14. calltransaction弹出新的窗口_SAP刘梦_新浪博客
  15. 第一册:lesson thirteen.
  16. C语言程序之经典习题:请编程序将“China”译成密码,密码规律是:用原来的字母后面第4个字母代替原来的字母。
  17. Gerald Weinberg-探索需求-UMLChina讲座-音频
  18. 24 solar terms隐私条款
  19. Python兼职有哪些?
  20. 从crc32到linux内核实现

热门文章

  1. 自动阅读脚本成本分析大全(单月阅读成本核对)
  2. java实现文本编辑器
  3. EasyRecovery15版本电脑数据恢复软件
  4. 软考经验分享【最实际最有用】
  5. PHPWind历史版本及升级包下载(v1.0.0 - v9.0.2、Ofstar to PW)
  6. * Redis —— Scan、SScan、HScan、ZScan
  7. 简单工厂模式-工厂模式-抽象工厂模式类图
  8. 配置React-Native开发工具——WebStorm下载、激活与配置
  9. Db4o数据库:快速入门
  10. html滚动字幕上下,div css里文字上下滚动的代码怎么写