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

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

Source: https://docs.aspose.com/slides/ru/python-java/font-replacement/
Updated: 2026-09-14

## **Обзор**

Aspose.Slides позволяет заменить один шрифт другим по всей презентации. При замене шрифта все вхождения исходного шрифта меняются на новый шрифт.

Чтобы выполнить замену шрифтов, загрузите презентацию, определите исходный шрифт и шрифт‑замену, вызовите метод замены шрифта и сохраните изменённую презентацию как файл PPTX. Этот подход полезен, когда вы намеренно хотите переключить семью шрифтов во всей презентации.

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

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

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

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

Этот код на Python демонстрирует замену шрифтов:

```python
import jpype
import asposeslides

if not jpype.isJVMStarted():
    jpype.startJVM()

from asposeslides.api import FontData, Presentation, SaveFormat

# Загрузить презентацию.
presentation = Presentation("Fonts.pptx")
try:
    # Загрузить исходный шрифт, который будет заменён.
    source_font = FontData("Arial")

    # Загрузить новый шрифт.
    destination_font = FontData("Times New Roman")

    # Заменить шрифт.
    presentation.getFontsManager().replaceFont(source_font, destination_font)

    # Сохранить презентацию.
    presentation.save("UpdatedFont_out.pptx", SaveFormat.Pptx)
finally:
    presentation.dispose()
```

{{% alert title="Note" color="info" %}} 
Чтобы задать правила, определяющие, что происходит в определённых условиях (например, если шрифт недоступен), см. [Замена шрифтов](/slides/ru/python-java/font-substitution/). 
{{% /alert %}}

## **Вопросы и ответы**

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

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

**Применяется ли замена к главным слайдам, макетам, примечаниям и комментариям?**

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

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

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

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

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

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

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

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

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

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

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

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

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