java生成pdf 中文可以显示

java生成pdf的所需的jar包
<dependency>
    <groupId>com.itextpdf</groupId>
    <artifactId>itextpdf</artifactId>
    <version>5.5.8</version>
</dependency>
代码如下:
public String getNewPdf() throws IOException, DocumentException {
    File file = new File("D:\\print\\test4.pdf");
    FileOutputStream out = new FileOutputStream(file);
    //1.新建document对象
    //第一个参数是页面大小。接下来的参数分别是左、右、上和下页边距。
    Document document = new Document(PageSize.A4,20,20,30,30);// 是用于生成
    PdfWriter.getInstance(document, out);
    document.open();
    //使用系统本地字体,可以解决生成的pdf中无法显示中文问题,本处字体为宋体
    //可以直接把例如: C:\Windows\Fonts|ADOBESONGSTD-LIGHT.OTF字体文件拷贝到项目中
    //在创建字体时直接使用即可解决中文问题
    //BaseFont sysFont = BaseFont.createFont("STSongStd-Light", "UniGB-UCS2-H",true);
    BaseFont sysFont = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
    //BaseFont sysFont = BaseFont.createFont("D:\\simsun\\simsun.ttc,0", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
    Font font = new Font(sysFont, 12,Font.NORMAL);
    //Font font1 =FontFactory.getFont(FontFactory.COURIER, 14, Font.BOLD, new BaseColor(255, 150, 200));
    Paragraph par = new Paragraph("你好,很高兴认识你,我叫tom.",font);// 此类表示段落。
    Paragraph par1 =new Paragraph("这是我们第一个pdftext。", font );
    par.add("今天星期一今天是个好天气!!!!");
    par1.add("今天星期五今天是个好天气!!!!");
    document.add(par);
    document.add(par1);
    document.close();
    return "success";
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值