Настройка шрифтов для визуализации электронных таблиц

Возможные сценарии использования

API Aspose.Cells предоставляет возможность визуализации электронных таблиц в форматах изображений, а также преобразования их в форматы PDF и XPS. Для максимизации точности преобразования необходимо, чтобы используемые в электронных таблицах шрифты были доступны в системной папке шрифтов операционной системы. В случае отсутствия необходимых шрифтов API Aspose.Cells будет пытаться заменить необходимые шрифты имеющимися.

Выбор шрифтов

Ниже приведен процесс, который API Aspose.Cells следует за кулисами.

  1. API пытается найти шрифты на файловой системе, соответствующие точному имени шрифта, используемому в электронной таблице.
  2. Если API не может найти шрифты с точно таким же именем, он пытается использовать шрифт по умолчанию, указанный в свойстве DefaultStyle.Font книги.
  3. Если API не может найти шрифт, определенный в свойстве DefaultStyle.Font книги, он пытается использовать шрифт, указанный в свойствах PdfSaveOptions.DefaultFont или ImageOrPrintOptions.DefaultFont.
  4. Если API не может найти шрифт, определенный в свойствах PdfSaveOptions.DefaultFont или ImageOrPrintOptions.DefaultFont, он пытается использовать шрифт, указанный в свойстве FontConfigs.DefaultFontName.
  5. Если API не может найти шрифт, определенный в свойстве FontConfigs.DefaultFontName, он пытается выбрать наиболее подходящие шрифты из всех доступных шрифтов.
  6. Наконец, если API не может найти шрифты на файловой системе, он визуализирует электронную таблицу с использованием шрифта Arial.

Установка пользовательских каталогов шрифтов

API Aspose.Cells ищут каталог шрифтов по умолчанию операционной системы для необходимых шрифтов. В случае, если требуемые шрифты отсутствуют в каталоге шрифтов системы, API ищут их в пользовательских (определенных пользователем) каталогах. Класс FontConfigs предоставляет ряд способов установки пользовательских каталогов шрифтов, описанных ниже.

  1. FontConfigs.SetFontFolder: Этот метод полезен, если нужно установить только одну папку.
  2. FontConfigs.SetFontFolders: Этот метод полезен, когда шрифты находятся в нескольких папках, и пользователь хочет установить каждую папку отдельно, а не объединить все шрифты в одну папку.
  3. FontConfigs.SetFontSources: Этот механизм полезен, когда пользователь хочет загружать шрифты из нескольких папок или одного файла шрифта или данных шрифта из массива байтов.

Механизм подстановки шрифтов

API Aspose.Cells также предоставляет возможность указать запасной шрифт для целей рендеринга. Этот механизм полезен, когда необходимый шрифт недоступен на машине, где должно происходить преобразование. Пользователи могут предоставить список имен шрифтов в качестве альтернативы исходно требуемому шрифту. Для этого API Aspose.Cells предоставляет метод FontConfigs.SetFontSubstitutes, который принимает 2 параметра. Первый параметр имеет тип string и должен быть именем шрифта, который нужно заменить. Второй параметр является массивом типа string. Пользователи могут предоставить список имен шрифтов в замен исходного имени шрифта (указанного в первом параметре).

Вот простой сценарий использования.

Сбор информации

Кроме вышеупомянутых методов, API Aspose.Cells также предоставляют средства для сбора информации о том, какие источники и замены были установлены.

  1. Метод FontConfigs.GetFontSources возвращает массив типа FontSourceBase, содержащий список указанных источников шрифтов. Если источники не установлены, то метод FontConfigs.GetFontSources вернет пустой массив.
  2. Метод FontConfigs.GetFontSubstitutes принимает параметр типа string, позволяющий указать имя шрифта, для которого установлена замена. Если для указанного имени шрифта не установлена замена, то метод FontConfigs.GetFontSubstitutes вернет null.

Продвинутые темы