Renderizar texto usando glifos

.NET API Solution. para exibir texto com as fontes desejadas

 

A solução API Aspose.Font tem uma funcionalidade rica para trabalhar com fontes. Conversão, manipulação de glifos, deteção de símbolos latinos e muito mais. Alguns dos recursos estão ligados à manipulação de glifos, como renderizar textos.

Um glifo é um carácter individualmente desenhado de um tipo de letra ou uma representação gráfica de um símbolo/carácter. Para saber mais sobre esta unidade de fonte, leia o artigo Introdução ao Glifo .

Esta página descreve a opção de como exibir o texto «Hello world» usando glifos, mas toda a funcionalidade está cuidadosamente descrita no artigo Usando objetos Glyph . Lá você encontrará muito mais exemplos de código C# e aprenderá sobre a funcionalidade da Aspose.Font para trabalhar com glifos e os objetos Glyph em particular.

Para escrever textos com glifos, precisamos:

  • Aspose.Font para .NET API, que é uma API rica em recursos, poderosa e fácil de usar para manipulação e conversão de documentos na plataforma C#.

  • Abra o gerenciador de pacotes NuGet, procure por Aspose.Font e instale. Você também pode usar o seguinte comando no Console do Gerenciador de Pacotes.

Package Manager Console Command


    PM> Install-Package Aspose.Font

Passos para renderizar o texto «Hello world» usando C#

  1. Crie a classe GlyphOutlinePainter que requer um objeto do tipo System.Drawing.Drawing2D.GraphicsPath para desenho gráfico.
  2. Implemente a interface Rendering.IGlyphOutlinePainter para desenhar glifos com a ajuda desta interface.
  3. O subsistema de renderização chamará os métodos de GlyphOutlinePainter para desenhar o glifo, de modo que o caminho interno do glifo será renderizado no objeto GraphicsPath como resultado da renderização. Para obter uma imagem do glifo em representação bitmap, o GraphicsPath resultante deve ser desenhado em um objeto System.Drawing.Bitmap.
  4. Para obter um exemplo de código mais detalhado com explicações claras, aprenda no artigo Renderização de Texto usando Fonte TrueType .

Código C# para renderizar a frase

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



Perguntas frequentes

1. O que é renderização de texto?

De acordo com Microsoft , a renderização de texto é o processo de converter uma string em um formato legível para o usuário. Em palavras mais simples, ele exibe na tela textos usando unidades de fonte - glifos.

2. Como a fonte é renderizada?

Para renderizar fontes usando esta solução de API, você precisará das entidades de Aspose.Font.Rendering e Aspose.Font.Renderers namespaces. Primeiro, implemente os métodos IGlyphOutlinePainter. Em seguida, crie o método DrawText(). Crie o método utilitário para calcular a largura da fonte e chame a funcionalidade de renderização de texto.

3. O que é kerning?

O kerning está ajustando os espaços entre os glifos para que o texto pareça mais suave. Também ajuda a reduzir o comprimento da string de texto.