Estoy usando WPF para una canalización de cambio de tamaño de imagen que ha estado funcionando muy bien en .NET v3.5. Acabo de actualizar el proyecto para apuntar a v4.0 y ahora todas mis imágenes redimensionadas tienen un gran alias. Ninguno del código de la tubería de imagen ha cambiado.Image Resize Aliasing en WPF v4 pero no en v3.5
¿Ha cambiado la configuración predeterminada de WPF entre v3.5 y v4.0?
¿Cómo controlo el tramado de mis imágenes de mapa de bits redimensionadas en WPF?
estoy usando BitmapImage
, DrawingVisual
, DrawingContext
, RenderTargetBitmap
, BitmapEncoder
, y BitmapFrame
pero no estoy viendo propiedades relacionadas con tramado. GDI + tenía muchos ajustes, así que supongo que me falta algo.
Actualización: Parece que todas las soluciones que he visto asumen un objeto de ventana o un entorno XAML. Esto se ejecuta dentro de un servicio de Windows que no tiene UI. Necesito una forma de afectar programáticamente esta configuración.
He cambiado específicamente de GDI + a WPF porque GDI + tiene pérdidas de memoria en procesos de larga ejecución, como servicios & aplicaciones web.
El enlace no es exactamente el contexto en el que lo estoy usando. Estoy usando las clases y llamándolas programáticamente en vez de declarativamente. He intentado tanto llamar 'RenderOptions.SetBitmapScalingMode (..., BitmapScalingMode.HighQuality)' y 'RenderOptions.SetBitmapScalingMode (..., BitmapScalingMode.Fant)' en todos aquellos objetos sobre los cuales se implementa 'DependencyObject'. No parece tener ningún efecto. Los documentos implican que el objeto debe ser un descendiente de 'UIElement' o' DrawingGroup'. Yo no uso ninguno. – mckamey