2
我無法讓飛碟使用不存在於我的主字體中的字形/ charachters的輔助字體。我使用這個目的在Flying Saucer PDF生成器中使用Primary和Fallbackfont
的Java代碼是或多或少:
String result = getPrintHtmlContent(urlString);
result = CharacterConverter.replaceInvalidCharacters(result);
ITextRenderer renderer = new ITextRenderer();
renderer.getFontResolver();
renderer.getFontResolver().addFont(FONTS_DIR_PATH + "ARIALUNI.TTF", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
renderer.getFontResolver().addFont(FONTS_DIR_PATH + "droidsans/DroidSans.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
renderer.getFontResolver().addFont(FONTS_DIR_PATH + "droidsans/DroidSansBold.ttf", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
renderer.setDocumentFromString(result, "http://" + frontendHost + ":" + frontendPort + frontendContextRoot);
renderer.layout();
renderer.createPDF(os);
而CSS:
body {
font-family: "Droid Sans", "Arial Unicode MS";
}
我也包括在CSS中的字體使用@font-face
規則。
我能夠得到這個工作使用任何一種字體分開,所以似乎沒有問題,飛碟找到字體或CSS不能正確呈現。
如果我在另一方面,按上述並嘗試用兩種字體輸出PDF僅使用德羅伊德桑...
它甚至有可能在飛碟使用「備用字體」,如它在網站上?