Загрузить шрифт из файла CFF | .NET

На этой странице мы рассмотрим примеры загрузки шрифта CenturyGothic, помещенного в файл CenturyGothic.cff.


Если вы не читали основы загрузки Aspose.Font, перейдите к Как загрузить шрифты? страница.

Сначала вам нужно уведомить следующие пространства имен в заголовке файла:

1using System;
2using Aspose.Font
3using Aspose.Font.Sources;
4using System.IO;

Загрузка из файла с использованием объекта FileInfo

Следуйте алгоритму выполнения загрузки шрифта:

  1. Постройте путь к файлу.
  2. Инициируйте объект FontDefiniton, передав CFF в качестве значения FontType.
  3. Получите автоматически рассчитанное значение fileExtension.
  4. Загрузите шрифт.
 1    // Construct path to the file.
 2    string fontPath = Path.Combine(DataDir, "CenturyGothic.cff");
 3
 4    // Initialize FontDefinition object passing CFF as FontType value and using FontFileDefinition
 5    FontFileDefinition fileDef = new FontFileDefinition(new FileInfo(fontPath));     
 6
 7    // Based on FileInfo object, fileExtension value is calculated automatically from FileInfo fields.
 8    FontDefinition fontDef = new FontDefinition(FontType.CFF, fileDef);
 9
10    // Load the font 
11    Font font = Font.Open(fontDef);

Загрузка шрифта с помощью переменной типа byte[] и с использованием объекта типа ByteContentStreamSource.

Чтобы загрузить шрифт таким способом, вам необходимо выполнить следующие шаги:

  1. Постройте путь к файлу.
  2. Инициализируйте объект FontDefiniton, передав CFF как значение FontType, cff как значение fileExtension и ByteContentStreamSource. объект на основе массива fontBytes.
  3. Загрузите шрифт.
 1    // Construct path to the file
 2    string fontPath = Path.Combine(DataDir, "CenturyGothic.cff");
 3
 4    // Load font binary data into byte array
 5    byte[] fontBytes = File.ReadAllBytes(fontPath);
 6
 7    // Initialize FontDefinition object  passing CFF as FontType value, "cff" as fileExtension value, 
 8    // and ByteContentStreamSource object based on fontBytes array
 9    FontDefinition fontDef = new FontDefinition(FontType.CFF, "ttf", new ByteContentStreamSource(fontBytes));
10
11    // Load the font
12    Font font = Font.Open(fontDef);

More examples on how to use Aspose.Font are in Aspose.Font.Examples.sln solution, in the net-examples of the Aspose.Font Documentation.

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.