我使用PdfAWriter創建PDF-A(PDF存檔格式)文件並使用.ttf將PDF字體嵌入。我的TTF文件在config文件夾下。 當我嘗試創建字體像下面工作在當地在寫PDF-A(存檔)文件時從Jar載入字體
Font BOLD_10 = FontFactory.getFont("./config/FreeSansBold.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED, 10);
Document document; //Document created using PDF-A writer
PdfPTable table = new PdfPTable(new float[] { 50,50 });
table.setWidthPercentage(new Float(100));
Paragraph paragraph = new Paragraph("Header 1", BOLD_10);
document.add(paragraph);
如果我嘗試建立一個jar文件並放置.TFF罐子裏面,下面的代碼不工作,因爲它無法找到ttf文件的路徑:
Font BOLD_10 = FontFactory.getFont(「./config/FreeSansBold.ttf」,BaseFont.IDENTITY_H,BaseFont.EMBEDDED,10);
如何配置我的字體文件路徑從jar中動態選取?
我們嘗試使用內置字體和BaseFont代替.ttf,但它們對於「PDF-A」文件不起作用(在運行時拋出異常)。
除了使用TTF之外,是否還有其他方法可以將字體嵌入到PDF-A文件中?
解決了這樣的問題 - (1)將.ttf文件放在「com/mycompany/pdfutility/fonts「目錄並將它們包含在jar文件中。 (2)在此代碼中提及此文件: Font BOLD_10 = FontFactory.getFont(「/ com/mycompany/pdfutility/fonts/FreeSansBold.ttf」,BaseFont.IDENTITY_H,BaseFont.EMBEDDED,10); – 2014-10-29 09:23:29