Лигатуры - это символы Юникода, которые представлены более чем одной кодовой точкой. Например, в Деванагари त्र
- лигатура, состоящая из кодовых точек त + ् + र
.
При просмотре в простых редакторах текстовых файлов, таких как Блокнот, त्र
отображается как त् + र
и сохраняется в виде трех символов Юникода. Однако, когда тот же файл открывается в Firefox, он отображается как правильная лигатура.
Так что мой вопрос в том, как программно обнаружить такие лигатуры при чтении файла из моего кода. Поскольку Firefox делает это, должен существовать способ сделать это программно. Существуют ли какие-либо свойства Unicode, которые содержат эту информацию, или мне нужно иметь карту для всех таких лигатур?
Свойство SVG CSS text-render
, когда установлено optimizeLegibility
делает то же самое вещь (объединить кодовые точки в правильную лигатуру).
PS: я использую Java.
РЕДАКТИРОВАТЬ
Цель моего кода - подсчитать символы в тексте Unicode, предполагая, что лигатура является одним символом. Поэтому мне нужен способ свести несколько кодов в одну лигатуру.