โหลดเอกสารฟอนต์จากไบต์อาร์เรย์

.NET API Solution เพื่อโหลดฟอนต์ TTF, WOFF, EOT, Type 1 และ CFF จาก MemoryStream

 

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

หน้านี้อธิบายตัวเลือกในการโหลดไฟล์ฟอนต์จากสตรีม แต่อธิบายการทำงานทั้งหมดโดยละเอียดใน How to load files? บทความ คุณจะพบตัวอย่างโค้ด C# เพิ่มเติม และค้นหาอ็อบเจ็กต์และพารามิเตอร์ที่จำเป็นสำหรับการโหลดฟอนต์

โซลูชันรองรับรูปแบบแบบอักษรถัดไป: TrueType (แบบอักษรเดียว), TrueType (คอลเลกชันแบบอักษร), รูปแบบแบบอักษร Web Open, รูปแบบแบบอักษร Web Open เวอร์ชัน 2.0, OpenType แบบฝัง, แบบอักษร Adobe Type 1 (pfa, pfb, afm, pfm) และ รูปแบบตัวอักษรขนาดกะทัดรัด ข้อมูลโค้ดที่แนบมาแสดงการโหลดแบบอักษร Type 1 และ CFF จากอาร์เรย์ไบต์

ในการโหลดแบบอักษรเราต้องการ:

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

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

Package Manager Console Command


    PM> Install-Package Aspose.Font

ขั้นตอนในการโหลด Compact Font Format (CFF) จากไบต์อาร์เรย์/MemoryStream โดยใช้ C#:

  1. ตั้งค่าอาร์เรย์ไบต์เพื่อโหลดแบบอักษรโดยใช้คลาส FontFileDefinition
  2. ใช้วิธีคงที่ Open() ของวัตถุ Aspose.Font.Sources.FontDefinition เพื่อสร้างวัตถุ FontDefinition ที่ต้องการ
  3. ใช้วัตถุประเภท ByteContentStreamSource เพื่อระบุรูปแบบฟอนต์ CFF
  4. ส่ง FontDefinition ที่เหมาะสมไปยัง Aspose.Font.Font.Open() วิธีการ

รหัส C# สำหรับการโหลดแบบอักษรจากสตรีม

    using Aspose.Font;
    using Aspose.Font.Sources;
    using Aspose.Font.Cff;
    //byte array to load Font from
    byte[] fontMemoryData;

    FontDefinition fd = FontDefinition.Open(new ByteContentStreamSource(fontMemoryData), 
                FontType.CFF);
    CffFont cffFont = Aspose.Font.Font.Open(fd) as CffFont;

ขั้นตอนในการโหลดแบบอักษร Type 1 จาก byte array/MemoryStream โดยใช้ C#:

  1. ตั้งค่าไบต์อาร์เรย์เพื่อโหลดฟอนต์ Type 1 โดยใช้ FontFileDefinition Class
  2. ใช้เมธอดแบบคงที่ Open() ของอ็อบเจ็กต์ Aspose.Font.Sources.FontDefinition เพื่อสร้างอ็อบเจ็กต์ FontDefinition ที่ต้องการ
  3. ใช้อ็อบเจ็กต์ประเภท ByteContentStreamSource เพื่อระบุรูปแบบฟอนต์ Type 1
  4. ส่ง FontDefinition ที่เหมาะสมไปยังเมธอด Aspose.Font.Font.Open()

รหัส C# สำหรับการโหลดแบบอักษรจากสตรีม

    using Aspose.Font;
    using Aspose.Font.Sources;
    using Aspose.Font.Type1;
    //byte array to load Font from
    byte[] fontMemoryData;

    FontDefinition fd = FontDefinition.Open(new ByteContentStreamSource(fontMemoryData), 
                FontType.Type1);
    Type1Font font = Aspose.Font.Font.Open(fd) as Type1Font;



คำถามที่พบบ่อย

1. พารามิเตอร์ในการโหลดแบบอักษรโดยทางโปรแกรมคืออะไร

สำหรับการโหลดฟอนต์ที่ถูกต้อง คุณจำเป็นต้องรู้พารามิเตอร์หลักสองตัว เป็นรูปแบบตัวอักษรและการจัดเก็บ

2. แบบอักษรอยู่ที่ไหนในคอมพิวเตอร์ของฉัน

หากต้องการดูแบบอักษรที่มีในคอมพิวเตอร์ของคุณ ให้ไปที่ไดเร็กทอรี C:>Windows>Fonts คุณจะสามารถจัดการแบบอักษรของคุณได้ที่นั่น

3. จะโหลดฟอนต์จากสตรีมได้อย่างไร?

ตั้งค่าบาธอาร์เรย์โดยใช้ FontFileDefinition และสร้างวัตถุโดยใช้เมธอด Open() ระบุรูปแบบตัวอักษร เสร็จสิ้นการโหลดโดยใช้เมธอด Aspose.Font.Font.Open()