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

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

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

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

Font typeFont object
TTFcom.aspose.font.TtfFont
Type1com.aspose.font.Type1Font
CFFcom.aspose.font.CffFont
OTFcom.aspose.font.TtfFont

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

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

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

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

 1 
 2    package com.aspose.font;
 3
 4    import java.io.FileOutputStream;
 5    import java.io.IOException;
 6    import java.nio.file.Files;
 7    import java.nio.file.Paths;
 8
 9    import com.aspose.font.ByteContentStreamSource;
10    import com.aspose.font.FileSystemStreamSource;
11    import com.aspose.font.Font;
12    import com.aspose.font.FontDefinition;
13    import com.aspose.font.FontFileDefinition;
14    import com.aspose.font.FontSavingFormats;
15    import com.aspose.font.FontType;
16    import com.aspose.font.TtfFont;

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

  1. Откройте шрифт.
  2. Преобразуйте шрифт в формат TrueType.
  3. Измените имя конвертированного шрифта.
  4. Сообщите настройки вывода.
  5. Сохраните результат с только что измененным именем.
 1 
 2    // Open cff font
 3    String fontPath = Paths.get(getDataDir(), "CenturyGothic.cff").toString();
 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 com.aspose.font.TtfFont
 8    Font destFont = (TtfFont)font.convert(FontType.TTF);
 9
10    //Change name of converted font
11    destFont.setFontName("CenturyGothic_Converted");		
12		
13    // Output Ttf settings
14    String outPath = Paths.get(getOutputDir(), "CffToTtf_out.ttf").toString();
15		
16    //Save the resultant font with the changed font name
17    destFont.save(outPath);	

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

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.