【问题标题】:Scaling button background images and resizing window in wpf在 wpf 中缩放按钮背景图像和调整窗口大小
【发布时间】:2016-11-15 09:27:19
【问题描述】:

致力于设计一个新的 WPF 控件,该控件需要在 7 英寸的平板电脑和 20-30 英寸的大型显示器上以及介于两者之间的任何地方都能很好地显示。

我将在控件中有按钮面板,其中有图标来表示它们的操作,并且该面板可以根据配置和系统状态进行更改。

我认为总共有大约 40 个潜在的图标。

我最初假设会支持矢量图形文件(.SVG 扩展名),但事实并非如此。

拥有一个在大显示器上看起来不错的大图像文件在 7 英寸平板电脑上看起来很糟糕,对于放大到大显示器时看起来不错的小图像也是如此。

平均尺寸的图片在所有内容上看起来都是平均的。

如何最好地处理缩放图像以使其在小型平板电脑和大型显示器上看起来都最佳?

这是我如何显示图像的基础知识。

<Window.Resources>
    <Image x:Key="PngImage" Source="C:\Images\acid.png"/>
</Window.Resources>

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="*" />
        <RowDefinition Height="*" />
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="*" />            
    </Grid.ColumnDefinitions>

    <Button Grid.Row="0" Grid.Column="0" Content="{StaticResource PngImage}"/>
</Grid>

【问题讨论】:

  • 启动时识别当前环境,然后使用合适的图像:小屏小,大屏大
  • 通常对于 web,使用 3 个单独的集合,小 / 小 / 大。您可以使用相同的概念。
  • 首先你可以尝试使用ViewBox 来包含你的Image

标签: c# wpf button graphics scaling


【解决方案1】:

可以使用 Microsoft XPS 打印机驱动程序将 SVG 文件转换为 XAML 路径。

该过程有一个链接here。这有点令人费解,但如果您没有要转换的一堆文件,这可能是最简单的。

如果您需要批量处理,可以使用几个转换器。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-09
    • 1970-01-01
    • 2012-08-29
    • 1970-01-01
    • 1970-01-01
    • 2014-07-26
    • 1970-01-01
    相关资源
    最近更新 更多