Конвертер шрифтов | API-решение для Java
Обзор
Создавать интерфейсы было бы намного проще, если бы существовал только один универсальный формат шрифтов. Однако из-за множества гаджетов, сред, операционных систем и различных приложений, в которых используются шрифты, у нас есть множество форматов шрифтов, адаптированных к конкретным потребностям. Каждый формат шрифтов имеет свои преимущества и недостатки: некоторые из них оптимизированы для веб-страниц и приложений, а другие больше подходят для публикации. Чтобы обеспечить оптимальную отрисовку на разных платформах, может потребоваться конвертировать шрифты из одного формата в другой.
For some tasks, a web application will be just enough. For example, if you only need to convert one text document into a document with a different font type. And Aspose does have such an application in its ecosystem. Try Font Conversion application to see whether it fits your purposes.
Если ваши потребности выходят за рамки того, что может предоставить веб-приложение, и вам требуется более надежное решение для интеграции в ваш продукт, рассмотрите возможность использования этого инструмента, предназначенного для оптимизации процесса преобразования шрифтов. Библиотека Aspose.Font for Java — мощное решение, облегчающее преобразование шрифтов между различными популярными форматами:
Это гибкая и простая в использовании библиотека, предназначенная для работы с различными файлами шрифтов, такими как TrueType CFF, OpenType и Type1. Помимо возможностей преобразования шрифтов, он также обеспечивает различные другие манипуляции со шрифтами, такие как получение сведений о шрифте, доступ к данным глифов и показателей, идентификация латинских символов и загрузка шрифтов, среди прочего.
Поддерживаемые форматы шрифтов
Следующие форматы поддерживаются Aspose.Font для Java:
Формат | Описание |
---|---|
TrueType (TTF ) | Это один из самых популярных форматов между операционными системами Mac Os и Microsoft Windows. Шрифты True type имеют расширение .ttf . Шрифты семейства TrueType легко масштабируются до любого размера на компьютерах и других устройствах, таких как принтеры, смартфоны и т. д. Наиболее известными представителями шрифтов TTF являются семейства Times Roman, Helvetica и Courier. |
Web Open Font Format (WOFF ) | Этот формат шрифта разработан для отображения на веб-страницах. По сути, это шрифт TrueType или OpenType , измененный путем добавления метаданных HTML и применения сжатия. Формат поддерживается всеми основными браузерами. |
Web Open Font Format версии 2.0 (WOFF2 ) | Следующее поколение WOFF . Он дает вам в среднем 30%-ное сжатие по сравнению с WOFF . Хотя он пока не так широко распространен. |
Встроенный формат OpenType (EOT ) | Они созданы Microsoft и поддерживаются шрифтами Internet Explorer, используемыми в Интернете. Из-за сжатия файлы шрифтов имеют меньший размер. EOT также обеспечивает некоторую защиту авторских прав из-за подмножества. |
Формат Type 1 | (также известный как PostScript , PS1 , T1 , Adobe Type 1 , Multiple Master или MM ). Этот формат разработан Adobe Systems для профессионального цифрового набора. Эта система использует формат файла PostScript для кодирования информации о шрифтах. Поскольку этот формат шрифтов устарел и не поддерживается во многих современных средах, таких как мобильные устройства и веб-браузеры, к 2023 году он больше не будет поддерживаться Adobe. Компания рекомендует использовать вместо него формат Open type . |
Компактный формат шрифта (CFF ) | Он также известен как формат шрифта Type 2 или формат шрифта CFF/Type 2 . С помощью этого формата вы можете хранить разные шрифты вместе в одном блоке, называемом Fontset. Поскольку он позволяет обмениваться данными между шрифтами и по умолчанию использовать часто встречающиеся данные, он обеспечивает вам заметную экономию места. |
Масштабируемая векторная графика (SVG ) | SVG — это формат файла, используемый для отображения векторной графики и изображений в Интернете. Шрифты SVG, также известные как шрифты SVG-in-OpenType или SVGOT, представляют собой особый тип формата шрифта в SVG. Каждый символ в шрифте SVG определяется как отдельный контур или фигура SVG, поэтому шрифты SVG можно масштабировать без потери качества. |
Все упомянутые форматы поддерживаются для чтения, а некоторые из них — для записи.
Форматы, поддерживаемые для чтения и/или записи
Формат | Чтение | Запись |
---|---|---|
TTF | ||
CFF | ||
WOFF | ||
WOFF2 | ||
Type 1 | ||
EOT | ||
SVG |
Доступные варианты конвертации шрифтов
Любой формат шрифта из числа поддерживаемых для чтения можно преобразовать и сохранить в один из форматов, поддерживаемых для записи.
Здесь вы можете узнать пары шрифтов, которые в настоящее время предоставляются для конвертации решением Aspose. По ссылкам вы найдете дополнительную информацию и примеры использования библиотеки, иллюстрированные фрагментами кода.
TTF в SVG
WOFF в SVG
WOFF2 в SVG
EOT в SVG
Type 1 в SVG
Из CFF в SVG
Как преобразовать шрифт в нужный формат?
- Загрузите шрифт любого из поддерживаемых форматов и получите ссылку на базовый объект com.aspose.font.Font, который представляет этот шрифт.
- Сохраните только что загруженный шрифт в другой формат с помощью
Метод saveToFormat() экземпляра базового абстрактного класса Font. Метод saveToFormat() принимает два аргумента: поток вывода и перечисление FontSavingFormats для выбора формата выходного шрифта. Метод saveToFormat() позволяет сохранять шрифты в любом из поддерживаемых выходных форматов.
Вам необходимо использовать следующие утверждения:
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;
Ниже вы можете увидеть пример кода, который преобразует шрифт из формата TTF в формат WOFF.
Были предприняты следующие шаги:
- Открыт шрифт
TTF
. - Добавлены настройки вывода.
- Выполнил преобразование
TTF
вWOFF
и сохранил результат.
1 // Open ttf font
2 String fontPath = Paths.get(getDataDir(), "Montserrat-Regular.ttf").toString();
3 FontDefinition fontDefinition = new FontDefinition(FontType.TTF, new FontFileDefinition(new FileSystemStreamSource(fontPath)));
4 Font font = Font.open(fontDefinition);
5
6 // Woff output settings
7 String outPath = Paths.get(getOutputDir(), "TtfToWoff_out1.woff").toString();
8 FileOutputStream outStream = new FileOutputStream(outPath);
9
10 // Convert ttf to woff
11 font.saveToFormat(outStream, FontSavingFormats.WOFF);
Преобразования в другие форматы, например woff в ttf, ttf в woff2, woff2 в ttf и другие, можно выполнить аналогичным способом.
Как получить решение?
Если вы заинтересованы в получении библиотеки, перейдите на страницу продукта Aspose.Font for Java. Там вы найдете больше возможностей, которые дает вам решение. Вы можете скачать бесплатную пробную версию или купить продукт там.
Если у вас остались какие-либо проблемы или вопросы, не стесняйтесь опубликовать их в разделе Aspose.Font.Product Family на Форуме бесплатной поддержки и в течение нескольких часов обратитесь в нашу службу поддержки. тебе все прояснит.