【发布时间】:2019-08-20 10:08:50
【问题描述】:
我在设置 JFreeChart 图表标题字体的编码时遇到问题。我创建了 pdf 并向其中添加了图表。我使用 itext 库创建了自定义字体并将编码设置为 CP1250。特殊字符显示在 pdf 中,我将此字体映射到 java.awt.Font 但图表标题上没有显示相同的字母。有没有其他方法可以实现这个目标?
JFreeChart chart = ChartFactory.createBarChart3D(null,"Rok","Liczba wszystkich emisji", dataset, PlotOrientation.VERTICAL, true, true, true);
BaseFont baseFont = BaseFont.createFont(BaseFont.HELVETICA,BaseFont.CP1250, BaseFont.CACHED);
Font font = new Font(baseFont, 9);
document.add(new Paragraph("śćżźółąę abcdefhgijklmnop", font));
DefaultFontMapper defaultFontMapper = new DefaultFontMapper();
java.awt.Font titleFont = defaultFontMapper.pdfToAwt(baseFont,20);
StandardChartTheme chartTheme = new StandardChartTheme("theme");
chartTheme.setRegularFont(titleFont);
ChartFactory.setChartTheme(chartTheme);
chart.setTitle(new TextTitle("śćżźółąę abcdefhgijklmnop"));
chart.getTitle().setFont(titleFont);
【问题讨论】:
标签: java itext jfreechart