转载:iText输出中文的三种字体选择方式

本文转载 http://blog.donews.com/ooFrank/archive/2006/04/30/851650.aspx 

1、使用iTextAsian.jar中的字体 
Java代码   收藏代码
  1. BaseFont.createFont("STSong-Light""UniGB-UCS2-H",BaseFont.NOT_EMBEDDED);  

2、使用Windows系统字体(TrueType) 
Java代码   收藏代码
  1. BaseFont.createFont("C:/WINDOWS/Fonts/SIMYOU.TTF", BaseFont.IDENTITY_H,BaseFont.NOT_EMBEDDED);    
  
3、使用资源字体(ClassPath) 
Java代码   收藏代码
  1. BaseFont.createFont("/SIMYOU.TTF", BaseFont.IDENTITY_H,BaseFont.NOT_EMBEDDED);     


示例代码: 
Java代码   收藏代码
  1. ByteArrayOutputStream baos = new ByteArrayOutputStream(OUTPUT_BYTE_ARRAY_INITIAL_SIZE);  
  2.  Document document = new Document(PageSize.A4);  
  3.  PdfWriter writer = PdfWriter.getInstance(document, baos);  
  4.  writer.setViewerPreferences(PdfWriter.AllowPrinting  | PdfWriter.PageLayoutSinglePage);  
  5.  BaseFont bf = BaseFont.createFont("STSong-Light""UniGB-UCS2-H",BaseFont.NOT_EMBEDDED);  
  6.  Font font = new Font(bf, 12, Font.NORMAL);  
  7.  document.open();  
  8.  Paragraph p = new Paragraph("你好", font);   
  9.  document.add(p);  
  10.  document.add(new Paragraph("Test2"));  
  11.  Table table = new Table(23);  
  12.  table.addCell(new Phrase("我好", font));  
  13.  table.addCell("C2R1");  
  14.  table.addCell("C1R2");  
  15.  table.addCell("C2R2");  
  16.  Cell c = (Cell) table.getElement(00);  
  17.  c.setVerticalAlignment("Middle");  
  18.  c.setBackgroundColor(new Color(25500));  
  19.  c.setHorizontalAlignment("Center");  
  20.  document.add(table);  
  21.  document.close();  
  22.  baos.writeTo(new FileOutputStream("F:\\test.pdf"));   

你可能感兴趣的:(itext)