Método IDWriteTextRenderer::D rawUnderline (dwrite.h)

IDWriteTextLayout::Draw llama a esta función para indicar al cliente que dibuje un subrayado.

Sintaxis

HRESULT DrawUnderline(
       void                   *clientDrawingContext,
       FLOAT                  baselineOriginX,
       FLOAT                  baselineOriginY,
  [in] DWRITE_UNDERLINE const *underline,
       IUnknown               *clientDrawingEffect
);

Parámetros

clientDrawingContext

Tipo: void*

Contexto de dibujo definido por la aplicación pasado a IDWriteTextLayout::Draw.

baselineOriginX

Tipo: FLOAT

Ubicación de píxeles (coordenada X) en el origen de línea base de la ejecución donde se aplica el subrayado.

baselineOriginY

Tipo: FLOAT

Ubicación de píxeles (coordenada Y) en el origen de línea base de la ejecución donde se aplica el subrayado.

[in] underline

Tipo: const DWRITE_UNDERLINE*

Puntero a una estructura que contiene información lógica de subrayado.

clientDrawingEffect

Tipo: IUnknown*

Efecto definido por la aplicación que se va a aplicar al subrayado. Normalmente, este argumento representa efectos como el pincel de primer plano que rellena el interior de una línea.

Valor devuelto

Tipo: HRESULT

Si este método se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.

Comentarios

Un solo subrayado se puede dividir en varias llamadas, dependiendo de cómo cambia el formato de los atributos. Si los tamaños o estilos de fuente cambian dentro de un subrayado, el grosor y el desplazamiento se ponderarán según los caracteres. Para obtener una posición de píxel inicial adecuada, agregue underline::offset a la línea base. De lo contrario, no habrá ningún espaciado entre el texto. La coordenada x siempre se pasará como lado izquierdo, independientemente de la direccionalidad del texto. Esto simplifica el dibujo y reduce el problema del redondeo que podría provocar huecos o una mezcla alfa doble con sello. Para evitar la superposición alfa, redondee los puntos finales al píxel del dispositivo más cercano.

Requisitos

   
Cliente mínimo compatible Windows 7, Windows Vista con SP2 y Platform Update para Windows Vista [aplicaciones de escritorio | Aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2008 R2, Windows Server 2008 con SP2 y Actualización de plataforma para Windows Server 2008 [aplicaciones de escritorio | Aplicaciones para UWP]
Plataforma de destino Windows
Encabezado dwrite.h
Library Dwrite.lib
Archivo DLL Dwrite.dll

Consulte también

IDWriteTextRenderer