สัญลักษณ์อักขระละตินคืออักขระที่อยู่ในรูปของเครื่องหมาย เครื่องหมาย หรือคำ แบบอักษรกำหนดวิธีการแสดงอักขระ/สัญลักษณ์แบบดิจิทัลหรือในรูปแบบที่พิมพ์ได้โดยใช้ชุดของคุณสมบัติ ไฟล์ฟอนต์ประกอบด้วยการออกแบบและข้อมูลอื่นๆ เกี่ยวกับฟอนต์ ในบางกรณี เราอาจต้องตรวจสอบว่าฟอนต์ใดรองรับสัญลักษณ์ละตินหรือไม่ ในบทความนี้ เราจะเรียนรู้วิธีตรวจสอบการสนับสนุนสัญลักษณ์ละตินสำหรับฟอนต์ TrueType หรือ Type1 ใน C#
หัวข้อต่อไปนี้จะครอบคลุมในบทความนี้:
- C# API เพื่อตรวจหาการสนับสนุนสัญลักษณ์ละตินในแบบอักษร
- ตรวจหาสัญลักษณ์ละตินในแบบอักษร TrueType โดยใช้ C#
- ตรวจหาสัญลักษณ์ละตินในแบบอักษร Type1 โดยใช้ C#
C # API เพื่อตรวจหาการสนับสนุนสัญลักษณ์ละตินในแบบอักษร
สำหรับการตรวจหาการสนับสนุนสัญลักษณ์ละตินในแบบอักษร เราจะใช้ API Aspose.Font for .NET อนุญาตให้โหลด บันทึก และดึงข้อมูลจาก ประเภทฟอนต์ที่รองรับ โปรด ดาวน์โหลด DLL ของ API หรือติดตั้งโดยใช้ NuGet
PM> Install-Package Aspose.Font
ตรวจหาสัญลักษณ์ละตินในแบบอักษร TrueType โดยใช้ C
เราสามารถตรวจหาสัญลักษณ์ละตินในแบบอักษร TrueType โดยทำตามขั้นตอนด้านล่าง:
- ขั้นแรก โหลดไฟล์ฟอนต์โดยใช้คลาส FontFileDefinition
- ถัดไป เริ่มต้นวัตถุคลาส FontDefinition ด้วย FontType (TTF) และวัตถุ FontFileDefinition เป็นอาร์กิวเมนต์
- จากนั้น เรียกใช้เมธอด Font.Open() ด้วยวัตถุ FontDefinition เป็นอาร์กิวเมนต์ และเริ่มต้นวัตถุคลาส TtfFont
- หลังจากนั้น วนซ้ำรหัสต่างๆ และถอดรหัสเป็น Glyph ID
- สุดท้าย ตรวจสอบสัญลักษณ์สัญลักษณ์ ID สำหรับการรองรับสัญลักษณ์ละติน
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการตรวจสอบว่าฟอนต์ TrueType รองรับสัญลักษณ์ละตินหรือไม่ใน C#
// ตัวอย่างโค้ดนี้สาธิตวิธีการตรวจสอบว่าฟอนต์ TrueType รองรับสัญลักษณ์ละตินหรือไม่
// เส้นทางไฟล์ TTF
string fontPath = @"D:\Files\font\Montserrat-Regular.ttf";
// โหลดไฟล์ฟอนต์
FontFileDefinition fontFileDefinition = new FontFileDefinition("ttf", new FileSystemStreamSource(fontPath));
// วัตถุกำหนดแบบอักษร
FontDefinition fd = new FontDefinition(FontType.TTF, fontFileDefinition);
// เปิดแบบอักษร
TtfFont font = (TtfFont)Font.Open(fd);
var latinText = true;
// ตรวจสอบการรองรับสัญลักษณ์ละติน
for (uint code = 65; code < 123; code++)
{
GlyphId gid = font.Encoding.DecodeToGid(code);
if (gid == null || gid == GlyphUInt32Id.NotDefId)
{
latinText = false;
}
}
if (latinText)
{
Console.WriteLine("Font {0} supports latin symbols.", font.FontName);
}
else
{
Console.WriteLine("Latin symbols are not supported by font {0}.", font.FontName);
}
ตรวจหาสัญลักษณ์ละตินในแบบอักษร Type1 โดยใช้ C#
เรายังสามารถตรวจจับสัญลักษณ์ละตินในฟอนต์ Type1 ได้โดยทำตามขั้นตอนด้านล่าง:
- ขั้นแรก โหลดไฟล์ฟอนต์โดยใช้คลาส FontFileDefinition
- ถัดไป เริ่มต้นวัตถุคลาส FontDefinition ด้วย FontType (Type1) และวัตถุ FontFileDefinition เป็นอาร์กิวเมนต์
- จากนั้น เรียกใช้เมธอด Font.Open() ด้วยวัตถุ FontDefinition เป็นอาร์กิวเมนต์ และเริ่มต้นวัตถุคลาส Type1Font
- หลังจากนั้น วนซ้ำรหัสต่างๆ และถอดรหัสเป็นรหัส Glyph
- สุดท้าย ตรวจสอบสัญลักษณ์สัญลักษณ์ ID สำหรับการรองรับสัญลักษณ์ละติน
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการตรวจสอบว่าฟอนต์ Type1 เฉพาะรองรับสัญลักษณ์ละตินหรือไม่ใน C#
// ตัวอย่างโค้ดนี้สาธิตวิธีการตรวจสอบว่าฟอนต์ Type1 รองรับสัญลักษณ์ละตินหรือไม่
// เส้นทางไฟล์แบบอักษร Type1
string fontPath = @"D:\Files\font\courier.pfb";
// โหลดไฟล์ฟอนต์
FontFileDefinition fontFileDefinition = new FontFileDefinition("pfb", new FileSystemStreamSource(fontPath));
// วัตถุกำหนดแบบอักษร
FontDefinition fd = new FontDefinition(FontType.Type1, fontFileDefinition);
// เปิดแบบอักษร
Type1Font font = (Type1Font)Font.Open(fd);
var latinText = true;
// ตรวจสอบการรองรับสัญลักษณ์ละติน
for (uint code = 65; code < 123; code++)
{
GlyphId gid = font.Encoding.DecodeToGid(code);
if (gid == null || gid == GlyphUInt32Id.NotDefId)
{
latinText = false;
}
}
if (latinText)
{
Console.WriteLine("Font {0} supports latin symbols.", font.FontName);
}
else
{
Console.WriteLine("Latin symbols are not supported by font {0}.", font.FontName);
}
รับใบอนุญาตฟรี
คุณสามารถ รับใบอนุญาตชั่วคราวได้ฟรี เพื่อทดลองใช้ห้องสมุดโดยไม่มีข้อจำกัดในการประเมิน
บทสรุป
ในบทความนี้ เราได้เรียนรู้วิธีตรวจสอบว่าฟอนต์ TrueType หรือ Type1 ใดรองรับสัญลักษณ์ละตินหรือไม่ใน C# นอกจากนี้ คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับ Aspose.Font for .NET API โดยใช้ เอกสารประกอบ ในกรณีที่มีความคลุมเครือ โปรดติดต่อเราได้ที่ ฟอรัม