2013-02-12 201 views
2

我正在使用jasperreport和PHP。我在安裝新字體時遇到了問題,我使用以下步驟在jasper報告中安裝了新字體。如何在jasperreports中安裝新字體

  1. 編輯jasperreports_extension.properties

    加入以下行

net.sf.jasperreports.extension.simple.font.families.Mistral =淨/ SF/JasperReports的/字體/字體。 XML

    net\sf\jasperreports\fonts\fonts.xml
  1. 添加以下線

我收到以下錯誤

Fatal error: Uncaught [[o:Exception]:"java.lang.Exception: Invoke failed: [[c:JasperExportManager]]->exportReportToPdfFile((o:JasperPrint)[o:JasperPrint], (o:String)[o:String]). Cause: net.sf.jasperreports.engine.JRRuntimeException: Could not load the following font : pdfFontName : Mistral pdfEncoding : Cp1252 isPdfEmbedded : false VM: [email protected]://java.sun.com/" at: #-18 net.sf.jasperreports.engine.export.JRPdfExporter.getFont(JRPdfExporter.java:1961) #-17 net.sf.jasperreports.engine.export.JRPdfExporter.getChunk(JRPdfExporter.java:1725) #-16 net.sf.jasperreports.engine.export.JRPdfExporter.getPhrase(JRPdfExporter.java:1694) #0 /mount1/imeddoc/dev/JasperReports/includes/javabridge.php(338): java_ThrowExceptionProxyFactory->getProxy(12, '@V', 'Could not load ...', true) #1 /mount1/imeddoc/dev/JasperReports/includes/javabridge.php(495): java_Arg->getResult(true) #2 /mount1/imeddoc/dev/JasperReports/includes/javabridge.php(501): java_Client->getWrappedResult(true) #3 /mount1/imeddoc/dev/JasperReports/includes/javabridge.php(705) in /mount1/imeddoc/dev/JasperReports/includes/javabridge.php on line 301 

誰能幫我解決這個問題,請

+0

當使用jasperreports創建報告時,它依靠服務器操作系統來查找資源,如字體。檢查報告構建的服務器是否有可用的字體。 – Alfabravo 2013-02-12 14:52:00

回答

6

我使用iREPORT分享到人人選項就解決了。要在jasperreport中安裝新字體,請將其安裝在ireport中並導出到jar文件,然後替換jasper項目中的jar文件。要在ireport中安裝字體,請轉至工具 - >選項 - >字體,然後單擊安裝字體。按照步驟進行操作,您現在將在ireport中安裝新的字體。請不要忘記檢查在pdf中嵌入此字體。

現在要導出字體,轉到工具 - >選項 - >字體,然後從可用字體列表中選擇需要的字體,然後單擊導出爲擴展名。這將導出字體爲jar文件。現在替換jasperreport庫中的jar文件。