<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 6  文章 - 129  trackbacks - 0
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿(14)

    隨筆檔案(6)

    文章分類(467)

    文章檔案(423)

    相冊

    收藏夾(18)

    JAVA

    搜索

    •  

    積分與排名

    • 積分 - 825594
    • 排名 - 49

    最新評論

    閱讀排行榜

    評論排行榜

    iReport與JasperReport中文支持全面解決
    在使用iReport與JasperReport作為報表產生工具時, 中文支持是經常遇到的問題,筆者最近做的一個J2EE Web項目采用這套工具開發報表,也遇到了類似問題,本文總結了在使用iReport與JasperReport開發報表時中文支持的有關內容,希望能對讀者有所幫助.
    1 運行環境
        1.1 JasperReport 1.2.8
        JasperReports是iReport的核心內容。它是一個強有力的開源報表產生工具,可以將內容輸出到屏幕上、打印機或生成PDF, HTML, XLS, CSV和XML等文件。它完全用Java編寫,并可在各種Java應用(包括J2EE或WEB應用)中用來產生動態報表內容。JasperReports組織根據在一個XML文件中定義的報表設計通過JDBC訪問關系數據庫中的數據.填充報表數據之前必須先將報表設計被編譯成一個jasper文件。
    下載地址: http://jasperreports.sourceforge.net/
        1.2 iReport 1.2 8
        iReport是一個制作Jasperreport XML文件的優秀可視化開發工具,通過它可以方便的設計報表模板。目前最高版本為iReport 1.3.0
    下載地址: http://ireport.sourceforge.net
       1.3 iText 1.3.1
       iText是一個開放源碼的Java類庫,是用來生成PDF文件的。
    下載地址: http://itext.sourceforge.net
       1.4 iTextAsian.jar
       如果要在生成的pdf文件顯示中文等亞洲字符,還必須下載itext的亞洲字符包。
    下載地址: http://itextdocs.lowagie.com/downloads/iTextAsian.jar
    以上四個包必須加到應用程序的構建路徑中或加到CLASSPATH,若是Web應用放入相應的WEB-INF\lib\中。
    2 設置中文支持
        為了在報表中能夠顯示中文,加入以上四個包還不夠(因為以上四個包僅對報表生成及中文顯示提供了支持),必須設置報表上各顯示對象的相關屬性,各屬性設置說明如下:
        Font        name:    宋體 (中文字體)
        PDF font name:   STSong-Light
        PDF  Encoding:  UniGB-UCS2-H(Chinese Siplified)
        PDF   Embeded: √
        如下圖所示(顯示對象的屬性設置):

        注意:此三項的設置必須確保iTextAsian.jar亞洲語言包已經包含在項目中,否則出現編譯錯誤.
        若讀者覺得對每一個對象設置比較麻煩,可通過iReport的”Format”?”Fonts”菜單進行統一設置,并設成報表的默認字體。如下圖所示:

    3可能出現的問題
       經過以上的設置,報表中文的顯示應該沒什么問題了,筆者在報表的開發過程中遇到幾個問題,現總結如下:
      3.1 問題描述
       在WinXp中運行iReport1.2.8,設計報表時將數據字段的字體設置成中文字體,調好格式后編譯并運行,并使用JRViewer進行預覽一切正常(中文顯示正常),但使用PDF、Excel預覽出現如下錯誤:
       Could not load the following font :
       pdfFontName   : STSong-Light
       pdfEncoding   : UniGB-UCS2-H
       isPdfEmbedded : true
       產生原因:成成PDF的亞洲語言包沒有包含到項目中
       解決辦法:將亞洲語言包iTextAsian.jar包含到項中,可能過iReport的”Options”?”Classpath”將iTextAsian.jar添加Classpath中或者直接將iTextAsian.jar復制到iReport安裝目錄下的lib中.若是Web項目則應該將iTextAsian.jar復制到此項目的WEB-INF\lib\中.
       3.2 問題描述
        在WinXp中運行iReport1.2.8,設計報表時將數據字段的字體設置成中文字體,調好格式后編譯并運行,并使用JRViewer進行預覽一切正常(中文顯示正常),使用PDF、Excel預覽時無任何錯誤,但中文無法顯示(只顯示空白).
        產生原因:報表顯示對象的PDF字體屬性設置不正確
        解決辦法: 報表對象有關字體屬性的設置如下:
        Font        name:         宋體 (中文字體)
        PDF font name:  STSong-Light
        PDF Encoding:   UniGB-UCS2-H(Chinese Siplified)
        PDF Embeded:  √
       即如下圖所法

       3.3問題描述
        生成PDF、Excel文件時,中文顯示一切正常,但生成Html文件時顯示亂碼
     產生原因:主要是網頁編碼問題
        解決方法
     在JSP頁中生成Html時,設置 <%@ page contentType="text/html;charset=GB2312" %> 
     在Servlet中生成Html時,response.setContentType("text/html;charset=GB2312");
     若用戶對項目進行了統一編碼設定及過濾,則需要另作考慮,但主要還是集中在編碼問題上.例如:筆者最近做的項目是其于Struts的,對編碼進行了統一和過濾處理,生成Html頁面時無需指編碼就可正確生成Html頁面,并不會出亂碼,若設置成charset=GB2312反而出現了亂碼.總之,對編碼的統一與處理還是比較嘛煩的事.
        另外, 我們通過查看iReport生成的jrxml(<?xml version="1.0" encoding="UTF-8" ?>)文件可以發現, iReport保存的漢字都是UTF-8編碼。了解它的編碼可以有助于我們統一編碼方式。

    轉自:http://verytiny.iteye.com/blog/145764

    posted on 2012-12-07 09:14 Ke 閱讀(5817) 評論(0)  編輯  收藏 所屬分類: iReport
    主站蜘蛛池模板: 日韩视频免费在线观看| 欧亚一级毛片免费看| 免费无码毛片一区二区APP| 国产成人综合亚洲AV第一页| 毛片亚洲AV无码精品国产午夜| 女人18毛片a级毛片免费| 亚洲国产视频久久| 成人免费毛片内射美女APP | 国产成人免费视频| 亚洲国产精品无码专区影院| 韩国免费A级毛片久久| 亚洲色精品88色婷婷七月丁香| 一级做a爰片久久免费| 中文字幕亚洲综合久久菠萝蜜 | 十八禁在线观看视频播放免费| 亚洲男女内射在线播放| 中文字幕永久免费视频| 亚洲av午夜福利精品一区人妖| 久久国产精品萌白酱免费| 亚洲日韩在线视频| 天天干在线免费视频| 美女黄色毛片免费看| 亚洲中文久久精品无码| 99re6在线精品视频免费播放| 亚洲免费在线观看视频| 国产美女被遭强高潮免费网站| 美女扒开尿口给男人爽免费视频 | 亚洲日本VA中文字幕久久道具| 精品剧情v国产在免费线观看| 美女被暴羞羞免费视频| 亚洲熟妇中文字幕五十中出| 久久久久久国产精品免费免费男同| 亚洲精彩视频在线观看| 免费看大黄高清网站视频在线| 免费看一级高潮毛片| 国产亚洲精品自在久久| 在线看片免费不卡人成视频| 麻豆亚洲AV成人无码久久精品 | ww亚洲ww在线观看国产| 免费在线黄色网址| 无码免费一区二区三区免费播放|