Генерация телугу PDF из HTML с использованием ITextRenderer не получает точные символы?
Генерация телугу PDF из HTML с использованием ITextRenderer не получает точные символы? Получение сломанного персонажа (ожидаемые персонажи వినియోగించుకోకపోయినట్లయితే) в формате PDF. прикрепленный снимок экрана. введите описание изображения здесь
Мы используем код ниже для генерации UTF-8 PDF со шрифтом
1) body * {font-family: "Vani", Georgia, Serif;}
2) Документ doc = builder.parse(новый ByteArrayInputStream(content.toString(). GetBytes("UTF-8")));
. 3)renderer.getFontResolver() AddFont(contextPath+"Шрифты /VANI.TTF",BaseFont.IDENTITY_H,BaseFont.EMBEDDED); 4) jars itext 4.2 и core-render.jar
Пожалуйста, помогите получить исключенный вывод в PDF.
1 ответ
Ты используешь ITextRenderer
что заставляет поверить, что вы используете летающую тарелку. Летающая тарелка - это не iText. Flying Saucer - это сторонний продукт, который использует старую версию iText и не одобрен iText Group.
Эта старая версия iText не поддерживает телугу. Для поддержки таких систем письма, как Девенагари, Тамил, Телугу и т. Д., Требуется дополнение pdfCalligraph. Это дополнение доступно только для iText 7. Мы написали исчерпывающий технический документ по этому вопросу.
Если вы хотите конвертировать HTML с телугу в PDF, вы не можете достичь этого с Flying Saucer. Насколько я знаю, единственные инструменты, которые позволяют вам это делать, - это сочетание iText 7, надстройки pdfCalligraph для поддержки Telugy и надстройки pdfHTML для преобразования HTML в PDF.
Обновить:
Если вы хотите использовать pdfCalligraph, вам нужно добавить следующую зависимость:
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>typography</artifactId>
<version>[1.0,)</version>
<scope>compile</scope>
</dependency>
Поскольку pdfCalligraph является надстройкой с закрытым исходным кодом, вам также необходимо добавить наш репозиторий с закрытым исходным кодом в список репозиториев:
<repositories>
<repository>
<id>central</id>
<name>iText Repository-releases</name>
<url>https://repo.itextsupport.com/releases</url>
</repository>
</repositories>
Наконец, вам нужно ввести механизм лицензионного ключа (иначе pdfCalligraph выдаст com.itextpdf.licensekey.LicenseKeyException
или java.io.FileNotFoundException:itextkey.xml
):
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itext-licensekey</artifactId>
<version>[2.0,)</version>
<scope>compile</scope>
</dependency>
Вам нужен лицензионный ключ (KEY
), и вам нужно загрузить этот ключ следующим образом:
LicenseKey.loadLicenseFile(new FileInputStream(KEY));
KEY
содержит путь к файлу XML. Этот XML-файл является вашим лицензионным ключом. Вы можете получить такой файл XML здесь: бесплатная пробная версия.