Renderizar texto usando glifos

Solución API .NET. para mostrar el texto con la fuente deseada.

 

Aspose.Font API Solution tiene una rica funcionalidad para trabajar con fuentes. Conversión, manipulaciones de glifos, detección de símbolos latinos y muchos más. Algunas de las funciones están vinculadas a manipulaciones con glifos, como la representación de textos.

Un glifo es un carácter diseñado individualmente de un tipo de letra o una representación gráfica de un símbolo/carácter. Para obtener más información sobre esta unidad de fuente, lea el artículo Introducción a Glyph .

Esta página describe la opción sobre cómo mostrar el texto «Hola mundo» usando glifos, pero toda la funcionalidad se describe cuidadosamente en Uso de objetos Glyph artículo. Allí encontrará muchos más ejemplos de código C# y aprenderá la funcionalidad de Aspose.Font para trabajar con glifos y los objetos Glyph en particular.

Para escribir textos con glifos necesitamos:

  • Aspose.Font para .NET API, que es una API de conversión y manipulación de documentos rica en funciones, potente y fácil de usar para la plataforma C#.

  • Abra el administrador de paquetes NuGet y busque Aspose.Font e instálelo. También puede usar el siguiente comando desde la Consola del administrador de paquetes.

Package Manager Console Command


    PM> Install-Package Aspose.Font

Pasos para representar el texto «Hola mundo» usando C#

  1. Cree la clase GlyphOutlinePainter que requiere un objeto de tipo System.Drawing.Drawing2D.GraphicsPath para el dibujo gráfico.
  2. Implemente la interfaz Rendering.IGlyphOutlinePainter para dibujar glifos con la ayuda de esta interfaz.
  3. El subsistema de representación llamará a los métodos de GlyphOutlinePainter para dibujar el glifo, por lo que la ruta interna del glifo se representará en el objeto GraphicsPath como resultado de la representación del glifo. Para obtener una imagen de glifo en representación de mapa de bits, el GraphicsPath resultante debe dibujarse en el objeto System.Drawing.Bitmap.
  4. Para obtener un ejemplo de código más detallado con explicaciones claras, consulte el artículo Representación de texto con fuente TrueType .

Código C# para representar la 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();
        }
    }  



Preguntas más frecuentes

1. ¿Qué es un renderizado de texto?

Según Microsoft , la representación de texto es el proceso de convertir una cadena a un formato legible para el usuario. En palabras más simples, muestra en la pantalla textos usando unidades de fuente: glifos.

2. ¿Cómo se representa la fuente?

Para renderizar fuentes usando esta solución API, necesitará las entidades de Aspose.Font.Rendering y Aspose.Font.Renderers espacios de nombres. Primero, implemente los métodos IGlyphOutlinePainter. Luego crea el método DrawText(). Cree el método de utilidad para calcular el ancho de la fuente y llame a la funcionalidad de representación de texto.

3. ¿Qué es el interletraje?

Kerning ajusta los espacios entre los glifos para que el texto se vea más suave. También ayuda a acortar la longitud de la cadena de texto.