UWP Win2D рисует текст с указанной шириной? Является ли это возможным?

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

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

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

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

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

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

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

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


person Sky Kim    schedule 06.09.2018    source источник
comment
Кажется, у вас есть ответ в ветке MSDN здесь: social.msdn.microsoft.com/Forums / windowsapps / en-US /   -  person Breeze Liu - MSFT    schedule 20.09.2018


Ответы (1)


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

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

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

person Sky Kim    schedule 22.10.2018