字体转换器| Java的API解决方案
概述
如果只有一种通用字体格式,则创建接口会容易得多。但是,由于使用字体的各种小工具,环境,操作系统和各种应用程序,我们具有适合特定需求的大量字体格式。每种字体格式都有其优点和缺点,其中一些针对网页和应用程序进行了优化,而另一些则更适合发布。为了确保在不同平台上进行最佳渲染,可能有必要将字体从一种格式转换为另一种格式。
对于某些任务,Web应用程序就足够了。例如,如果您只需要将一个文本文档转换为具有不同字体类型的文档。 Aspose确实在其生态系统中具有这样的应用。尝试 字体转换应用程序查看它是否适合您的目的。
如果您的需求超出了Web应用程序可以提供的内容,并且需要更强大的解决方案以集成到您的产品中,请考虑使用此工具来简化您的字体转换过程。 Java 版 Aspose.Font库是一种强大的解决方案,可促进各种流行格式之间的字体转换:
这是一个灵活且易于使用的库,旨在与TrueType CFF
,Opentype
和type1
一起使用不同的字体文件。除了字体转换功能外,它还提供了其他各种字体操作,例如检索字体详细信息,访问字形和指标数据,识别拉丁字符以及加载字体等。
支持的字体格式
下一个格式由Java 版 Aspose.Font支持:
格式 | 描述 |
---|---|
TrueType (TTF ) | 它是 Mac Os 和 Microsoft Windows 操作系统之间最流行的格式之一。True Type 字体的扩展名为 .ttf 。TrueType 系列的字体可以轻松缩放到计算机和其他设备(如打印机、智能手机等)上的任意大小。TTF 字体最著名的代表是 Times Roman、Helvetica 和 Courier 系列。 |
Web 开放字体格式 (WOFF ) | 此字体格式专为网页渲染而开发。本质上,它是通过添加 HTML 元数据和应用压缩而改变的 TrueType 或 OpenType 字体。所有主流浏览器都支持该格式。 |
Web 开放字体格式 2.0 版 (WOFF2 ) | 下一代 WOFF 。与 WOFF 相比,它平均压缩率提高了 30%。但目前尚未普及。 |
嵌入式 OpenType 格式 (EOT ) | 这些格式由 Microsoft 开发,并受 Web 上使用的 Internet Explorer 字体支持。由于经过压缩,字体文件更小。EOT 还通过子集化提供了一些版权保护。 |
Type 1 格式 | (也称为 PostScript 、PS1 、T1 、Adobe Type 1 、Multiple Master 或 MM )。此格式由 Adobe Systems 开发,用于专业数字排版。该系统使用 PostScript 文件格式来编码字体信息。由于此字体格式已过时,并且在许多现代环境(例如移动设备和 Web 浏览器)中不受支持,因此到 2023 年,Adobe 将不再支持它。该公司建议改用 Open type 格式。 |
紧凑字体格式 (CFF ) | 它也被称为 Type 2 字体格式或 CFF/Type 2 字体格式。使用此格式,您可以将不同的字体存储在一个名为 Fontset 的单元中。由于它允许字体之间共享数据,并默认设置频繁出现的数据,因此可以显著节省空间。 |
可缩放矢量图形 (SVG ) | SVG 是一种用于在 Web 上显示基于矢量的图形和图像的文件格式。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 to svg
类型1到SVG
CFF到SVG
如何将字体转换为所需的格式?
- 从任何受支持的格式加载字体,并在代表该字体的base`com.aspose.font.font.对象上获取引用。
- 在借助 savetoformat()基本摘要 font类实例的方法。 savetoformat()方法采用两个参数:输出流和 fontsavingformats选择输出字体格式的枚举。 方法 savetoformat()允许您将字体保存到支持的任何输出格式中。
您需要使用下一个语句:
1
2 com.aspose.font;
3 import java.io.FileOutputStream;
4 import java.io.IOException;
5 import java.nio.file.Files;
6 import java.nio.file.Paths;
7
8 import com.aspose.font.ByteContentStreamSource;
9 import com.aspose.font.FileSystemStreamSource;
10 import com.aspose.font.Font;
11 import com.aspose.font.FontDefinition;
12 import com.aspose.font.FontFileDefinition;
13 import com.aspose.font.FontSavingFormats;
14 import com.aspose.font.FontType;
15 import com.aspose.font.TtfFont;
在下面,您可以看到将字体从ttf
转换为woff
格式的代码示例。
采取了下一步:
- 打开了
ttf
字体。 - 添加了输出设置。
- 将转换
ttf
完成并保存了结果。
1 //打开TTF字体
2 字符串fontpath = paths.get(getDatadir(),“ montserrat-regular.ttf”)。toString();
3 fontDefinition fontdefinition = new fontdefinition(fonttype.ttf,new fontfiledefinition(new filesystemstreamSource(fontpath)));
4 字体字体= 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”等。
如何获取解决方案?
如果您有兴趣获取图书馆,请转到 Java 版 Aspose.Font产品页面。在这里,您会发现解决方案给您的更多机会。您可以从那里下载免费试用版或在那里购买产品。
如果您剩下任何麻烦或问题,请随时在 aspose.font.product family 免费支持论坛的部分中发布它们,并在几个小时内我们的支持团队为您清除所有内容。