แสดงข้อความโดยใช้ glyphs

.NET API Solution. เพื่อแสดงข้อความด้วยแบบอักษรที่ต้องการ

 

Aspose.Font API Solution มีฟังก์ชันการทำงานที่ครอบคลุมในการทำงานกับแบบอักษร เช่น การแปลง, การจัดการ glyph, การตรวจจับสัญลักษณ์ละติน และอื่น ๆ ฟีเจอร์บางส่วนเกี่ยวข้องกับการจัดการ glyph เช่น การแสดงข้อความ

Glyph คืออักขระที่ออกแบบเป็นเอกเทศของแบบตัวอักษรหรือการแสดงผลกราฟิกของสัญลักษณ์/อักขระ เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับหน่วยแบบอักษรนี้ อ่านบทความ Introduction to Glyph

หน้าดังกล่าวอธิบายวิธีการแสดงข้อความ «Hello world» ด้วย glyphs แต่ฟังก์ชันทั้งหมดถูกอธิบายโดยละเอียดในบทความ Using Glyph objects ที่นั่นคุณจะพบตัวอย่างโค้ด C# มากมายและเรียนรู้ฟังก์ชันของ Aspose.Font สำหรับการทำงานกับ glyphs และ Glyph objects โดยเฉพาะ

เพื่อพิมพ์ข้อความด้วย glyph เราต้องการ:

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

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

Package Manager Console Command


    PM> Install-Package Aspose.Font

ขั้นตอนการแสดงข้อความ «Hello world» ด้วย C#

  1. สร้างคลาส GlyphOutlinePainter ซึ่งต้องการอ็อบเจกต์ประเภท System.Drawing.Drawing2D.GraphicsPath สำหรับการวาดกราฟิก
  2. ใช้งาน interface Rendering.IGlyphOutlinePainter เพื่อวาด glyph ด้วยความช่วยเหลือของอินเทอร์เฟซนี้
  3. ระบบการเรนเดอร์จะเรียกเมธอดของ GlyphOutlinePainter เพื่อวาด glyph ดังนั้นเส้นทางภายในของ glyph จะถูกเรนเดอร์เข้าสู่ GraphicsPath object เป็นผลลัพธ์ของการเรนเดอร์ glyph เพื่อให้ได้ภาพ glyph ในรูปแบบบิตแมพ GraphicsPath ที่ได้ต้องถูกวาดเข้าสู่ System.Drawing.Bitmap object
  4. เพื่อรับตัวอย่างโค้ดที่ละเอียดมากขึ้นพร้อมคำอธิบายที่ชัดเจน อ่านบทความ Text Rendering using TrueType Font

โค้ด C# เพื่อแสดงวลี

    using Aspose.Font.Rendering;
    using Aspose.Font.RenderingPath;
class GlyphOutlinePainter: IGlyphOutlinePainter
    {
        private System.Drawing.Drawing2D.GraphicsPath _path;
        private System.Drawing.PointF _currentPoint;

        public GlyphOutlinePainter(System.Drawing.Drawing2D.GraphicsPath path)
        {
            _path = path;
        }

        public void MoveTo(MoveTo moveTo)
        {
            _path.CloseFigure();
            _currentPoint.X = (float)moveTo.X;
                _currentPoint.Y = (float)moveTo.Y;
        }

        public void LineTo(LineTo lineTo)
        {
            float x = (float)lineTo.X;
            float y = (float)lineTo.Y;
            _path.AddLine(_currentPoint.X, _currentPoint.Y, x, y);
            _currentPoint.X = x;
            _currentPoint.Y = y;
        }

        public void CurveTo(CurveTo curveTo)
        {
            float x3 = (float)curveTo.X3;
            float y3 = (float)curveTo.Y3;

            _path.AddBezier(
                _currentPoint.X,
                _currentPoint.Y,
                (float)curveTo.X1,
                (float)curveTo.Y1,
                (float)curveTo.X2,
                (float)curveTo.Y2,
                x3,
                y3);

            _currentPoint.X = x3;
            _currentPoint.Y = y3;
        }

        public void ClosePath()
        {
            _path.CloseFigure();
        }
    }  



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

1. การแสดงข้อความคืออะไร?

ตาม Microsoft การแสดงข้อความคือกระบวนการแปลงสตริงเป็นรูปแบบที่ผู้ใช้อ่านได้ พูดง่ายๆ คือแสดงข้อความบนหน้าจอโดยใช้หน่วยแบบอักษร - ร่ายมนตร์

2. แบบอักษรแสดงผลอย่างไร

ในการแสดงแบบอักษรโดยใช้โซลูชัน API นี้ คุณจะต้องมีเอนทิตีของ Aspose.Font.Rendering และ Aspose.Font.Renderers เนมสเปซ ขั้นแรก ใช้เมธอด IGlyphOutlinePainter จากนั้นสร้างเมธอด DrawText() สร้างวิธียูทิลิตี้เพื่อคำนวณความกว้างของฟอนต์และเรียกใช้ฟังก์ชันการแสดงข้อความ

3. การจัดช่องไฟคืออะไร?

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