UWP Win2D рисовать текст с указанной шириной? Является ли это возможным? - PullRequest
0 голосов
/ 07 сентября 2018

Мне нравится рисовать текст "Hello Test Text" с определенной шириной строки, связанной в приложении UWP с Win2D.

Вот почему мне нужно:

<Viewbox Stretch="Uniform" Width="auto" Height="auto">
                    <TextBlock x:Name="txtSignaturePreview" Text="Sample Text" Foreground="White" />
                </Viewbox>

С помощью этого кода я могу изменить размер текста, изменив ширину Viewbox. Размер шрифта «Образец текста» изменяется в соответствии с шириной.

Мне нравится делать то же самое с Win2D DrawText.

Метод CanvasDrawingSession.DrawText (String, Rect, Color, CanvasTextFormat)

Прямоугольник DrawText просто ограничивает и принудительно переносит текст. Единственное решение, которое я нашел для достижения цели, - это изменить размер шрифта и передать его через CanvasTextFormat. Но проблема в том, что я не могу найти решение, чтобы выяснить желаемый размер шрифта с помощью указания ширины строки.

Любая помощь?

1 Ответ

0 голосов
/ 22 октября 2018

Вот обновленный ответ с собственным исследованием.

Я подтвердил, что это невозможно простым способом с текущими доступными методами после обсуждения форума MSDN с парнем MSFT. Win2D не поддерживает.

Скорее я работал вокруг; Я рассчитываю размер шрифта на основе соотношения ширины. Размер шрифта двойной, он довольно точный и хорошо работает.

...