Настройка шрифтов для визуализации электронных таблиц
Возможные сценарии использования
API-интерфейсы Aspose.Cells позволяют отображать электронные таблицы в форматах изображений, а также преобразовывать их в форматы PDF и XPS. Чтобы максимизировать точность преобразования, необходимо, чтобы шрифты, используемые в электронной таблице, были доступны в каталоге шрифтов операционной системы по умолчанию. Если необходимые шрифты отсутствуют, API-интерфейсы Aspose.Cells попытаются заменить требуемые шрифты доступными.
Выбор шрифтов
Ниже показан процесс, которому Aspose.Cells API следуют за сценой.
- API пытается найти шрифты в файловой системе, соответствующие точному имени шрифта, используемому в электронной таблице.
- Если API не может найти шрифты с точно такими же именами, он пытается использовать шрифт по умолчанию, указанный в рабочей книге.DefaultStyle.Font имущество.
- Если API не может найти шрифт, определенный в рабочей книгеDefaultStyle.Font свойство, он пытается использовать шрифт, указанный вPdfSaveOptions.DefaultFont или жеImageOrPrintOptions.DefaultFont имущество.
- Если API не может найти шрифт, определенный вPdfSaveOptions.DefaultFont или жеImageOrPrintOptions.DefaultFont свойство, он пытается использовать шрифт, указанный вFontConfigs.DefaultFontName имущество.
- Если API не может найти шрифт, определенный вFontConfigs.DefaultFontName свойство, он пытается выбрать наиболее подходящие шрифты из всех доступных шрифтов.
- Наконец, если API не может найти шрифты в файловой системе, он отображает электронную таблицу с использованием Arial.
Установить папки пользовательских шрифтов
Aspose.Cells API-интерфейсы выполняют поиск требуемых шрифтов в каталоге шрифтов операционной системы по умолчанию. Если требуемые шрифты недоступны в системном каталоге шрифтов, API-интерфейсы выполняют поиск в пользовательских (определяемых пользователем) каталогах.Конфигурации шрифтовclass предоставил несколько способов установки пользовательских каталогов шрифтов, как описано ниже.
- FontConfigs.setFontFolder: Этот метод удобен, если необходимо установить только одну папку.
- FontConfigs.setFontFolders: этот метод удобен, когда шрифты находятся в нескольких папках, и пользователь хочет установить все папки по отдельности, а не объединять все шрифты в одной папке.
- FontConfigs.setFontSources: этот механизм полезен, когда пользователь хочет загрузить шрифты из нескольких папок или одного файла шрифта или данных шрифта из массива байтов.
Механизм замены шрифта
Aspose.Cells API-интерфейсы также предоставляют возможность указать замещающий шрифт для целей рендеринга. Этот механизм удобен, когда требуемый шрифт недоступен на машине, на которой должно выполняться преобразование. Пользователи могут предоставить список имен шрифтов в качестве альтернативы первоначально необходимому шрифту. Для этого API-интерфейсы Aspose.Cells предоставили метод FontConfigs.setFontSubstitutes, который принимает 2 параметра. Первый параметр имеет типНить , которое должно быть названием шрифта, который необходимо заменить. Второй параметр представляет собой массив типаНить. Пользователи могут предоставить список имен шрифтов в качестве заменителей исходного шрифта (указанного в первом параметре).
Вот простой сценарий использования.
//Substituting the Arial font with Times New Roman & Calibri
FontConfigs.setFontSubstitutes("Arial", new String[]{ "Times New Roman", "Calibri" });
Сбор информации
В дополнение к вышеупомянутым методам API-интерфейсы Aspose.Cells также предоставляют средства для сбора информации о том, какие источники и замены были установлены.
- FontConfigs.getFontSources: Этот метод возвращает массив типаFontSourceBaseсодержащий список указанных источников шрифтов. В случае, если источники не были установлены,FontConfigs.getFontSources вернет пустой массив.
- FontConfigs.getFontSubstitutes: этот метод принимает параметр типаНить позволяет указать имя шрифта, для которого установлена замена. В случае, если для указанного имени шрифта не была установлена замена, тоFontConfigs.getFontSubstitutes метод вернет null.