Настройка подстановки шрифтов в презентациях на Android

Установить правила подстановки шрифтов

Aspose.Slides позволяет задать правила для шрифтов, которые определяют, что необходимо сделать в определённых условиях (например, когда шрифт недоступен) следующим образом:

  1. Загрузите соответствующую презентацию.
  2. Загрузите шрифт, который будет заменён.
  3. Загрузите новый шрифт.
  4. Добавьте правило для замены.
  5. Добавьте правило в коллекцию правил замены шрифтов презентации.
  6. Сгенерируйте изображение слайда, чтобы увидеть эффект.

Этот код на Java демонстрирует процесс подстановки шрифтов:

// Загружает презентацию
Presentation pres = new Presentation("Fonts.pptx");
try {
    // Загружает исходный шрифт, который будет заменён
    IFontData sourceFont = new FontData("SomeRareFont");
    
    // Загружает новый шрифт
    IFontData destFont = new FontData("Arial");
    
    // Добавляет правило шрифта для замены шрифта
    IFontSubstRule fontSubstRule = new FontSubstRule(sourceFont, destFont, FontSubstCondition.WhenInaccessible);
    
    // Добавляет правило в коллекцию правил подстановки шрифтов
    IFontSubstRuleCollection fontSubstRuleCollection = new FontSubstRuleCollection();
    fontSubstRuleCollection.add(fontSubstRule);
    
    // Добавляет коллекцию правил шрифта в список правил
    pres.getFontsManager().setFontSubstRuleList(fontSubstRuleCollection);
    
    // Шрифт Arial будет использован вместо SomeRareFont, когда последний недоступен
    IImage slideImage = pres.getSlides().get_Item(0).getImage(1f, 1f);
    
    // Сохраняет изображение на диск в формате JPEG
    try {
          slideImage.save("Thumbnail_out.jpg", ImageFormat.Jpeg);
    } finally {
         if (slideImage != null) slideImage.dispose();
    }
} finally {
    if (pres != null) pres.dispose();
}

Ограничения для шрифтов математических уравнений

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

Однако у уравнений Office Math есть важное ограничение. Если уравнение было создано с использованием Cambria Math, Aspose.Slides всё равно может требовать оригинальный шрифт Cambria Math для вычисления и рендеринга разметки уравнения правильно. Поэтому замена Cambria Math другим математическим шрифтом, например STIX Two Math, не поддерживается при рендеринге уравнений и может привести к исключению, указывающему, что требуется Cambria Math.

Чтобы успешно конвертировать такие презентации, убедитесь, что Cambria Math доступен Aspose.Slides во время выполнения. Вы можете установить шрифт в операционной системе или предоставить его как внешний шрифт, чтобы он мог участвовать в обычном процессе выбора шрифтов при рендеринге и конвертации.

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

FAQ

В чём разница между заменой шрифта и подстановкой шрифта?
Замена — это принудительное переопределение одного шрифта другим во всей презентации. Подстановка — это правило, которое срабатывает при определённом условии, например когда оригинальный шрифт недоступен, и тогда используется заданный резервный шрифт.

Когда именно применяются правила подстановки?
Правила участвуют в стандартной последовательности выбора шрифтов, которая оценивается во время загрузки, рендеринга и конвертации; если выбранный шрифт недоступен, применяется замена или подстановка.

Каково поведение по умолчанию, если не настроены ни замена, ни подстановка, и шрифт отсутствует в системе?
Библиотека попытается выбрать ближайший доступный системный шрифтом, аналогично тому, как это делает PowerPoint.

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

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

Есть ли различия в поведении подстановки на Windows, Linux и macOS?
Да. Поиск шрифтов начинается с каталогов шрифтов операционной системы. Набор доступных по умолчанию шрифтов и пути поиска различаются в разных платформах, что влияет на их доступность и необходимость подстановки.

Как подготовить окружение, чтобы минимизировать неожиданную подстановку при пакетных конверсиях?
Синхронизируйте набор шрифтов между машинами или контейнерами, добавьте внешние шрифты, необходимые для выходных документов, и встроьте шрифты в презентации, если это возможно, чтобы выбранные шрифты были доступны во время рендеринга.