GDI+ Gráficos en Visual Basic .Net - III

Texto en Contorno

Fecha: 15/Ago/2005 (14 de Agosto de 2005)
Autor: Ing. Fernando Luque Sánchez  -   DCE  4  Estrellas

[email protected]


Sres. Desarrolladores, esta es la tercera entrega de una colección de artículos que les enseñará como crear textos artísticos usando GDI+ así como de animaciones sencillas.

Las anteriores

Los anteriores entregas están en:

http://www.elguille.info/colabora/NET2005/FernandoLuque_GDITexto01.htm

http://www.elguille.info/colabora/NET2005/FernandoLuque_GDITexto02.htm

Pasos para presentar texto Contorno usando GDI+

  1. Crear un objeto graphics.
    Dim grafico As  Graphics 
  2. Cree los pinceles para la fuente y la sombre 
    Dim pincelSombra As Brush = Brushes.Magenta 
    Dim pincelFuente As Brush = Brushes.White



    Note la diferencia con la entrega anterior que el color de Fuente para contorno es Blanco
  3. Cree la fuente en la que desee que aparezca el texto. Por ejemplo:
    Dim miLetra as New Font("Times New Roman", Me.nuSize.Value, FontStyle.Bold, GraphicsUnit.Pixel)
  4. Invoque al método Graphics.DrawString del objeto Graphics para representar el texto.
    • Debe especificarse el tamaño y la ubicación del texto. 

 

El ejemplo

En este ejemplo muestro como crear texto artístico con Contorno  .


Figura 01

 

A continuación sigue código en Visual Basic:

    Private Sub Contorno(ByVal sender As System.Object, _
 
       ByVal e As System.EventArgs) Handles cmdContorno.Click

        'Texto artístico Contorno
        'Definicón del objeto grafico, pincel

        Dim grafico As Graphics
        'Para Shadow se definen los colores de fuente y de la sombra

        Dim pincelSombra As Brush = Brushes.DarkBlue
        Dim pincelFuente As Brush = Brushes.White

        'Creamos la fuente 
        Dim miLetra As New Font("Times New Roman", Me.nuSize.Value, _
                FontStyle.Bold, GraphicsUnit.Pixel)

        'CREACION DEL GRAFICO
        grafico = Me.pcTexto.CreateGraphics
        grafico.Clear(Color.White)

        'Calcular el tamaño del texto
        Dim TextoSize As SizeF
        TextoSize = grafico.MeasureString(Me.txtTexto.Text, miLetra)

        'Los valores para la ubicación
        Dim xPos, yPos As Single
        xPos = (Me.pcTexto.Width - TextoSize.Width) / 2
        yPos = (Me.pcTexto.Height - TextoSize.Height) / 2

        'Ya están definidos los elementos: 
        'Grafico, Pinceles, Fuente, Tamaño y posición
        'Dibujar el texto ahora...usar el método DrawString
        'Primero la sombre y luego el frente.

        grafico.DrawString(Me.txtTexto.Text, miLetra, pincelSombra, _
              xPos + Me.nuContorno.Value, yPos + Me.nuContorno.Value)
       grafico.DrawString(Me.txtTexto.Text, miLetra, pincelFuente, _
                        xPos, yPos)

    End Sub

El codigo completo está en el empaquetado al final del artículo. Suerte a todos y no se olviden dar su opinión en PanoramaBox, eso me alienta a seguir compartiendo con ustedes mis conocimientos.

 

Ing. Fernando Luque Sánchez
CIP 61806
De Trujillo - Perú para el mundo


Espacios de nombres usados en el código de este artículo:

System.Drawing..Drawing2D


Fichero con el código de ejemplo: FernandoLuque_GDITexto03.zip - Tamaño 7 KB


ir al índice