itextpdf新增非自帶字型(例如微軟雅黑)

java_lover發表於2017-12-14

找到需要的字型,例如 在windows系統中找到需要字型,本例使用微軟雅黑,使用C:\\Windows\\Fonts\\msyh.ttf。

程式碼如下:

/**
     * 建立pdf,使用微軟雅黑字型
     * 
     * @return
     */
    public static void createPDF() {
        String outputPath = "D:\\test1.pdf";
        Document doc = new Document(PageSize.A4, 0, 0, 0, 0);
        try {
            PdfWriter.getInstance(doc, new FileOutputStream(outputPath));
            doc.open();
            log.info("開啟檔案成功");
            doc.newPage();

            /**
             * fontPath字型位置正確即可
             */
            String fontPath = "C:\\Windows\\Fonts\\msyh.ttf";
            BaseFont baseFont1 = BaseFont.createFont(fontPath, BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
            Font yahei12 = new Font(baseFont1, 12f);
            doc.add(new Paragraph("這是微軟雅黑字型!!!", yahei12));
            doc.close();

        } catch (Exception e) {
            e.printStackTrace();
        }
    }

 生成的pdf截圖如下:

 

限時領取免費Java相關資料,涵蓋了Java、Redis、MongoDB、MySQL、Zookeeper、Spring Cloud、Dubbo/Kafka、Hadoop、Hbase、Flink等高併發分散式、大資料、機器學習等技術。

資料傳送門:https://mp.weixin.qq.com/s/u2b_NVNuMuAPE0w4lc45fw

 

關注下方公眾號即可免費領取:

Java碎碎念公眾號

相關文章