字体转换器| Java的API解决方案

概述

如果只有一种通用字体格式,则创建接口会容易得多。但是,由于使用字体的各种小工具,环境,操作系统和各种应用程序,我们具有适合特定需求的大量字体格式。每种字体格式都有其优点和缺点,其中一些针对网页和应用程序进行了优化,而另一些则更适合发布。为了确保在不同平台上进行最佳渲染,可能有必要将字体从一种格式转换为另一种格式。

对于某些任务,Web应用程序就足够了。例如,如果您只需要将一个文本文档转换为具有不同字体类型的文档。 Aspose确实在其生态系统中具有这样的应用。尝试 字体转换应用程序查看它是否适合您的目的。

如果您的需求超出了Web应用程序可以提供的内容,并且需要更强大的解决方案以集成到您的产品中,请考虑使用此工具来简化您的字体转换过程。 Java 版 Aspose.Font库是一种强大的解决方案,可促进各种流行格式之间的字体转换:

这是一个灵活且易于使用的库,旨在与TrueType CFFOpentypetype1一起使用不同的字体文件。除了字体转换功能外,它还提供了其他各种字体操作,例如检索字体详细信息,访问字形和指标数据,识别拉丁字符以及加载字体等。

支持的字体格式

下一个格式由Java 版 Aspose.Font支持:

格式描述
TrueType (TTF)它是 Mac Os 和 Microsoft Windows 操作系统之间最流行的格式之一。True Type 字体的扩展名为 .ttfTrueType 系列的字体可以轻松缩放到计算机和其他设备(如打印机、智能手机等)上的任意大小。TTF 字体最著名的代表是 Times Roman、Helvetica 和 Courier 系列。
Web 开放字体格式 (WOFF)此字体格式专为网页渲染而开发。本质上,它是通过添加 HTML 元数据和应用压缩而改变的 TrueTypeOpenType 字体。所有主流浏览器都支持该格式。
Web 开放字体格式 2.0 版 (WOFF2)下一代 WOFF。与 WOFF 相比,它平均压缩率提高了 30%。但目前尚未普及。
嵌入式 OpenType 格式 (EOT)这些格式由 Microsoft 开发,并受 Web 上使用的 Internet Explorer 字体支持。由于经过压缩,字体文件更小。EOT 还通过子集化提供了一些版权保护。
Type 1 格式(也称为 PostScriptPS1T1Adobe Type 1Multiple MasterMM)。此格式由 Adob​​e 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 字体可以在不损失质量的情况下进行缩放。

所有提到的格式都得到了阅读的支持,其中一些格式用于写作。

支持阅读和/或写作的格式

格式化读取写入
TTFticktick
CFFtick
WOFFticktick
WOFF2ticktick
Type 1tick
EOTtick
SVGtick

可用的字体转换

任何支持阅读的字体格式都可以转换并保存为支持写作的一种格式。

在这里,您可以学习目前通过Aspose解决方案提供用于转换的字体。按照链接,您将找到更多信息和使用代码段所示的库的示例。

如何将字体转换为所需的格式?

  1. 从任何受支持的格式加载字体,并在代表该字体的base`com.aspose.font.font.对象上获取引用。
  2. 在借助 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格式的代码示例。

采取了下一步:

  1. 打开了ttf字体。
  2. 添加了输出设置。
  3. 将转换ttf完成并保存了结果。
 1    //打开TTF字体
 2    字符串fontpath = paths.get(getDatadir(),“ montserrat-regular.ttf)toString();
 3    fontDefinition fontdefinition = new fontdefinition(fonttype.ttfnew 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 免费支持论坛的部分中发布它们,并在几个小时内我们的支持团队为您清除所有内容。

Have any questions about Aspose.Font?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.