Это звучит разумно, или есть более простой способ?
По существу пункты 1 и 2 вместе означают "собрать достаточно шрифтов, чтобы покрыть достаточно большую частькодовые точки Unicode ".Это, очевидно, необходимо.
Как @RoelN упоминает в своем ответе, Ното может быть набором шрифтов для рассмотрения.
Пункт 3, однако,
КогдаМне нужно добавить текст в PDF, я пытаюсь найти шрифт в моем наборе, который может обрабатывать все кодовые точки в строке, начиная со значения по умолчанию.
не имеет смысла.Конечно, если есть такой единственный шрифт, вы можете использовать его.Но что, если их нет?
Поэтому я бы предложил не рассчитывать на существование такого шрифта, а вместо этого разбить вашу строку на подстроки, каждая из которых состоит из символов, покрытых одним шрифтом из вашего списка, и нарисоватьполная строка по частям, меняя шрифт между частями.
Скорее всего, вам придется не только разбивать вашу строку по шрифту, но и по направлению (RTL против LTR), по крайней мере, на промежуточном этапе.
Есть ли список лучших N языков / систем письма, которые я должен поддерживать?
Какие языковые системы, о которых вы должны сообщить , четко зависят отваш вариант использования.Поскольку вы хотите, чтобы охватывал максимально возможное количество , вам, вероятно, следует просто начать с семейства шрифтов, такого как Noto, и расширять свой список шрифтов соответствующим образом всякий раз, когда ваше приложение регистрирует ошибку поиска для какого-либо символа.