Chuyển đổi WOFF sang TTF bằng Java.

Định dạng Phông chữ Mở trên Web hay đơn giản là WOFF là một phông chữ web chủ yếu được sử dụng trên các trang web. Trong một số trường hợp nhất định, chúng tôi có thể cần chuyển đổi phông chữ Web sang phông chữ kiểu thực. Phông chữ True Type hoặc TTF được sử dụng trong hệ điều hành cho tất cả các nền tảng kỹ thuật số. Trong bài trước, chúng ta đã xem cách chuyển đổi TTF sang phông chữ web. Trong bài viết này, chúng ta sẽ tìm hiểu cách chuyển đổi WOFF sang TTF trong Java.

Các chủ đề sau sẽ được đề cập trong bài viết này:

API chuyển đổi Java WOFF sang TTF

Để chuyển đổi WOFF thành TTF, chúng tôi sẽ sử dụng API Aspose.Font cho Java. Nó cho phép tải, lưu và trích xuất thông tin từ các loại phông chữ được hỗ trợ.

Lớp FontFileDefinition của API đại diện cho định nghĩa tệp Phông chữ. Lớp FontDefinition cho phép làm việc với dữ liệu bên trong của phông chữ như tên, loại, v.v. Phương thức Font.open() mở một phông chữ, sử dụng đối tượng FontDefinition. Chúng ta có thể lưu phông chữ đã tải sang các định dạng khác bằng phương thức saveToFormat() của lớp Phông chữ. Các định dạng lưu được cung cấp trong bảng liệt kê FontSavingFormats.

Vui lòng tải xuống JAR của API hoặc thêm cấu hình pom.xml sau vào ứng dụng Java dựa trên 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>

Chuyển đổi WOFF sang TTF bằng Java

Chúng tôi có thể dễ dàng chuyển đổi Phông chữ Mở trên Web (WOFF) sang Phông chữ Loại Đúng (TTF) bằng cách làm theo các bước dưới đây:

  1. Đầu tiên, tải tệp phông chữ bằng lớp FileSystemStreamSource.
  2. Tiếp theo, tạo một thể hiện của lớp FontFileDefinition với phần mở rộng tệp là “woff” và đối tượng tệp nguồn là đối số.
  3. Sau đó, khởi tạo đối tượng lớp FontDefinition với kiểu Font là TTF và đối tượng FontFileDefinition.
  4. Sau đó, mở phông chữ bằng phương thức Font.open() với đối tượng FontDefinition làm đối số.
  5. Cuối cùng, gọi phương thức saveToFormat() để lưu nó. Nó lấy đường dẫn tệp đầu ra và FontSavingFormats thành TTF làm đối số.

Mẫu mã sau đây trình bày cách chuyển đổi WOFF sang TTF bằng Java.

// Ví dụ mã này trình bày cách chuyển đổi WOFF sang TTF.
// Đường dẫn tệp WOFF
String fontPath = "C:\\Files\\font\\Montserrat-Regular.woff";

// Tải tệp Phông chữ
FileSystemStreamSource source = new FileSystemStreamSource(fontPath);

// Tạo định nghĩa tệp phông chữ
FontFileDefinition fileDefinition = new FontFileDefinition("woff", source);

// Tạo định nghĩa phông chữ
FontDefinition fontDefinition = new FontDefinition(FontType.TTF, fileDefinition);

// Mở phông chữ
Font font = Font.open(fontDefinition);

// Đường dẫn đầu ra TTF
String outPath = "C:\\Files\\font\\WoffToTtf_Out.ttf";
FileOutputStream outStream = new FileOutputStream(outPath);

// Chuyển đổi WOFF sang TTF
font.saveToFormat(outStream, FontSavingFormats.TTF);

Chuyển đổi WOFF2 sang TTF bằng Java

Chúng tôi cũng có thể chuyển đổi WOFF2 sang TTF bằng cách làm theo các bước đã đề cập trước đó. Tuy nhiên, chúng ta chỉ cần đặt phần mở rộng tệp là “woff2” trong bước thứ hai.

Mẫu mã sau đây trình bày cách chuyển đổi WOFF2 sang TTF bằng Java.

// Ví dụ mã này trình bày cách chuyển đổi WOFF2 sang TTF.
// Đường dẫn tệp WOFF2
String fontPath = "C:\\Files\\font\\Montserrat-Regular.woff2";

// Tải tệp Phông chữ
FileSystemStreamSource source = new FileSystemStreamSource(fontPath);

// Tạo định nghĩa tệp phông chữ
FontFileDefinition fileDefinition = new FontFileDefinition("woff2", source);

// Tạo định nghĩa phông chữ
FontDefinition fontDefinition = new FontDefinition(FontType.TTF, fileDefinition);

// Mở phông chữ
Font font = Font.open(fontDefinition);

// Đường dẫn đầu ra TTF
String outPath = "C:\\Files\\font\\Woff2ToTtf_Out.ttf";
FileOutputStream outStream = new FileOutputStream(outPath);

// Chuyển đổi WOFF2 sang TTF
font.saveToFormat(outStream, FontSavingFormats.TTF);

Nhận giấy phép miễn phí

Bạn có thể nhận giấy phép tạm thời miễn phí để dùng thử thư viện mà không có giới hạn đánh giá.

Sự kết luận

Trong bài viết này, chúng ta đã học cách chuyển đổi Phông chữ Mở trên Web sang Phông chữ Kiểu Đúng trong Java. Chúng tôi cũng đã biết cách lưu WOFF2 dưới dạng TTF theo chương trình. Ngoài ra, bạn có thể tìm hiểu thêm về API Aspose.Font cho Java bằng cách sử dụng tài liệu. Trong trường hợp có bất kỳ sự mơ hồ nào, vui lòng liên hệ với chúng tôi trên diễn đàn của chúng tôi.

Xem thêm