Смещение шрифта во время преобразования PDF в HTML с помощью инструмента pdf2htmlEx
ПРОБЛЕМЫ С ПЕРЕДАЧЕЙ PDF В HTML
- Все символы "ti","fi","tt" отсутствуют
- Проблема с перекрытием шрифтов
- ПРИМЕЧАНИЕ: я не получаю эту проблему с Firefox.Получение вышеуказанных проблем в Chrome в браузере Safari
Я ИСПОЛЬЗУЮ
- Использование версии pdf2htmlEX 0.13.6
- Используя следующую команду, чтобы преобразовать PDF в HTML
pdf2htmlEX --split-pages 1 --zoom 3 -fit-width 920 - правильная-текстовая видимость 1 --dest-dir $1 $2 2>&1
ПЫТАЛСЯ
Использование опции --fallback 1 решает все мои проблемы. Но
- Резервная опция снижает четкость документа.
- Таблица на странице исчезает, а скорее заменяется пустым пространством.
СОМНЕНИЯ
Не могли бы вы объяснить немного больше о запасных?
Я попробовал вышеупомянутый (используя запасной вариант). Пожалуйста, предложите мне, если вы предпочитаете другой подход для решения вышеуказанной проблемы со шрифтами.
Получение вышеупомянутых проблем с Chrome и Safari, тогда как в Firefox это работает нормально.
1 ответ
Вышеуказанная проблема возникает только в веб-браузерах webkit, таких как chrome и safari, которые предоставляют поддержку лигатур, в то время как браузер, как Firefox, этого не делает.
Лигатура - это комбинация двух или более букв, объединенных в один глиф
Первопричина
Эта проблема с отсутствующими символами происходит из-за поддержки лигатуры, предоставляемой этими современными браузерами - позвольте мне объяснить, как
1. Инструмент при преобразовании - он преобразует символы в глифы с использованием poppler для рендеринга - теперь эти браузеры, когда они встречают символы, такие как tt tf ti ff fi, считают их лигатурой и ищут глифы, соответствующие tt, а не tt
2. Так как у них нет соответствующих глифов - они просто пропускают символы и отрисовывают остальные - поэтому мы находим символы, отсутствующие
Может быть решено
Отключение / отключение лигатуры в этих браузерах - встраивание CSS в генерирующий контент
Для более подробной информации, пожалуйста, обратитесь:
Пожалуйста, поправьте меня, если я ошибаюсь.