Замена шрифтов - PowerPoint JavaScript API
Замена шрифтов
Если вы передумали использовать шрифт, вы можете заменить этот шрифт другим шрифтом. Все вхождения старого шрифта будут заменены новым шрифтом.
Aspose.Slides позволяет заменить шрифт следующим образом:
- Загрузите соответствующую презентацию.
- Загрузите шрифт, который будет заменён.
- Загрузите новый шрифт.
- Замените шрифт.
- Запишите изменённую презентацию в виде файла PPTX.
Этот JavaScript‑код демонстрирует замену шрифтов:
// Загружает презентацию
var pres = new aspose.slides.Presentation("Fonts.pptx");
try {
// Загружает исходный шрифт, который будет заменён
var sourceFont = new aspose.slides.FontData("Arial");
// Загружает новый шрифт
var destFont = new aspose.slides.FontData("Times New Roman");
// Заменяет шрифты
pres.getFontsManager().replaceFont(sourceFont, destFont);
// Сохраняет презентацию
pres.save("UpdatedFont_out.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
if (pres != null) {
pres.dispose();
}
}
Note
Чтобы задать правила, определяющие, что происходит в определённых условиях (например, если шрифт недоступен), см. Замена шрифтов.FAQ
В чём разница между «заменой шрифта», «заменой шрифтов» и «резервными шрифтами»?
Замена — это преднамеренный переход от одной гарнитуры к другой по всему документу. Подстановка — это правило типа «если шрифт недоступен, использовать X». Резервный шрифт применяется выборочно для отдельных отсутствующих глифов, когда базовый шрифт установлен, но не содержит требуемые символы.
Применяется ли замена к главным слайдам, макетам, примечаниям и комментариям?
Да. Замена затрагивает все объекты презентации, использующие исходный шрифт, включая главные слайды и примечания; комментарии также являются частью документа и учитываются шрифтовым движком.
Изменится ли шрифт внутри встроенных OLE‑объектов (например, Excel)?
Нет. Содержимое OLE контролируется своим приложением. Замена в презентации не переоформляет внутренние данные OLE; они могут отображаться как изображение или как внешне редактируемый контент.
Могу ли я заменить шрифт только в части презентации (по слайдам или областям)?
Целевая замена возможна, если менять шрифт на уровне нужных объектов/диапазонов, а не применять глобальную замену ко всей презентации. Общая логика выбора шрифта при рендеринге остаётся неизменной.
Как заранее определить, какие шрифты использует презентация?
Используйте [менеджер шрифтов]https://reference.aspose.com/slides/nodejs-java/aspose.slides/fontsmanager/: он предоставляет список [используемых гарнитур]https://reference.aspose.com/slides/nodejs-java/aspose.slides/fontsmanager/getfonts/ и информацию о [подстановках/«неизвестных» шрифтах]https://reference.aspose.com/slides/nodejs-java/aspose.slides/fontsmanager/getsubstitutions/, что помогает планировать замену.
Работает ли замена шрифтов при конвертации в PDF/изображения?
Да. При экспорте Aspose.Slides использует ту же последовательность выбора/подстановки шрифтов, поэтому заранее выполненная замена будет учтена при конвертации.
Нужно ли устанавливать целевой шрифт в системе, или можно присоединить папку со шрифтами?
Установка не требуется: библиотека позволяет загружать внешние шрифты из пользовательских папок для использования при рендеринге и экспорте.
Исправит ли замена «тофу» (квадратные блоки) вместо символов?
Только если целевой шрифт действительно содержит необходимые глифы. Если нет, настройте резервный шрифт для покрытия отсутствующих символов.