Función ExtTextOutA (wingdi.h)
La función ExtTextOut dibuja texto con la fuente, el color de fondo y el color de texto seleccionados actualmente. Opcionalmente, puede proporcionar dimensiones que se usarán para recortar, opaco o ambos.
Sintaxis
BOOL ExtTextOutA(
[in] HDC hdc,
[in] int x,
[in] int y,
[in] UINT options,
[in] const RECT *lprect,
[in] LPCSTR lpString,
[in] UINT c,
[in] const INT *lpDx
);
Parámetros
[in] hdc
Identificador del contexto del dispositivo.
[in] x
Coordenada x, en coordenadas lógicas, del punto de referencia utilizado para colocar la cadena.
[in] y
Coordenada y, en coordenadas lógicas, del punto de referencia utilizado para colocar la cadena.
[in] options
Especifica cómo usar el rectángulo definido por la aplicación. Este parámetro puede ser uno o varios de los siguientes valores.
Valor | Significado |
---|---|
|
El texto se recortará en el rectángulo. |
|
La matriz de lpString hace referencia a una matriz devuelta desde GetCharacterPlacement y GDI debe analizarse directamente, ya que no se requiere ningún procesamiento adicional específico del lenguaje. La indexación de glifos solo se aplica a las fuentes TrueType, pero la marca se puede usar para las fuentes de mapa de bits y vectores para indicar que no es necesario ningún procesamiento de lenguaje adicional y GDI debe procesar la cadena directamente. Tenga en cuenta que todos los índices de glifo son valores de 16 bits, aunque se supone que la cadena es una matriz de valores de 8 bits para las fuentes ráster.
Para ExtTextOutW, los índices de glifo se guardan en un metarchivo. Sin embargo, para mostrar los caracteres correctos, el metarchivo debe reproducirse con la misma fuente. Para ExtTextOutA, los índices de glifo no se guardan. |
|
Reservado para uso del sistema. Si una aplicación establece esta marca, pierde la compatibilidad con scripts internacionales y, en algunos casos, puede que no muestre ningún texto. |
|
Para mostrar números, use dígitos europeos. |
|
Para mostrar números, use dígitos adecuados para la configuración regional. |
|
El color de fondo actual debe usarse para rellenar el rectángulo. |
|
Cuando se establece, la matriz a la que apunta lpDx contiene pares de valores. El primer valor de cada par es, como de costumbre, la distancia entre los orígenes de las celdas de caracteres adyacentes, pero el segundo valor es el desplazamiento a lo largo de la dirección vertical de la fuente. |
|
edición de idioma de Oriente Medio de Windows: Si se especifica este valor y se selecciona una fuente hebreo o árabe en el contexto del dispositivo, la cadena se genera mediante el orden de lectura de derecha a izquierda. Si no se especifica este valor, la cadena se genera en orden de izquierda a derecha. El mismo efecto se puede lograr estableciendo el valor de TA_RTLREADING en SetTextAlign. Este valor se conserva para la compatibilidad con versiones anteriores. |
Los valores ETO_GLYPH_INDEX y ETO_RTLREADING no se pueden usar juntos. Dado que ETO_GLYPH_INDEX implica que se ha completado todo el procesamiento del lenguaje, la función omite la marca ETO_RTLREADING si también se especifica.
[in] lprect
Puntero a una estructura opcional RECT que especifica las dimensiones, en coordenadas lógicas, de un rectángulo que se usa para recortar, opacar o ambos.
[in] lpString
Puntero a una cadena que especifica el texto que se va a dibujar. No es necesario que la cadena finalice cero, ya que cbCount especifica la longitud de la cadena.
[in] c
Longitud de la cadena a la que apuntalpString.
Este valor no puede superar 8192.
[in] lpDx
Puntero a una matriz opcional de valores que indican la distancia entre los orígenes de las celdas de caracteres adyacentes. Por ejemplo, lpDx[i] las unidades lógicas separan los orígenes de la celda de caracteres i y celda de caracteres i + 1.
Valor devuelto
Si se dibuja la cadena, el valor devuelto es distinto de cero. Sin embargo, si se llama a la versión ANSI de extTextOut con ETO_GLYPH_INDEX, la función devuelve TRUE aunque la función no haga nada.
Si se produce un error en la función, el valor devuelto es cero.
Observaciones
La configuración actual de alineación de texto para el contexto de dispositivo especificado determina cómo se usa el punto de referencia para colocar el texto. La configuración de alineación de texto se recupera llamando a la función GetTextAlign. La configuración de alineación de texto se modifica llamando a la función SetTextAlign. Puede usar los siguientes valores para la alineación de texto. Solo se puede elegir una marca de las que afectan a la alineación horizontal y vertical. Además, solo se puede elegir una de las dos marcas que modifican la posición actual.
Si el parámetro
De forma predeterminada, esta función no usa ni actualiza la posición actual. Sin embargo, una aplicación puede llamar a la función
Para la versión ANSI de ExtTextOut, la matriz de lpDx tiene el mismo número de valores INT que los bytes de lpString. En el caso de los caracteres DBCS, puede apportion the dx in the lpDx entradas entre el byte principal y el byte final, siempre y cuando la suma de los dos bytes sume hasta el dx deseado. Para los caracteres DBCS con la versión Unicode de ExtTextOut, cada glifo Unicode obtiene una sola entrada pdx.
Tenga en cuenta que los valores de
extTextOut usará uniscribe cuando sea necesario, lo que da lugar a la reserva de fuentes. La marca ETO_IGNORELANGUAGE impedirá este comportamiento y no se debe pasar.
Además, extTextOut realizará un procesamiento por lotes interno de llamadas antes de realizar la transición al modo kernel, lo que mitiga algunos de los problemas de rendimiento al ponderar el uso de PolyTextOut frente a ExtTextOut.
Propina
extTextOut se recomienda encarecidamente a través de polyTextOut para el desarrollo moderno debido a su capacidad de controlar la visualización de diferentes lenguajes.
Ejemplos
Para obtener un ejemplo, vea "Establecer fuentes para Menu-Item cadenas de texto" en usar menús.
Nota
El encabezado wingdi.h define ExtTextOut como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows 2000 Professional [solo aplicaciones de escritorio] |
servidor mínimo admitido | Windows 2000 Server [solo aplicaciones de escritorio] |
de la plataforma de destino de |
Windows |
encabezado de |
wingdi.h (incluya Windows.h) |
biblioteca de |
Gdi32.lib |
DLL de |
Gdi32.dll |
Consulte también
funciones de fuente y texto de
de información general de fuentes y texto de