PDFBox не может найти правильный запасной шрифт для шрифта cid-keyed - PullRequest
0 голосов
/ 18 октября 2018

В нашей компании мы создаем PDF с помощью tcpdf.Эти PDF-файлы будут загружены и распечатаны из Java-приложения, которое использует последнюю версию PDF-файла.

Обычно они печатаются без проблем, но иногда у нас есть документы с китайскими / японскими символами.

Дляэтими символами будет использоваться шрифт (-type) cid0ct .

Если я открою такой PDF-файл в средстве просмотра PDF, проблем с его просмотром не возникнет.Родные окна, родные macOS, программа просмотра Chrome PDF, все в порядке.

Если я пытаюсь напечатать (или преобразовать в изображение) такой файл PDF, я получаю только некоторые предупреждения из-за использования резервного шрифта, но всегда используется неправильный шрифтпоэтому есть много пропущенных глифов.

Команда командной строки для преобразования:

java -jar pdfbox-app-2.0.12.jar PDFToImage invoice_1001606.pdf

Результат (сокращен):

Okt 17, 2018 10:29:59 AM org.apache.pdfbox.pdmodel.font.PDCIDFontType0 <init>
WARNUNG: Using fallback BrushScriptMT for CID-keyed font cid0ct
Okt 17, 2018 10:29:59 AM org.apache.pdfbox.rendering.CIDType0Glyph2D getPathForCharacterCode
WARNUNG: No glyph for 20013 (CID 0295) in font cid0ct
Okt 17, 2018 10:29:59 AM org.apache.pdfbox.rendering.CIDType0Glyph2D getPathForCharacterCode
WARNUNG: No glyph for 38920 (CID 0db2) in font cid0ct
Okt 17, 2018 10:29:59 AM org.apache.pdfbox.rendering.CIDType0Glyph2D getPathForCharacterCode

Я установил полный googlefonts пакет для тестирования, но pdfbox снова выбирает только неправильный шрифт:

Okt 18, 2018 8:09:19 AM org.apache.pdfbox.pdmodel.font.PDCIDFontType0 <init>
WARNUNG: Using fallback Jua-Regular for CID-keyed font cid0ct

Встраивание шрифта в pdf не вариант, потому что мы (или наши клиенты) генерируем тысячи документов каждый день, и это будетувеличить размер PDF.

Я создал пример PDF с несколькими китайскими / японскими символами: Google Диск - invoice_12.pdf

Так выглядит PDFкак в chrome: Original pdf in chrome pdf viewer

Вот как выглядит изображение после его преобразования: Converted image

Возможно, у вас есть идеикак установить правильный / резервный шрифтили вы знаете правильный шрифт для использования / установки.

Единственная идея, которая у меня есть, - добавить в tcpdf собственный шрифт, который я также могу установить в своей операционной системе.

...