在 Java 中将 EOT 转换为 TTF。

所有数字平台的操作系统都使用 True Type 字体 (TTF)。为了给网页添加特殊的触感,微软引入了 EOT 字体。嵌入式 OpenType 字体 (EOT) 是嵌入在文档中的 OpenType 字体。在某些情况下,我们可能需要以编程方式将 EOT 字体转换为 TTF。在本文中,我们将学习如何在 Java 中将 EOT 转换为 TTF。

本文将涵盖以下主题:

  1. Java EOT 到 TTF 转换器 API
  2. 将 EOT 转换为 TTF 的步骤
  3. 使用 Java 将 EOT 转换为 TTF

Java EOT 到 TTF 转换器 API

我们将使用 Aspose.Font for Java API 将 EOT 转换为 TTF。它允许从 支持的字体类型 加载、保存和提取字体信息。

API 提供了表示字体文件定义的 FontFileDefinition 类。 FontDefinition 类表示字体文件集定义。它包含与字体内部数据无关的字段。这些字段描述了从某些字体源(文件、内存等)加载字体所需的字体位置和其他数据。我们有 Font 类,它是基础 Font 类。它提供了 open() 方法来打开字体。它还允许使用 save() 方法保存字体。

下载 API 的 JAR 或在基于 Maven 的 Java 应用程序中添加以下 pom.xml 配置。

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

将 EOT 转换为 TTF 的步骤

我们可以按照以下步骤轻松地将 EOT 字体从 .eot 文件转换为 TTF 格式:

  1. 加载字体文件。
  2. 将字体定义创建为 TTF。
  3. 打开 EOT 字体。
  4. 将 TTF 保存到所需位置。

以下部分介绍如何将这些步骤转换为 Java 并将 EOT 转换为 TTF。

使用 Java 将 EOT 转换为 TTF

我们可以按照以下步骤以编程方式将 EOT 转换为 TTF:

  1. 首先,使用 FileSystemStreamSource 类加载字体文件。
  2. 接下来,使用源文件对象作为参数创建 FontFileDefinition 类的实例。
  3. 然后,初始化 Font 类型为 TTF 的 FontDefinition 类对象和 FontFileDefinition 对象。
  4. 之后,使用 Font.open() 方法以 FontDefinition 对象作为参数打开字体。
  5. 最后调用 save() 方法保存。它将输出文件路径作为参数。

以下代码示例展示了如何在 Java 中将 EOT 转换为 TTF。

// 此代码示例演示如何将 EOT 转换为 TTF。
// EOT字体文件路径
String fontPath = "C:\\Files\\LoraRegular.eot";

// 加载字体文件
FileSystemStreamSource source = new FileSystemStreamSource(fontPath);

// 创建字体文件定义
FontFileDefinition fileDefinition = new FontFileDefinition(source);

// 创建字体定义
FontDefinition fontDefinition = new FontDefinition(FontType.TTF, fileDefinition);

// 打开字体
Font font = Font.open(fontDefinition);

// 将打开的字体保存到 TTF
font.save("C:\\Files\\EotToTtf_out.ttf");

获得免费许可证

您可以获得免费的临时许可证 试用该库而不受评估限制。

结论

在本文中,我们学习了如何在 Java 中将 Embedded Open Type 字体 (EOT) 转换为 True Type 字体 (TTF)。此外,您可以使用 documentation 了解有关 Aspose.Font for Java API 的更多信息。如有任何歧义,请随时在我们的 免费支持论坛 上与我们联系。

也可以看看