Конвертируйте WOFF в TTF с помощью Java.

Web Open Font Format или просто WOFF — это веб-шрифт, в основном используемый на веб-страницах. В некоторых случаях нам может потребоваться преобразовать веб-шрифты в шрифты истинного типа. Шрифт True Type или TTF используется в операционных системах для всех цифровых платформ. В предыдущем посте мы видели, как преобразовать TTF в веб-шрифты. В этой статье мы узнаем, как конвертировать WOFF в TTF на Java.

В этой статье должны быть раскрыты следующие темы:

Java конвертер WOFF в TTF API

Чтобы преобразовать WOFF в TTF, мы будем использовать API Aspose.Font for Java. Он позволяет загружать, сохранять и извлекать информацию из поддерживаемых типов шрифтов.

Класс FontFileDefinition API представляет определение файла шрифта. Класс FontDefinition позволяет работать с внутренними данными шрифта, такими как имя, тип и т. д. Метод Font.open() открывает шрифт, используя объект FontDefinition. Мы можем сохранить загруженный шрифт в другие форматы, используя метод saveToFormat() класса Font. Форматы сохранения указаны в перечислении FontSavingFormats.

Пожалуйста, либо загрузите JAR-файл API, либо добавьте следующую конфигурацию pom.xml в приложение Java на основе Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository> 
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-font</artifactId>
    <version>22.6</version>
</dependency>

Конвертировать WOFF в TTF с помощью Java

Мы можем легко преобразовать веб-открытые шрифты (WOFF) в шрифты True Type (TTF), выполнив следующие действия:

  1. Во-первых, загрузите файл шрифта с помощью класса FileSystemStreamSource.
  2. Затем создайте экземпляр класса FontFileDefinition с расширением файла «woff» и объектом исходного файла в качестве аргументов.
  3. Затем инициализируйте объект класса FontDefinition с типом шрифта как TTF и объектом FontFileDefinition.
  4. После этого откройте шрифт с помощью метода Font.open() с объектом FontDefinition в качестве аргумента.
  5. Наконец, вызовите метод saveToFormat(), чтобы сохранить его. Он принимает путь к выходному файлу и FontSavingFormats в TTF в качестве аргументов.

В следующем примере кода показано, как преобразовать WOFF в TTF с помощью Java.

// В этом примере кода показано, как преобразовать WOFF в TTF.
// Путь к WOFF-файлу
String fontPath = "C:\\Files\\font\\Montserrat-Regular.woff";

// Загрузите файл шрифта
FileSystemStreamSource source = new FileSystemStreamSource(fontPath);

// Создать определение файла шрифта
FontFileDefinition fileDefinition = new FontFileDefinition("woff", source);

// Создать определение шрифта
FontDefinition fontDefinition = new FontDefinition(FontType.TTF, fileDefinition);

// Открытый шрифт
Font font = Font.open(fontDefinition);

// Выходной путь TTF
String outPath = "C:\\Files\\font\\WoffToTtf_Out.ttf";
FileOutputStream outStream = new FileOutputStream(outPath);

// Конвертировать WOFF в TTF
font.saveToFormat(outStream, FontSavingFormats.TTF);

Преобразование WOFF2 в TTF с помощью Java

Мы также можем преобразовать WOFF2 в TTF, выполнив шаги, упомянутые ранее. Однако нам просто нужно установить расширение файла как «woff2» на втором шаге.

В следующем примере кода показано, как преобразовать WOFF2 в TTF с помощью Java.

// В этом примере кода показано, как преобразовать WOFF2 в TTF.
// путь к файлу WOFF2
String fontPath = "C:\\Files\\font\\Montserrat-Regular.woff2";

// Загрузите файл шрифта
FileSystemStreamSource source = new FileSystemStreamSource(fontPath);

// Создать определение файла шрифта
FontFileDefinition fileDefinition = new FontFileDefinition("woff2", source);

// Создать определение шрифта
FontDefinition fontDefinition = new FontDefinition(FontType.TTF, fileDefinition);

// Открытый шрифт
Font font = Font.open(fontDefinition);

// Выходной путь TTF
String outPath = "C:\\Files\\font\\Woff2ToTtf_Out.ttf";
FileOutputStream outStream = new FileOutputStream(outPath);

// Конвертировать WOFF2 в TTF
font.saveToFormat(outStream, FontSavingFormats.TTF);

Получить бесплатную лицензию

Вы можете получить бесплатную временную лицензию, чтобы попробовать библиотеку без ограничений пробной версии.

Вывод

В этой статье мы узнали, как конвертировать веб-шрифты Open в шрифты True Type в Java. Мы также видели, как программно сохранить WOFF2 как TTF. Кроме того, вы можете узнать больше об Aspose.Font for Java API, используя документацию. В случае возникновения каких-либо неясностей, пожалуйста, свяжитесь с нами на нашем форуме.

Смотрите также