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

x33g5p2x  于2021-12-28 转载在 其他  
字(0.7k)|赞(0)|评价(0)|浏览(342)

问题场景

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

代码

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

  1. /** * 用彩色字体加入警告 * @param document * @param warn 警告内容 * @throws DocumentException */
  2. private static void addWarning(Document document, String warn) throws DocumentException {
  3. FontSelector selector = new FontSelector();
  4. //非汉字字体颜色
  5. Font f1 = FontFactory.getFont(FontFactory.TIMES_ROMAN, 12);
  6. f1.setColor(BaseColor.RED);
  7. //汉字字体颜色
  8. Font f2 = FontFactory.getFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
  9. f2.setColor(BaseColor.RED);
  10. selector.addFont(f1);
  11. selector.addFont(f2);
  12. Phrase ph = selector.process(warn);
  13. Paragraph p = new Paragraph(ph);
  14. p.setAlignment(1);
  15. document.add(p);
  16. }

效果

相关文章