글리프를 사용한 텍스트 렌더링

.NET API 솔루션. 원하는 폰트로 텍스트를 표시합니다

 

Aspose.Font API 솔루션은 폰트 작업을 위한 풍부한 기능을 제공합니다. 변환, 글리프 조작, 라틴 문자 감지 등 다양한 기능이 포함됩니다. 이 중 일부 기능은 텍스트 렌더링과 같은 글리프 조작과 연관됩니다.

글리프는 서체의 개별적으로 디자인된 문자이거나 기호/문자의 그래픽 표현입니다. 이 폰트 단위에 대해 더 알아보려면 글리프 소개 기사를 읽어보세요.

이 페이지에서는 텍스트 «Hello world»를 글리프를 사용해 표시하는 방법을 설명하지만 전체 기능은 글리프 객체 사용 기사에 자세히 설명되어 있습니다. 해당 기사에서 더 많은 C# 코드 예제를 찾고 Aspose.Font의 글리프 작업 및 글리프 객체 기능을 배울 수 있습니다.

글리프를 사용해 텍스트를 입력하려면 다음이 필요합니다:

  • C# 플랫폼을 위한 풍부한 기능, 강력하고 사용하기 쉬운 문서 조작 및 변환 API인 Aspose.Font for .NET API.

  • NuGet 패키지 관리자를 열고 Aspose.Font를 검색하여 설치하십시오. 또한 패키지 관리자 콘솔에서 다음 명령을 사용할 수 있습니다.

Package Manager Console Command


    PM> Install-Package Aspose.Font

C#를 사용해 텍스트 «Hello world»를 렌더링하는 단계

  1. 그래픽 그리기를 위해 System.Drawing.Drawing2D.GraphicsPath 타입의 객체가 필요한 GlyphOutlinePainter 클래스를 생성합니다.
  2. 이 인터페이스를 활용해 글리프를 그리기 위해 Rendering.IGlyphOutlinePainter 인터페이스를 구현합니다.
  3. 렌더링 서브시스템은 GlyphOutlinePainter의 메서드를 호출하여 글리프를 그리며, 그 결과 글리프의 내부 경로가 GraphicsPath 객체에 렌더링됩니다. 비트맵 형태의 글리프 이미지를 얻으려면 결과 GraphicsPath를 System.Drawing.Bitmap 객체에 그려야 합니다.
  4. 보다 자세한 코드 예제와 명확한 설명을 보려면 TrueType 폰트를 사용한 텍스트 렌더링 기사를 확인하십시오.

구문을 렌더링하는 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.RenderingAspose.Font.Renderers 네임스페이스. 먼저 IGlyphOutlinePainter 메소드를 구현합니다. 그런 다음 DrawText() 메서드를 만듭니다. 글꼴 너비를 계산하고 렌더링 텍스트 기능을 호출하는 유틸리티 메서드를 만듭니다.

3. 커닝이란 무엇입니까?

커닝은 텍스트가 더 매끄럽게 보이도록 글리프 사이의 공간을 조정하는 것입니다. 또한 텍스트 문자열의 길이를 줄이는 데 도움이 됩니다.