Поделиться через


Выравнивание текста

Вы можете выровнять текст DirectWrite с помощью метода SetTextAlignment интерфейса IDWriteTextFormat, как показано в коде, который центрирует текст.

HRESULT hr = pTextFormat_->SetTextAlignment(DWRITE_TEXT_ALIGNMENT_CENTER);

if (FAILED(hr))
{
    // Report the error
}

Текст можно выровнять с начальным или конечным краем поля макета или выровнять его по центру. На следующем рисунке показан текст со значением выравнивания, равным DWRITE_TEXT_ALIGNMENT_LEADING, DWRITE_TEXT_ALIGNMENT_CENTERи DWRITE_TEXT_ALIGNMENT_TRAILINGсоответственно.

иллюстрация текстовых абзацев с начальными, центрированных и конечными выравниванием

Заметка

Выравнивание зависит от направления чтения, описанное выше применимо для направления чтения слева направо. Для направления чтения справа налево это было бы противоположностью.

 

Объект IDWriteTextLayout будет использовать выравнивание, заданное для IDWriteTextFormat, предоставленное вами при создании макета. Чтобы изменить выравнивание текста, используйте IDWriteTextLayout::SetTextAlignment.