iText輸出中文的三種字型選擇方式

2021-10-04 05:31:30 字數 1786 閱讀 6068

1、使用itextasian.jar中的字型

basefont.createfont("stsong-light", "unigb-ucs2-h",basefont.not_embedded);

2、使用windows系統字型(truetype)

basefont.createfont("c:/windows/fonts/simyou.ttf", basefont.identity_h,basefont.not_embedded);    

3、使用資源字型(classpath)

basefont.createfont("/simyou.ttf", basefont.identity_h,basefont.not_embedded);   

示例**:

第一種方式

bytearrayoutputstream baos = new bytearrayoutputstream(output_byte_array_initial_size);

document document = new document(pagesize.a4);

pdfwriter writer = pdfwriter.getinstance(document, baos);

writer.setviewerpreferences(pdfwriter.allowprinting  | pdfwriter.pagelayoutsinglepage);

basefont bf = basefont.createfont("stsong-light", "unigb-ucs2-h",basefont.not_embedded);

font font = new font(bf, 12, font.normal);

document.open();

paragraph p = new paragraph("你好", font); 

document.add(p);

document.add(new paragraph("test2"));

table table = new table(2, 3);

table.addcell(new phrase("我好", font));

table.addcell("c2r1");

table.addcell("c1r2");

table.addcell("c2r2");

cell c = (cell) table.getelement(0, 0);

c.setverticalalignment("middle");

c.setbackgroundcolor(new color(255, 0, 0));

c.sethorizontalalignment("center");

document.add(table);

document.close();

baos.writeto(new fileoutputstream("f:"));      

這種方式可能遇到的問題是adober的版本不同造成中文不能顯示,可以用超星等其他瀏覽器檢視效果

第二種方式 

public static void main(string args)

catch(documentexception de)

catch(ioexception ioe)         

// step 5: we close the document

document.close();

system.out.println(">>> export : "+"d://chinesepdf005__.pdf");

}

字型載入三種方式

這是一篇很簡短的文章,介紹了 ios 自定義字型載入的三種方式。之後直接使用即可 void staticload void dynamicload else self dynamicfontlabel font uifont fontwithname fontname size 50 cfrelea...

ios字型適配的三種實現方法

ios字型規範與多螢幕適配1 ios字型規範與多螢幕適配2 方法一 利用running time執行時,替換方法的方法進行適配字型 如下 uifont zspsize.h zspuifonttext created by zsp on 2017 5 18.import import inte ce ...

詳解iOS設定字型的三種方式

有時候專案需要顯示一些非系統的字型達到一些ui的效果,目前設定字型有三種方式,預設方式 bundle方式,coretext方式。1 預設方式 這種方式就是正常的字型設定方式 label.font uifont fontwithname blazed size 42 至於第乙個引數的名字,可以通過以下...