Настройка подстановки шрифтов в презентациях с использованием JavaScript
Задать правила подстановки шрифтов
Aspose.Slides позволяет задать правила для шрифтов, определяющие, что необходимо сделать в определённых условиях (например, когда шрифт недоступен), следующим образом:
- Загрузите соответствующую презентацию.
- Загрузите шрифт, который будет заменён.
- Загрузите новый шрифт.
- Добавьте правило для замены.
- Добавьте правило в коллекцию правил замены шрифтов презентации.
- Сгенерируйте изображение слайда, чтобы увидеть результат.
Этот код JavaScript демонстрирует процесс подстановки шрифтов:
// Загружает презентацию
var pres = new aspose.slides.Presentation("Fonts.pptx");
try {
// Загружает исходный шрифт, который будет заменён
var sourceFont = new aspose.slides.FontData("SomeRareFont");
// Загружает новый шрифт
var destFont = new aspose.slides.FontData("Arial");
// Добавляет правило шрифта для замены шрифта
var fontSubstRule = new aspose.slides.FontSubstRule(sourceFont, destFont, aspose.slides.FontSubstCondition.WhenInaccessible);
// Добавляет правило в коллекцию правил подстановки шрифтов
var fontSubstRuleCollection = new aspose.slides.FontSubstRuleCollection();
fontSubstRuleCollection.add(fontSubstRule);
// Добавляет коллекцию правил шрифтов в список правил
pres.getFontsManager().setFontSubstRuleList(fontSubstRuleCollection);
// Шрифт Arial будет использоваться вместо SomeRareFont, когда последний недоступен
var slideImage = pres.getSlides().get_Item(0).getImage(1.0, 1.0);
// Сохраняет изображение на диск в формате JPEG
try {
slideImage.save("Thumbnail_out.jpg", aspose.slides.ImageFormat.Jpeg);
} finally {
if (slideImage != null) {
slideImage.dispose();
}
}
} finally {
if (pres != null) {
pres.dispose();
}
}
NOTE
Возможно, вы захотите увидеть Font Replacement.Ограничения для шрифтов математических уравнений
Правила подстановки шрифтов участвуют в стандартном процессе выбора шрифта, используемом при рендеринге и конвертации. Они подходят для обычных текстовых сценариев, когда Aspose.Slides может заменить недоступный шрифт другим доступным шрифтом в соответствии с настроенным правилом.
Однако у уравнений Office Math есть важное ограничение. Если уравнение было создано с использованием Cambria Math, Aspose.Slides всё равно может потребовать оригинальный шрифт Cambria Math для расчёта и правильного рендеринга макета уравнения. По этой причине подмена Cambria Math другим математическим шрифтом, например STIX Two Math, не поддерживается при рендеринге уравнений и может всё ещё приводить к исключению, указывающему, что требуется Cambria Math.
Чтобы успешно конвертировать такие презентации, убедитесь, что Cambria Math доступен Aspose.Slides во время выполнения. Вы можете установить шрифт в операционной системе или предоставить его в виде внешний шрифт, чтобы он мог участвовать в обычном процессе выбора шрифта при рендеринге и конвертации.
Это ограничение относится только к рендерингу уравнений. Описанные выше стандартные правила подстановки шрифтов по‑прежнему применяются к обычному тексту презентации, когда оригинальный шрифт недоступен.
FAQ
В чём разница между заменой шрифта и подстановкой шрифта?
Replacement — это принудительное переопределение одного шрифта другим во всей презентации. Подстановка — это правило, которое срабатывает при определённом условии, например, когда оригинальный шрифт недоступен, и тогда используется заданный запасной шрифт.
Когда именно применяются правила подстановки?
Правила участвуют в стандартной последовательности выбор шрифта, которая оценивается во время загрузки, рендеринга и конвертации; если выбранный шрифт недоступен, применяется замена или подстановка.
Каково поведение по умолчанию, если ни замена, ни подстановка не настроены и шрифт отсутствует в системе?
Библиотека попытается выбрать наиболее подходящий доступный системный шрифт, аналогично тому, как это делает PowerPoint.
Могу ли я прикрепить пользовательские внешние шрифты во время выполнения, чтобы избежать подстановки?
Да. Вы можете добавить внешние шрифты во время выполнения, чтобы библиотека учитывала их при выборе и рендеринге, в том числе при последующих конвертациях.
Поставляет ли Aspose какие-либо шрифты вместе с библиотекой?
Нет. Aspose не распространяет ни платные, ни бесплатные шрифты; вы добавляете и используете шрифты по своему усмотрению и ответственности.
Есть ли различия в поведении подстановки на Windows, Linux и macOS?
Да. Поиск шрифтов начинается с каталогов шрифтов операционной системы. Набор доступных по умолчанию шрифтов и пути поиска различаются между платформами, что влияет на их доступность и необходимость подстановки.
Как подготовить окружение, чтобы минимизировать неожиданную подстановку при пакетных конверсиях?
Синхронизируйте набор шрифтов между машинами или контейнерами, добавьте внешние шрифты необходимые для выходных документов, и встроите шрифты в презентации, когда это возможно, чтобы выбранные шрифты были доступны во время рендеринга.