把文本文件的文字读出来,然后写到PDF文件

其中两个文件关于编码和字体( 下面例子会用到)。
cjkencodings.properties
UniGB-UCS2-H= UniGB-UCS2-H
UniGB-UCS2-V= UniGB-UCS2-H UniGB-UCS2-V
cjkfonts.properties
STSong-Light= Adobe-GB1-UCS2_UniGB-UCS2-H_UniGB-UCS2-V_
STSongStd-Light= Adobe-GB1-UCS2_UniGB-UCS2-H_UniGB-UCS2-V_
 
我下载的是目前最新的包—— itext-1.4.7.jar  一个简单的示例代码如下:
package powerwind;
 
import java.io.*;
 
import com.lowagie.text.*;
import com.lowagie.text.pdf.*;
 
// 功能 : 把文本文件的文字读出来 , 然后写到 PDF 文件
public class TxtToPdf {
 
    public static void main(String[] args) {
 
       Document doc = null ;
       BufferedReader br = null ;
 
       final String pdfFilename = "PdfFile.pdf" ;
       final String txtFilename = "TxtFile.txt" ;
       // 设置纸张为 A5
 
       try {
           doc = new Document();
          doc.setPageSize(PageSize. A5 );
 
           PdfWriter.getInstance(doc, new FileOutputStream(pdfFilename));
 
           // 设置字体和编码:
           BaseFont baseFont = BaseFont.createFont( "STSong-Light" , "UniGB-UCS2-H" , BaseFont. NOT_EMBEDDED );
           Font font = new Font(baseFont, 8, Font. NORMAL );
           doc.open();
 
           br = new BufferedReader( new FileReader(txtFilename));
           String str = null ;
           // txt 文件读出一行 , 加入到 Document 的段落
           while ((str = br.readLine()) != null ) {
              doc.add( new Paragraph(str, font));
           }
       } catch (DocumentException de) {
           System. out .println(de);
       } catch (IOException ioe) {
           System. out .println(ioe);
 
       } finally {
           if (doc != null )
              doc.close();
           try {
              if (br != null )
                  br.close();
           } catch (IOException ioe) {
              System. out .println(ioe);
           }
       }
       System. out .println( "done" );
    }
}
 
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页