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

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

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

    一條老狗

               老狗拉破車
    posts - 12, comments - 11, trackbacks - 0, articles - 0
      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    POI 如何得到 HSSFRow 的實(shí)際行高?

    Posted on 2007-07-27 14:22 一條老狗 閱讀(4101) 評論(2)  編輯  收藏 所屬分類: Java

    以下是官方的一個(gè)例子:

        HSSFWorkbook wb = new HSSFWorkbook();
        HSSFSheet s 
    = wb.createSheet();
        HSSFRow r 
    = null;
        HSSFCell c 
    = null;
        HSSFCellStyle cs 
    = wb.createCellStyle();
        HSSFFont f 
    = wb.createFont();
        HSSFFont f2 
    = wb.createFont();

        cs 
    = wb.createCellStyle();

        cs.setFont( f2 );
        
    //Word Wrap MUST be turned on
        cs.setWrapText( true );

        r 
    = s.createRow( (short2 );
        r.setHeight( (
    short0x349 );
        c 
    = r.createCell( (short2 );
        c.setCellType( HSSFCell.CELL_TYPE_STRING );
        c.setCellValue( 
    "Use \n with word wrap on to create a new line" );
        c.setCellStyle( cs );
        s.setColumnWidth( (
    short2, (short) ( ( 50 * 8 ) / ( (double1 / 20 ) ) );

        FileOutputStream fileOut 
    = new FileOutputStream( "workbook.xls" );
        wb.write( fileOut );
        fileOut.close();

     

    這里它是使用 r.setHeight((short)0x349) 寫死了行高的,如何根據(jù)實(shí)際內(nèi)容自動計(jì)算出其行高呢?
    我們可以不設(shè)置其行高,此時(shí)Excel能夠正確顯示出來,但看上去太擠,不好看。
    我是希望在文字需要占的實(shí)際行高基礎(chǔ)上再加上一些空白,這樣才好看。
    但此時(shí)調(diào)用 r.getHeight() 取不到值。

    我想這個(gè)需求可能是實(shí)現(xiàn)不了了。

     


    評論

    # re: POI 如何得到 HSSFRow 的實(shí)際行高?[未登錄]  回復(fù)  更多評論   

    2009-06-18 13:16 by HI
    重新打開后,能取到.

    # re: POI 如何得到 HSSFRow 的實(shí)際行高?  回復(fù)  更多評論   

    2009-10-22 11:12 by 肖斌
    我自己寫的斌希望你能有收獲

    happyyou2009@gmail.com
    public static float getExcelCellAutoHeight(String str, float fontCountInline) {
    float defaultRowHeight = 12.00f;
    float defaultCount = 0.00f;
    for (int i = 0; i < str.length(); i++) {
    float ff = getregex(str.substring(i, i + 1));
    defaultCount = defaultCount + ff;
    }
    return ((int) (defaultCount / fontCountInline) + 1) * defaultRowHeight;
    }

    public static float getregex(String charStr) {

    if(charStr==" ")
    {
    return 0.5f;
    }
    // 判斷是否為字母或字符
    if (Pattern.compile("^[A-Za-z0-9]+$").matcher(charStr).matches()) {
    return 0.5f;
    }
    // 判斷是否為全角

    if (Pattern.compile("[\u4e00-\u9fa5]+$").matcher(charStr).matches()) {
    return 1.00f;
    }
    Map<String, String> map = new HashMap<String, String>();
    map.put("#", "#");
    map.put("。", "。");
    map.put(",", ",");
    map.put("、", "、");
    map.put(";", ";");
    map.put("(", "(");
    map.put(")", ")");
    map.put("=", "=");
    map.put("-", "-");
    map.put(" ", " ");
    map.put("×", "×");
    map.put("&", "&");
    map.put("!", "!");
    map.put("《", "《");
    map.put("》", "》");
    map.put("“", "“");
    map.put("”", "”");
    map.put("?", "?");
    map.put("+", "+");
    map.put("【", "【");
    map.put("】", "】");
    map.put("{", "{");
    map.put("}", "}");
    if (map.containsKey(charStr)) {
    return 1.00f;
    }
    if (Pattern.compile("[^x00-xff]").matcher(charStr).matches()) {
    return 1.00f;
    }
    return 0.5f;

    }


    主站蜘蛛池模板: 亚洲综合久久夜AV | 99久久免费精品高清特色大片| 国产精品无码亚洲一区二区三区| 亚洲人成伊人成综合网久久| 亚洲国产日韩在线人成下载| 亚洲最大中文字幕| 亚洲成a人片7777| 亚洲乱码一二三四五六区| 亚洲国产人成在线观看| 亚洲fuli在线观看| 中文日韩亚洲欧美制服| 亚洲日本VA午夜在线电影| 亚洲AV无码国产精品永久一区| 亚洲国产av玩弄放荡人妇| 在线观看亚洲精品专区| 黄色毛片视频免费| 精选影视免费在线 | 久久国产乱子精品免费女| 91制片厂制作传媒免费版樱花| 59pao成国产成视频永久免费| 两性刺激生活片免费视频| 免费看的成人yellow视频| 免费va在线观看| 亚洲综合伊人久久综合| 亚洲AV日韩精品久久久久久久| 亚洲精品成人网站在线播放| 亚洲va久久久久| 三级片免费观看久久| a级毛片毛片免费观看久潮喷| 免费人成在线观看网站品爱网| 美女视频黄的全免费视频| 亚洲AV无码专区日韩| 国产亚洲一区二区精品| 亚洲国产精品成人综合久久久| 亚洲码和欧洲码一码二码三码| 五月婷婷免费视频| 久久A级毛片免费观看| 成年人性生活免费视频| 中文亚洲成a人片在线观看| 亚洲色图.com| 美女视频黄.免费网址|