บันทึกไฟล์แบบอักษรที่อัปเดตลงดิสก์

โซลูชัน API C++ เพื่อบันทึกแบบอักษรที่โหลดจากสตรีมก่อนหน้านี้.

 

โซลูชัน API Aspose.Font มอบความสามารถที่หลากหลายสำหรับการทำงานกับแบบอักษร รวมถึงการแปลง การจัดการ glyph การตรวจจับสัญลักษณ์ละติน และอื่น ๆ อีกมากมาย หัวข้อของบทความนี้จะเป็นฟังก์ชันการบันทึกแบบอักษร.

การบันทึกแบบอักษรลงดิสก์ช่วยให้สามารถจัดเก็บและแบ่งปันข้อมูลแบบอักษรในระยะยาว จากนั้นแบบอักษรสามารถนำไปใช้ในโครงการในอนาคตหรือคุณสามารถแชร์ให้ผู้อื่นเพื่อให้แน่ใจว่าแบบอักษรเฉพาะนั้นพร้อมใช้งานบนคอมพิวเตอร์ของพวกเขา.

นอกจากนี้ การบันทึกแบบอักษรลงดิสก์ทำให้คุณสามารถดึงข้อมูลแบบอักษรได้ง่ายโดยไม่ต้องโหลดแบบอักษรจากแหล่งระยะไกลทุกครั้งเมื่อจำเป็น ซึ่งเป็นประโยชน์สำหรับแบบอักษรที่มีขนาดใหญ่หรือใช้บ่อยซึ่งอาจใช้เวลานานในการโหลด.

โดยการบันทึกแบบอักษรลงดิสก์ คุณยังสามารถรับรองว่าแบบอักษรจะพร้อมใช้งานแม้แหล่งที่มาต้นฉบับของแบบอักษรจะไม่สามารถเข้าถึงได้อีกต่อไป สิ่งนี้ช่วยรักษาข้อมูลแบบอักษรและทำให้สามารถใช้แบบอักษรในโครงการในอนาคตได้.

หน้านี้อธิบายวิธีบันทึกแบบอักษร TrueType ลงดิสก์ แต่ตัวอย่างโค้ดส่วนอื่น ๆ ที่แสดงวิธีใช้โซลูชันจะอยู่ใน โครงการ Github ของ Aspose.

เพื่อบันทึกไฟล์แบบอักษร เราต้องการ:

  • API Aspose.Font สำหรับ C++ ซึ่งเป็น API การจัดการเอกสารและการแปลงที่มีฟีเจอร์หลากหลาย มีประสิทธิภาพ และใช้งานง่ายสำหรับแพลตฟอร์ม C++.

  • เปิด NuGet package manager แล้วค้นหา Aspose.Font และทำการติดตั้ง คุณยังสามารถใช้คำสั่งต่อไปนี้จาก Package Manager Console.

Package Manager Console Command


    PM> Install-Package Aspose.Font

ขั้นตอนการบันทึกแบบอักษรก่อนการเปลี่ยนแปลงโดยใช้ C++:

Aspose.Font สำหรับ C++ มีความสามารถในการแก้ไขไฟล์แบบอักษรและเก็บไฟล์ที่เปลี่ยนแปลงลงดิสก์ ตัวอย่างโค้ดด้านล่างแสดงวิธีบันทึกไฟล์แบบอักษร TTF ที่แก้ไขแล้ว.

  1. สร้างอ็อบเจ็กต์ FontFileDefinition ใหม่.
  2. ตั้งค่า FontType เป็น TTF และ FontFileDefinition เป็น .ttf.
  3. สร้างอ็อบเจ็กต์ TtfFont แล้วเปิดไฟล์แบบอักษรโดยใช้วัตถุ FontDefinition ที่กำหนดไว้ก่อนหน้า.
  4. บันทึก TtfFont ลงดิสก์โดยเรียกใช้เมธอด Save() และส่งชื่อไฟล์ผลลัพธ์พร้อมเส้นทางเต็ม ไฟล์แบบอักษรที่บันทึกจะมีการเปลี่ยนแปลงที่อัปเดต.

โค้ด C++ สำหรับบันทึกแบบอักษร TrueType ลงดิสก์

    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);