Compartir a través de


atributos de Text-Formatting

Una aplicación puede usar seis funciones para establecer los atributos de formato de texto para un contexto de dispositivo: SetBkColor, SetBkMode, SetTextAlign, SetTextCharacterExtra, SetTextColor y SetTextJustification. Estas funciones afectan a la alineación del texto, el intercaracter espaciado, la justificación de texto y los colores de texto y fondo. Además, se pueden usar seis otras funciones para recuperar los atributos de formato de texto actuales para cualquier contexto de dispositivo: GetBkColor, GetBkMode, GetTextAlign, GetTextCharacterExtra, GetTextColor y GetTextExtentPoint32.

Alineación del texto

Las aplicaciones pueden usar la función SetTextAlign para especificar cómo debe colocar el sistema los caracteres en una cadena de texto cuando llaman a una de las funciones de dibujo. Esta función se puede usar para colocar encabezados, números de página, llamadas, etc. El sistema coloca una cadena de texto alineando un punto de referencia en un rectángulo imaginario que rodea la cadena, con la posición actual del cursor o con un punto pasado como argumento a una de las funciones de dibujo de texto. La función SetTextAlign permite a la aplicación especificar la ubicación de este punto de referencia. A continuación se muestra una lista de las posibles ubicaciones de puntos de referencia.

Location Descripción
izquierda/inferior El punto de referencia se encuentra en la esquina inferior izquierda del rectángulo.
línea izquierda/base El punto de referencia se encuentra en la intersección de la línea base de celda de caracteres y el borde izquierdo del rectángulo.
izquierda/superior El punto de referencia se encuentra en la esquina superior izquierda del rectángulo.
center/bottom El punto de referencia se encuentra en el centro de la parte inferior del rectángulo.
línea central/base El punto de referencia se encuentra en la intersección de la línea base de celda de caracteres y el centro del rectángulo.
center/top El punto de referencia se encuentra en el centro de la parte superior del rectángulo.
derecha/inferior El punto de referencia se encuentra en la esquina inferior derecha del rectángulo.
línea derecha/base El punto de referencia se encuentra en la intersección de la línea base de celda de caracteres y el borde derecho del rectángulo.
derecha/superior El punto de referencia se encuentra en la esquina superior derecha del rectángulo.

 

En la ilustración siguiente se muestra una cadena de texto dibujada mediante una llamada a la función TextOut . Antes de dibujar el texto, se llamó a la función SetTextAlign para reubicar el punto de referencia en cada una de las nueve ubicaciones posibles.

ilustración que muestra el mismo texto nueve veces, uno para cada posible ubicación del punto de referencia

La alineación de texto predeterminada para un contexto de dispositivo es la esquina superior izquierda del rectángulo imaginario que rodea el texto. Una aplicación puede recuperar la configuración actual de alineación de texto para cualquier contexto de dispositivo mediante una llamada a la función GetTextAlign .

Intercharacter Espaciado

Las aplicaciones pueden usar la función SetTextCharacterExtra para modificar el espaciado intercharacter para todas las operaciones de salida de texto en un contexto de dispositivo especificado. En la ilustración siguiente se muestra una cadena de texto dibujada dos veces llamando a la función TextOut . Antes de dibujar el texto la segunda vez, se llamó a la función SetTextCharacterExtra para incrementar el espaciado intercharacter.

ilustración que muestra el mismo texto dos veces: primero con espaciado entre intercharacter normal y, a continuación, con espaciado más amplio

El valor de espaciado entre intercharacter predeterminado para cualquier contexto de dispositivo es cero. Una aplicación puede recuperar el valor de espaciado intercharacter actual para un contexto de dispositivo mediante una llamada a la función GetTextCharacterExtra .

Justificación de texto

Las aplicaciones pueden usar las funciones GetTextExtentPoint32 y SetTextJustification para justificar una línea de texto. La justificación de texto es una operación común en cualquier publicación de escritorio y en la mayoría de las aplicaciones de procesamiento de texto. La función GetTextExtentPoint32 calcula el ancho y alto de una cadena de texto. Una vez calculado el ancho, la aplicación puede llamar a la función SetTextJustification para distribuir el espaciado adicional entre cada una de las palabras de una línea de texto. En la ilustración siguiente se muestra un párrafo de texto impreso dos veces: en el primer párrafo, el texto no estaba justificado; en el segundo párrafo, el texto estaba justificado llamando a las funciones GetTextExtentPoint32 y SetTextJustification .

ilustración que muestra un párrafo que se alinea solo a la izquierda y, a continuación, el mismo párrafo alineado a la izquierda y a la derecha

Texto y color de fondo

Las aplicaciones pueden usar la función SetTextColor para establecer el color del texto dibujado en el área cliente de sus ventanas, así como el color del texto dibujado en una impresora de color. Una aplicación puede usar la función SetBkColor para establecer el color que aparece detrás de cada carácter y la función SetBkMode para especificar cómo debe combinar el sistema el color de fondo seleccionado con el color o los colores actuales en la pantalla de vídeo.

El color de texto predeterminado para un contexto de dispositivo de visualización es negro; el color de fondo predeterminado es blanco; y el modo de fondo predeterminado es OPAQUE. Una aplicación puede recuperar el color de texto actual de un contexto de dispositivo llamando a la función GetTextColor . Una aplicación puede recuperar el color de fondo actual de un contexto de dispositivo llamando a la función GetBkColor y al modo de fondo actual llamando a la función GetBkMode .