我有一个生成JasperReports的Java应用程序.它将从一个报告中创建多达三个JasperPrints:一个在打印机上打印,一个序列化并保存到数据库,第三个使用Jasper的内置导出功能导出为PDF.
问题是当导出为PDF时,包含8位或更多位(即非7位ASCII)的字符显示为空方块,这意味着Acrobat Reader无法显示该字符.打印版本是正确的,加载数据库版本并打印它显示正确.如果我将PDF导出版本更改为其他格式(例如XML),则该字符在Web浏览器中显示正常.
根据证据,我认为这个问题是PDF中字体处理的特定问题,但我不确定是什么.
使用的字体是Lucida Sans Typewriter,一种Unicode等宽字体.Windows"font"目录列在Java类路径中:如果没有这一步,PDF导出会失败,完全没有文本,因此我知道它正在查找字体.
,特定字符不显示重音在西班牙文本中使用的字符:á,é,í,ó,和ú.我没有检查,ñ但我猜这也行不通.
任何想法是什么问题,要检查的系统区域,或者我需要发送到出口过程的参数?
| 归档时间: |
|
| 查看次数: |
14627 次 |
| 最近记录: |