在Viewbox中获取TextBlock / Label以进行缩放而不会产生不希望的填充

时间:2011-11-18 20:57:22

标签: .net wpf fonts viewbox

这是我非常简单的xaml:

<Window x:Class="Test.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Window1" Height="300" Width="300" Background="Black" Padding="0" Margin="0" >
    <Viewbox Margin="0">
        <TextBlock Text="Test" Background="AliceBlue" Foreground="Red" 
            Padding="0" Margin="0" />
    </Viewbox>
</Window>

这应该缩放标签/文本块(我已尝试过两者)以尽可能多地填充窗口,同时保持文本的宽高比。问题是,如果你拖动窗口的大小,你可以看到文本的顶部和底部似乎有某种不可见的,不可更改的填充。

左边和右边似乎没有它(左图),但顶部和底部都没有(右图):

Left and Right seem fine. Left and right, not so much!

在这里,我指出了我正在谈论的额外填充:

enter image description here

我会期待它渲染更像这样(我手动完成,所以宽高比并不完美):

enter image description here

有没有人克服过这个?也许我需要直接用GDI +或其他东西来绘制这个文本,但我甚至不知道从哪里开始,所以任何我应该点击谷歌的关键词也会受到赞赏!

1 个答案:

答案 0 :(得分:1)

据我所知,这是字体的一部分,请尝试将FontFamily设为Webdings

Screenshot