Укажите шрифты по умолчанию для презентации в .NET
Использовать шрифты по умолчанию для визуализации презентации
Aspose.Slides позволяет задать шрифт по умолчанию для визуализации презентации в PDF, XPS или миниатюры. Эта статья показывает, как определить DefaultRegularFont и DefaultAsianFont для использования в качестве шрифтов по умолчанию. Пожалуйста, следуйте инструкциям ниже, чтобы загрузить шрифты из внешних каталогов с помощью Aspose.Slides для .NET API:
- Создайте экземпляр LoadOptions.
- Установите DefaultRegularFont в желаемый шрифт. В следующем примере я использовал Wingdings.
- Установите DefaultAsianFont в желаемый шрифт. В приведённом примере я использовал Wingdings.
- Загрузите презентацию, используя Presentation и указав параметры загрузки.
- Затем сгенерируйте миниатюры слайдов, PDF и XPS, чтобы проверить результаты.
Реализация вышеописанного приведена ниже.
// Используйте параметры загрузки для указания шрифтов по умолчанию для обычных и азиатских символов
LoadOptions loadOptions = new LoadOptions(LoadFormat.Auto);
loadOptions.DefaultRegularFont = "Wingdings";
loadOptions.DefaultAsianFont = "Wingdings";
using (Presentation pptx = new Presentation("DefaultFonts.pptx", loadOptions))
{
using (IImage image = pptx.Slides[0].GetImage(1, 1))
{
image.Save("DefaultFonts_out.png", ImageFormat.Png);
}
pptx.Save("DefaultFonts_out.pdf", SaveFormat.Pdf);
pptx.Save("DefaultFonts_out.xps", SaveFormat.Xps);
}
FAQ
Что именно влияют DefaultRegularFont и DefaultAsianFont — только экспорт или также миниатюры, PDF, XPS, HTML и SVG?
Они участвуют в конвейере рендеринга для всех поддерживаемых выводов. Это включает миниатюры слайдов, PDF, XPS, raster images, HTML, и SVG, поскольку Aspose.Slides использует одну и ту же логику размещения и разрешения глифов для этих целей.
Применяются ли шрифты по умолчанию при простом открытии и сохранении PPTX без какого‑либо рендеринга?
Нет. Шрифты по умолчанию имеют значение, когда необходимо измерить и отрисовать текст. Простое открытие и сохранение презентации не изменяет сохранённые наборы шрифтов или структуру файла. Шрифты по умолчанию вступают в действие только при операциях, требующих рендеринга или перераспределения текста.
Если я добавлю свои собственные папки со шрифтами или предоставлю шрифты из памяти, будут ли они учитываться при выборе шрифтов по умолчанию?
Да. Custom font sources расширяют каталог доступных семейств и глифов, которые может использовать движок. Шрифты по умолчанию и любые fallback rules будут сначала искать в этих источниках, обеспечивая более надёжное покрытие на серверах и в контейнерах.
Влияют ли шрифты по умолчанию на метрики текста (кернинг, advance) и, следовательно, на переносы строк и обертку?
Да. Смена шрифта изменяет метрики глифов и может влиять на разрывы строк, переносы и разбиение на страницы во время рендеринга. Для стабильности разметки рекомендуется embed the original fonts или выбрать метрически совместимые семейства по умолчанию и fallback.
Есть ли смысл задавать шрифты по умолчанию, если все шрифты в презентации внедрены?
Часто это не требуется, потому что embedded fonts уже обеспечивают согласованное отображение. Шрифты по умолчанию всё же могут служить страховкой для символов, не покрытых встроенным подмножеством, или когда файл содержит как встроенный, так и необъединённый текст.