저는 타일 기반 게임을 WPF 4로 작성하려고합니다. 저는 게임 보드를 창에 맞게 확장 시켜서 Viewbox를 사용하고 싶습니다. 하지만 각 타일이 선명하고 선명한 픽셀 경계에 있도록하고 싶습니다. 내가 틀릴 수도 있지만, 내 이해는 이것이 새로운 UseLayoutRounding 속성이 있어야하는 것입니다 -하지만 예상대로 작동하지 않습니다. 여기 UseLayoutRounding이 Viewbox에서 작동하지 않는 이유는 무엇입니까?
문제를 보여주는 창의 :<Window x:Class="Tyler.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Width="600" Height="400" Background="Black">
<Viewbox>
<Canvas Width="1000" Height="1000">
<Rectangle Canvas.Left="100" Canvas.Top="100"
Width="100" Height="100" Fill="Gray"/>
<Rectangle Canvas.Left="200" Canvas.Top="100"
Width="100" Height="100" Fill="Gray"/>
</Canvas>
</Viewbox>
</Window>
두 사각형은 인접하지만 때문에 (뷰 박스의 크기 조절로 인한) 서브 화소 좌표를, I는 어두운 회색 솔기 사이 끝낼 그들. 그게 제가 제거하려고하는 것입니다. 나는 그들이 완벽하게 융합되기를 바랍니다.
그러나 UseLayoutRounding에는이 효과가없는 것 같습니다. 창,보기 상자, 캔버스, 직사각형에 UseLayoutRounding="True"
을 설정해 보았습니다. 모든 설정을 한번에 시도해 보았습니다. 이음새에는 영향이 없습니다.
실종 (또는 오해)은 무엇입니까? 레이아웃 반올림을 통해 Viewbox에서 작동하려면 어떻게해야합니까?
? 나는 Silverlight도 사용할 수 있도록 ULR을 이해하고 싶습니다. ULR이 가장 가까운 픽셀로 반올림되지 않습니까? –
합의 ULR이해야 할 일입니다. D/Ling VS2010 지금 테스트 ... –