2012-07-09 24 views
0

这是很多类似的问题,但没有很好的答案?我使用上下文绘图在特定矩形尺寸“720,576”上绘制输入文本,现在我需要将整个文本适合最大字体大小,同时保持行数?将文字大小调整为可能的最大尺寸以适合包装的绘图矩形

我试着创建一个方程来计算,但没有用。我甚至试图循环大小,直到文本被剪辑,但我无法测试这种情况,我搜索了一个星期,看到类似的东西,但没有用!

最后我试图使用一个视图框,这是我想要的附近,但它不会让文本块内多行,因为它总是重新调整宽度包含所有文本在一行中的大小。

这里是我的了:

<Window x:Class="MainWindow" 
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
Title="MainWindow" Height="720" Width="576"> 
<Viewbox > 
    <TextBlock TextWrapping="Wrap" HorizontalAlignment="Center" VerticalAlignment="Center Text="how are you doining how are you doining how are you doining how are you doining how are you doining how are you doining how are you doining how are you doining how are you doining" " /> 
</Viewbox> 

任何帮助,将不胜感激,谢谢。

回答

0

我不能复制你刚才描述的行为,例如复制/粘贴到一个新项目中。它确实将文本写在几行上;也许你有一个对象的默认设置,可能是文本框...

好吧,很简单:设置你的文本框的宽度,所以你的文本框将包装。也许你想要宽度的ViewBox(祖先绑定)的宽度。

+0

对不起忘了删除网格,修改的例子上面,请再看一遍,谢谢。 – bat3a 2012-07-09 21:15:35

+0

看到我的编辑.____ – GameAlchemist 2012-07-09 22:09:03

+0

我试过了,但它没有填充视框: – bat3a 2012-07-09 22:55:57

0

我有同样的问题。这里是一个修复:

<Viewbox StretchDirection="DownOnly"> 
    <Grid MaxWidth="1000" MaxHeight="100"> 
     <TextBlock TextWrapping="Wrap" FontSize="42" VerticalAlignment="Center" Text="very very very very very very very very very very very very very very very very long line"/> 
    </Grid> 
</Viewbox> 

因此,与延长的文本行也将被调整,直至它不是那么小,那么它将被换到下一行

相关问题