Создание коллекции резервных шрифтов

Применить правила резервного шрифта

Экземпляры класса FontFallBackRule могут быть организованы в FontFallBackRulesCollection, который реализует интерфейс IFontFallBackRulesCollection. Можно добавлять или удалять правила из коллекции.

Затем эту коллекцию можно назначить свойству FontFallBackRulesCollection класса FontsManager. FontsManager контролирует шрифты во всей презентации. Подробнее О FontsManager и FontsLoader.

Каждый Presentation имеет свойство FontsManager со своей собственной копией класса FontsManager.

Ниже приведён пример того, как создать коллекцию правил резервных шрифтов и назначить её в FontsManager определённой презентации:

using (Presentation presentation = new Presentation())
{
	IFontFallBackRulesCollection userRulesList = new FontFallBackRulesCollection();

	userRulesList.Add(new FontFallBackRule(0x0B80, 0x0BFF, "Vijaya"));
	userRulesList.Add(new FontFallBackRule(0x3040, 0x309F, "MS Mincho, MS Gothic"));

	presentation.FontsManager.FontFallBackRulesCollection = userRulesList;
}

После инициализации FontsManager коллекцией резервных шрифтов, резервные шрифты применяются при рендеринге презентации.

FAQ

Будут ли мои правила резервного шрифта встроены в файл PPTX и видны в PowerPoint после сохранения?

Нет. Правила резервного шрифта являются настройками рендеринга во время выполнения; они не сериализуются в PPTX и не будут отображаться в интерфейсе PowerPoint.

Применяется ли резервный шрифт к тексту внутри SmartArt, WordArt, диаграмм и таблиц?

Да. Для текста в этих объектах используется тот же механизм замены глифов.

Поставляется ли с библиотекой какие‑либо шрифты от Aspose?

Нет. Вы добавляете и используете шрифты самостоятельно, неся за это ответственность.

Можно ли использовать замену/подстановку недостающих шрифтов и резервный шрифт для отсутствующих глифов одновременно?

Да. Это независимые этапы одного и того же конвейера разрешения шрифтов: сначала движок определяет доступность шрифтов (replacement/substitution), затем резервный шрифт заполняет пробелы для отсутствующих глифов в доступных шрифтах.