Преобразование шрифтов. Дополнительные сведения | .NET

В некоторых случаях имеет смысл прочитать/изменить данные конвертированного шрифта перед сохранением шрифта.

Метод Aspose.Font.Font.Convert(FontType fontType) был разработан для таких случаев. Этот метод преобразует шрифт в указанный тип и возвращает объект, унаследованный от класса Aspose.Font.Font, который соответствует значению FontType, переданному в метод Convert().

В следующей таблице показана карта согласованности между значениями FontType и объектами, унаследованными от базового класса Aspose.Font.Font.

Font typeFont object
TTFAspose.Font.Ttf.TtfFont
Type1Aspose.Font.Type1.Type1Font
CFFAspose.Font.Cff.CffFont
OTFAspose.Font.Ttf.TtfFont

Используйте объект результирующего шрифта для доступа или изменения свойств шрифта перед сохранением результирующего шрифта или вместо сохранения результирующего шрифта.

На текущий момент метод Convert() поддерживает преобразование только в формат шрифта TrueType (FontType.TTF), поэтому он всегда возвращает объект типа TtfFont как результат преобразования независимо от используемого исходного шрифта.

Следующий фрагмент кода загружает шрифт CFF CenturyGothic с диска, преобразует его в формат TrueType и меняет имя преобразованного шрифта на “CenturyGothic_Converted”.

Выполните следующие действия:

  1. Откройте шрифт.
  2. Преобразуйте шрифт в формат TrueType.
  3. Измените имя конвертированного шрифта.
  4. Сообщите настройки вывода.
  5. Сохраните результат с только что измененным именем.
 1 
 2    // Open cff font
 3    string fontPath = Path.Combine(DataDir, "CenturyGothic.cff");
 4    FontDefinition fontDefinition = new FontDefinition(FontType.CFF, new FontFileDefinition("cff", new FileSystemStreamSource(fontPath)));
 5    Font font = Font.Open(fontDefinition);
 6
 7    // Convert font into TrueType format and cast font returned to Aspose.Font.Ttf.TtfFont
 8    Aspose.Font.Ttf.TtfFont destFont = font.Convert(FontType.TTF) as Aspose.Font.Ttf.TtfFont;
 9
10    // Change name of converted font
11    destFont.FontName = "CenturyGothic_Converted";
12
13    // Ttf output settings
14    string outPath = Path.Combine(OutputDir, "CffToTtf_out.ttf");
15
16    // Save resultant font with font name changed
17    destFont.Save(outPath);

The full range of examples for using Aspose.Font for.NET is placed in Aspose.Font.Examples.sln solution, in the net-examples folder of the Aspose.Font Documentation github repository.

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.