WPF imagen compensada
-
01-10-2019 - |
Pregunta
Tengo imagen con un tamaño de 800x600 y necesito para mostrar el fragmento de imagen pequeña 90x30 con desplazamiento x = 12 e y 12.
creo cepillo para eso, pero no sé cómo dar a compensar.
var source = new ImageBrush(groundSource);
source.Stretch = Stretch.None;
source.AlignmentX = AlignmentX.Left;
source.AlignmentY = AlignmentY.Top;
source.RelativeTransform = new TranslateTransform(0.5, 0);
var grid = new Grid();
grid.ClipToBounds = true;
grid.Background = source;
grid.VerticalAlignment = System.Windows.VerticalAlignment.Top;
grid.HorizontalAlignment = System.Windows.HorizontalAlignment.Left;
grid.Margin = new System.Windows.Thickness(12, 12, 0, 0);
grid.Width = SpriteSize.SpriteWidht + 33;
grid.Height = SpriteSize.SpriteHeight;
grid.SnapsToDevicePixels = true;
Alguien sabe cómo hacer eso?
Solución
Me encontró siguiente solución: Agregar imagen como niño a la cuadrícula y ajuste ClipToBounds de propiedad de la red = true. Y luego cambiando el margen imagen podemos establecer descentramiento de la imagen.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow