Как я могу конвертировать png в xaml DrawingBrush? - PullRequest
0 голосов
/ 23 мая 2018

У меня есть несколько png-файлов, которые мне нужно использовать в приложении WPF (xaml) в векторном формате DrawingBrush.

Как я могу преобразовать png в xaml DrawingBrush?

1 Ответ

0 голосов
/ 23 мая 2018

PNG не является векторной графикой, и сделать его одним не то, что вы можете сделать, установив атрибут .Вы можете масштабировать его меньше, но если вы попытаетесь увеличить его, вы увидите некоторый артефакт.И вам не нужно помещать его в DrawingBrush, чтобы масштабировать его в любом случае.

Ответ заключается в том, чтобы сделать это с ImageBrush:

<Window.Resources>
    <ImageBrush
        x:Key="MyBrush"
        ImageSource="SantaClaus.png" 
        TileMode="Tile" 
        Viewport="0,0,100,100" 
        ViewportUnits="Absolute" 
        Stretch="Fill"
        />
</Window.Resources>

<Grid Background="{StaticResource MyBrush}">
</Grid>

enter image description here


Но если выимея дело с плохо разработанным сторонним контролем, который может использовать только DrawingBrush, вы можете сделать это тоже:

    <DrawingBrush 
        x:Key="MyBrush" 
        TileMode="Tile" 
        Viewport="0,0,100,100" 
        ViewportUnits="Absolute" 
        Stretch="Fill"
        >
        <DrawingBrush.Drawing>
            <DrawingGroup>
                <ImageDrawing ImageSource="SantaClaus.png" Rect="0,0,100,100" />
            </DrawingGroup>
        </DrawingBrush.Drawing>
    </DrawingBrush>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...