ITEXT-PDF彩色字体显示-支持中文

14 篇文章 2 订阅

问题场景

利用itext自动生成PDF的过程中,一般情况下字体颜色都是黑色的,但是遇到一些小错误需要报出在PDF上,用彩色字体能达到效果。

代码

需导入的jar包:itext-pdfa-5.5.6.jar、itext-xtra-5.5.6.jar、itext-5.5.6.jar、itext-asian.jar

    /**
     * 用彩色字体加入警告
     * @param document
     * @param warn      警告内容
     * @throws DocumentException
     */
    private static void addWarning(Document document, String warn) throws DocumentException {

        FontSelector selector = new FontSelector();
        //非汉字字体颜色
        Font f1 = FontFactory.getFont(FontFactory.TIMES_ROMAN, 12);
        f1.setColor(BaseColor.RED);
        //汉字字体颜色
        Font f2 = FontFactory.getFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
        f2.setColor(BaseColor.RED);

        selector.addFont(f1);
        selector.addFont(f2);
        Phrase ph = selector.process(warn);

        Paragraph p = new Paragraph(ph);
        p.setAlignment(1);

        document.add(p);
    }

效果

这里写图片描述

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值