Lưu các tệp phông chữ đã cập nhật vào đĩa

Giải pháp API C++ để lưu các phông chữ đã được tải từ luồng trước đó.

 

Aspose.Font API Solution cung cấp cho bạn khả năng phong phú để làm việc với phông chữ, bao gồm chuyển đổi, thao tác glyph, phát hiện ký hiệu Latin và nhiều hơn nữa. Chủ đề của bài viết này sẽ là chức năng lưu phông chữ.

Lưu phông chữ vào đĩa cho phép lưu trữ lâu dài và chia sẻ dữ liệu phông chữ. Khi đó phông chữ có thể được sử dụng cho các dự án tương lai hoặc bạn có thể chia sẻ nó với người khác để đảm bảo một phông chữ cụ thể có sẵn trên máy tính của họ.

Thêm vào đó, lưu phông chữ vào đĩa cho phép bạn dễ dàng truy xuất dữ liệu phông chữ, mà không cần tải phông chữ từ nguồn từ xa mỗi lần cần thiết. Điều này có thể hữu ích cho các phông chữ lớn hoặc thường được sử dụng mà có thể mất nhiều thời gian để tải.

Bằng cách lưu phông chữ vào đĩa, bạn cũng có thể đảm bảo phông chữ vẫn có sẵn ngay cả khi nguồn gốc của phông chữ không còn truy cập được. Điều này giúp bảo tồn dữ liệu phông chữ và cho phép sử dụng phông chữ trong các dự án tương lai.

Trang này mô tả cách lưu phông chữ TrueType vào đĩa nhưng tất cả các đoạn mã còn lại về cách sử dụng giải pháp được đặt trong Aspose Github Project .

Để lưu các tệp phông chữ, chúng ta cần:

  • Aspose.Font cho C++ API là một API mạnh mẽ, đa tính năng và dễ sử dụng để thao tác và chuyển đổi tài liệu trên nền tảng C++.

  • Mở Trình quản lý gói NuGet, tìm kiếm Aspose.Font và cài đặt. Bạn cũng có thể sử dụng lệnh sau từ Console Trình quản lý Gói.

Package Manager Console Command


    PM> Install-Package Aspose.Font

Các bước để lưu phông chữ chưa thay đổi bằng C++:

Aspose.Font cho C++ cung cấp khả năng sửa đổi tệp phông chữ và lưu các tệp đã thay đổi lên đĩa. Đoạn mã dưới đây minh họa cách lưu một tệp phông chữ TTF đã sửa đổi.

  1. Tạo một đối tượng mới FontFileDefinition object.
  2. Đặt FontType là TTF và FontFileDefinition.ttf.
  3. Khởi tạo một đối tượng TtfFont và mở tệp phông chữ bằng đối tượng FontDefinition đã định nghĩa trước đó.
  4. Lưu TtfFont vào đĩa bằng cách gọi phương thức Save() và truyền tên tệp đầu ra cùng đường dẫn đầy đủ. Tệp phông chữ đã lưu sẽ có các thay đổi đã cập nhật.

Mã C++ để lưu phông chữ TrueType vào đĩa

    using Aspose::Font;
    using Aspose::Font::Sources;
    using Aspose::Font::Ttf;
    //byte array to load Font from
    System::String dataDir = RunExamples::GetDataDir_Data();
    
    System::ArrayPtr<uint8_t> fontMemoryData = System::IO::File::ReadAllBytes(dataDir + u"Montserrat-Regular.ttf");
    System::SharedPtr<FontDefinition> fd = System::MakeObject<FontDefinition>(Aspose::Font::FontType::TTF, System::MakeObject<FontFileDefinition>(u"ttf", System::MakeObject<ByteContentStreamSource>(fontMemoryData)));
    System::SharedPtr<TtfFont> ttfFont = System::DynamicCast_noexcept<Aspose::Font::Ttf::TtfFont>(Aspose::Font::Font::Open(fd));
    
    //Work with data from the just loaded TtfFont object
    
    //Save The TtfFont to disk
    //Output the Font file name with the full path
    System::String outputFile = RunExamples::GetDataDir_Data() + u"Montserrat-Regular_out.ttf";
    
    ttfFont->Save(outputFile);