Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
IDWriteTextLayout::Draw chama essa função para instruir o cliente a desenhar um sublinhado.
Sintaxe
HRESULT DrawUnderline(
void *clientDrawingContext,
FLOAT baselineOriginX,
FLOAT baselineOriginY,
[in] DWRITE_UNDERLINE const *underline,
IUnknown *clientDrawingEffect
);
Parâmetros
clientDrawingContext
Tipo: void*
O contexto de desenho definido pelo aplicativo passado para IDWriteTextLayout::Draw.
baselineOriginX
Tipo: FLOAT
O local do pixel (coordenada X) na origem da linha de base da execução em que o sublinhado se aplica.
baselineOriginY
Tipo: FLOAT
O local do pixel (coordenada Y) na origem da linha de base da execução em que o sublinhado se aplica.
[in] underline
Tipo: const DWRITE_UNDERLINE*
Ponteiro para uma estrutura que contém informações lógicas sublinhadas.
clientDrawingEffect
Tipo: IUnknown*
Efeito definido pelo aplicativo a ser aplicado ao sublinhado. Normalmente, esse argumento representa efeitos como o pincel de primeiro plano preenchendo o interior de uma linha.
Valor retornado
Tipo: HRESULT
Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.
Comentários
Um único sublinhado pode ser dividido em várias chamadas, dependendo de como a formatação altera os atributos. Se os tamanhos/estilos de fonte forem alterados em um sublinhado, a espessura e o deslocamento serão ponderados em média de acordo com os caracteres. Para obter uma posição de pixel inicial apropriada, adicione underline::offset à linha de base. Caso contrário, não haverá espaçamento entre o texto. A coordenada x sempre será passada como o lado esquerdo, independentemente da direcionalidade do texto. Isso simplifica o desenho e reduz o problema de arredondamento que poderia potencialmente causar lacunas ou uma mistura alfa carimbada dupla. Para evitar a sobreposição alfa, arredondar os pontos de extremidade para o pixel do dispositivo mais próximo.
Requisitos
| Cliente mínimo com suporte | Windows 7, Windows Vista com SP2 e Atualização de Plataforma para Windows Vista [aplicativos da área de trabalho | Aplicativos UWP] |
| Servidor mínimo com suporte | Windows Server 2008 R2, Windows Server 2008 com SP2 e Platform Update para Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP] |
| Plataforma de Destino | Windows |
| Cabeçalho | dwrite.h |
| Biblioteca | Dwrite.lib |
| DLL | Dwrite.dll |