# Оптимизация замены шрифтов в презентациях с использованием C++

> Беспрепятственно заменяйте шрифты в Aspose.Slides для C++, обеспечивая единообразную типографику в презентациях PowerPoint и OpenDocument.

Source: https://docs.aspose.com/slides/ru/cpp/font-replacement/
Updated: 2026-07-31


## **Замена шрифтов**

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

Aspose.Slides позволяет выполнить замену шрифта следующим образом:

1. Загрузите соответствующую презентацию. 
2. Загрузите шрифт, который будет заменён. 
3. Загрузите новый шрифт. 
4. Выполните замену шрифта. 
5. Сохраните изменённую презентацию в формате PPTX.

Этот код C++ демонстрирует замену шрифта:
``` cpp
// Загружает презентацию
auto presentation = System::MakeObject<Presentation>(u"Fonts.pptx");

// Загружает исходный шрифт, который будет заменён
auto sourceFont = System::MakeObject<FontData>(u"Arial");

// Загружает новый шрифт
auto destFont = System::MakeObject<FontData>(u"Times New Roman");

// Заменяет шрифты
presentation->get_FontsManager()->ReplaceFont(sourceFont, destFont);

// Сохраняет презентацию
presentation->Save(u"UpdatedFont_out.pptx", SaveFormat::Pptx);
```


{{% alert title="Note" color="warning" %}} 

Чтобы задать правила, определяющие, что происходит в определённых условиях (например, если шрифт недоступен), см. [**Замена шрифтов**](/slides/ru/cpp/font-substitution/). 

{{% /alert %}}

## **Часто задаваемые вопросы**

**В чём разница между «заменой шрифтов», «заменой» и «резервными шрифтами»?**

Замена — это намеренный переход от одной семейства к другой во всём документе. [Замена](/slides/ru/cpp/font-substitution/) — это правило типа «если шрифт недоступен, использовать X». [Резервный шрифт](/slides/ru/cpp/fallback-font/) применяется выборочно для отдельных отсутствующих глифов, когда базовый шрифт установлен, но не содержит требуемых символов.

**Применяется ли замена к шаблонам слайдов, макетам, заметкам и комментариям?**

Да. Замена затрагивает все объекты презентации, использующие исходный шрифт, включая шаблоны слайдов и заметки; комментарии также являются частью документа и учитываются шрифтовым движком.

**Изменится ли шрифт внутри внедрённых OLE‑объектов (например, Excel)?**

Нет. [OLE‑контент](/slides/ru/cpp/manage-ole/) управляется своим приложением. Замена в презентации не переоформляет внутренние данные OLE; они могут отображаться как изображение или как внешне редактируемый контент.

**Можно ли заменить шрифт только в части презентации (по слайдам или регионам)?**

Целевая замена возможна, если изменять шрифт на уровне нужных объектов/диапазонов, а не выполнять глобальную замену для всего документа. Общая логика выбора шрифта при рендеринге остаётся прежней.

**Как заранее определить, какие шрифты использует презентация?**

Используйте [менеджер шрифтов] презентации(https://reference.aspose.com/slides/cpp/aspose.slides/fontsmanager/): он предоставляет список [используемых семейств] (https://reference.aspose.com/slides/cpp/aspose.slides/fontsmanager/getfonts/) и информацию о [заменах/«неизвестных» шрифтах] (https://reference.aspose.com/slides/cpp/aspose.slides/fontsmanager/getsubstitutions/), что помогает планировать замену.

**Работает ли замена шрифтов при конвертации в PDF/изображения?**

Да. При экспорте Aspose.Slides применяет ту же [последовательность выбора/замены шрифтов](/slides/ru/cpp/font-selection-sequence/), поэтому заранее выполненная замена будет соблюдена при конвертации.

**Нужно ли устанавливать целевой шрифт в системе или можно прикрепить папку со шрифтами?**

Установка не требуется: библиотека позволяет [загружать внешние шрифты](/slides/ru/cpp/custom-font/) из пользовательских папок для использования при [рендеринге и экспорте](/slides/ru/cpp/convert-powerpoint/).

**Исправит ли замена проблему «тофу» (квадратов вместо символов)?**

Только если целевой шрифт действительно содержит необходимые глифы. В противном случае [настройте резервный шрифт](/slides/ru/cpp/fallback-font/) для покрытия отсутствующих символов.
