[英]itext html to pdf with multiple fonts
我使用addDirectory()方法一次添加了兩種Cardo字體:
public static final String FONTS = "src/main/resources/fonts/";
public void createPdf(String src, String fonts, String dest) throws IOException {
ConverterProperties properties = new ConverterProperties();
FontProvider fontProvider = new DefaultFontProvider();
fontProvider.addDirectory(fonts);
properties.setFontProvider(fontProvider);
HtmlConverter.convertToPdf(new File(src), new File(dest), properties);
}
不幸的是,使用Times字體代替Cardo或Cardo-Bold。 我也嘗試過使用其他Arial字體,但是它也不起作用
我正在使用iText 7.1.6和pdfHTML 2.1.3
最終使用的字體由字體選擇機制選擇,並且取決於多種因素。 如果您沒有以任何明確的方式在HTML中為Cardo
指定字體家族名稱,那么默認情況下應該使用Times
。
如果只想使用添加到FontProvider
的字體,則應該使用另一個DefaultFontProvider
的構造函數,因為默認構造函數會添加標准PDF字體和pdfHTML附帶的幾種字體。 使用另一個構造函數可以關閉在后台添加這些字體的操作:
// Passing false three times means not loading standard PDF fonts, fonts shipped with pdfHTML and system fonts
FontProvider fontProvider = new DefaultFontProvider(false, false, false);
fontProvider.addDirectory(fonts);
properties.setFontProvider(fontProvider);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.