win10系统下JFreeChart1.0.1和iText集成时,免费字符出现乱码的处理办法
环境:JFreeChart 1.0.1、iText1.3
JFreeChart1.0.1中的plot接口没有提供setValueLabelFont的办法,无法直接配置label的字体!
不过还好试了一下午总算弄出来了,全部代码如下:
pdfwriter writer; |
记住别忘了添加iTextAisan.jar不然会报如下错误:下载地址:iTextAsian.jar下载(32&64位)
com.lowagie.text.documentException: Font 'sTsong-Light' with 'UniGB-UCs2-H' is not recognized.
at com.lowagie.text.pdf.BaseFont.createFont(Unknown source)
at com.lowagie.text.pdf.BaseFont.createFont(Unknown source)
at com.lowagie.text.pdf.AsianFontMapper.awtTopdf(Unknown source)
at com.lowagie.text.pdf.pdfGraphics2d.getCachedBaseFont(Unknown source)
at com.lowagie.text.pdf.pdfGraphics2d.setFont(Unknown source)
at com.lowagie.text.pdf.pdfGraphics2d.(Unknown source)
at com.lowagie.text.pdf.pdfContentByte.createGraphics(Unknown source)
at JFreeChartExample.convertTopdf(JFreeChartExample.Java:94)
at JFreeChartExample.main(JFreeChartExample.java:63)
com.lowagie.text.documentException: Font 'sTsong-Light' with 'UniGB-UCs2-H' is not recognized.
at com.lowagie.text.pdf.BaseFont.createFont(Unknown source)
at com.lowagie.text.pdf.BaseFont.createFont(Unknown source)
at com.lowagie.text.pdf.AsianFontMapper.awtTopdf(Unknown source)
at com.lowagie.text.pdf.pdfGraphics2d.getCachedBaseFont(Unknown source)
at com.lowagie.text.pdf.pdfGraphics2d.setFont(Unknown source)
at org.jfree.chart.title.TextTitle.arrangeRR(TextTitle.java:488)
at org.jfree.chart.title.TextTitle.arrange(TextTitle.java:450)
at org.jfree.chart.JFreeChart.drawTitle(JFreeChart.java:1125)
at org.jfree.chart.JFreeChart.draw(JFreeChart.java:715)
at org.jfree.chart.JFreeChart.draw(JFreeChart.java:925)
at JFreeChartExample.convertTopdf(JFreeChartExample.java:910)
at JFreeChartExample.main(JFreeChartExample.java:63)
Exception in thread "main" java.lang.nullpointerException
at com.lowagie.text.pdf.pdfwriter.addsimple(Unknown source)
at com.lowagie.text.pdf.pdfContentByte.setFontAndsize(Unknown source)
at com.lowagie.text.pdf.pdfGraphics2d.drawstring(Unknown source)
at org.jfree.text.TextUtilities.drawRotatedstring(TextUtilities.java:566)
at org.jfree.text.TextUtilities.drawRotatedstring(TextUtilities.java:600)
at org.jfree.text.TextFragment.draw(TextFragment.java:212)
at org.jfree.text.TextLine.draw(TextLine.java:1104)
at org.jfree.text.TextBlock.draw(TextBlock.java:269)
at org.jfree.text.TextBlock.draw(TextBlock.java:231)
at org.jfree.chart.title.TextTitle.drawHorizontal(TextTitle.java:628)
at org.jfree.chart.title.TextTitle.draw(TextTitle.java:569)
at org.jfree.chart.JFreeChart.drawTitle(JFreeChart.java:1128)
at org.jfree.chart.JFreeChart.draw(JFreeChart.java:715)
at org.jfree.chart.JFreeChart.draw(JFreeChart.java:925)
at JFreeChartExample.convertTopdf(JFreeChartExample.java:910)
at JFreeChartExample.main(JFreeChartExample.java:63)