Преобразование формы в путь в XAML
Как я могу изменить код XAML (который представляет собой набор фигур) на одну фигуру, представленную PATH?
Предположим, что у нас есть XAML-код, такой как:
<Ellipse Fill="#FF0A0A0E" HorizontalAlignment="Left" Margin="192,184,0,0"
Stroke="Black" Width="8" Height="8" VerticalAlignment="Top"/>
<Rectangle Fill="Black" HorizontalAlignment="Left" Margin="152,187.5,0,0"
Stroke="Black" Width="89.5" Height="1" VerticalAlignment="Top"/>
И нужно преобразовать его в объект с одним путем?
Я попытался использовать Blend 4, где он позволяет преобразовать shaped в path, но затем приведенный выше код был преобразован в:
<Path Data="M7.5,4 C7.5,5.9329966 5.9329966,7.5 4,7.5 C2.0670034,7.5 0.5,5.9329966 0.5,4 C0.5,2.0670034 2.0670034,0.5 4,0.5 C5.9329966,0.5 7.5,2.0670034 7.5,4 z"
Fill="#FF0A0A0E" HorizontalAlignment="Left" Height="8" Margin="192,184,0,0"
Stretch="Fill" Stroke="Black" VerticalAlignment="Top" Width="8"/>
<Path Data="M0.5,0.5 L89,0.5 z" Fill="Black" HorizontalAlignment="Left" Height="1"
Margin="152,187.5,0,0" Stretch="Fill" Stroke="Black" VerticalAlignment="Top"
Width="89.5" />
Причина, по которой я задаю этот вопрос, заключается в том, что я могу определить только один путь. Поправьте меня, если я ошибаюсь. Если да, то как я могу это сделать? встроить 2 пути или более в один стиль?2 ответа:
Вы можете объединить две фигуры в одну
Path
с помощью выражения Blend 4.Чтобы сделать это, Выберите оба из них, удерживая ctrl или shift
После этого выберите объект - > объединить - > объединить
И в вашем случае он выведет это
Обратите внимание, что есть ошибка с этим, если прямоугольники<Path Data="M44,0.5 C45.932995,0.50000024 47.5,2.0670036 47.5,4.0000002 L89,4.0000002 89,4.0100003 47.499496,4.0100003 47.48193,4.3578544 C47.302696,6.122751 45.812183,7.5000002 44,7.5000002 42.187817,7.5000002 40.697304,6.122751 40.51807,4.3578544 L40.500504,4.0100003 0.5,4.0100003 0.5,4.0000002 40.5,4.0000002 C40.5,2.0670036 42.067005,0.50000024 44,0.5 z" Fill="Black" HorizontalAlignment="Left" Height="8" Margin="152,184,0,0" Stretch="Fill" Stroke="Black" VerticalAlignment="Top" Width="89.5"/>
Height
ровно 1. Тогда она просто исчезнет. Чтобы обойти это, просто установитеHeight
на что-то вроде 1.00001<Rectangle Fill="Black" HorizontalAlignment="Left" Margin="152,187.5,0,0" Stroke="Black" Width="89.5" Height="1.00001" VerticalAlignment="Top"/>