2012-02-10 81 views
2

我在Jasper Reports中使用DynamicReports字符編碼時遇到問題。我不知道你應該在哪裏指出編碼。重音字符存在問題。我曾嘗試過:DynamicReport中的字符編碼錯誤

exporter.setParameter(JRExporterParameter.CHARACTER_ENCODING, "UTF-8"); //CP1252 
exporter.setParameter(JRPdfExporterParameter.CHARACTER_ENCODING, "UTF-8"); 

鏈接到下面的屏幕截圖顯示字符在我的代碼中正確顯示,但不在報告中。如何正確設置報告中的編碼?

screen capture

回答

2

今天我有同樣的問題,我將描述我的解決方案。 我的問題不在於編碼,而在於字體。

DynamicReports使用Helvetica字體創建PDF文檔。 當我將fontName更改爲「DejaVu Serif」時,問題就解決了。

StyleBuilder myStyle= stl.style().setPadding(2); 
    myStyle.setFontName("DejaVu Serif"); 
    TextColumnBuilder<Double> weightCol = col.column("Ağırlığı", "weight", type.doubleType()); 
    weightCol.setStyle(myStyle);