我在控件上绘制图像,通常仅旋转几度。这使得适当的过滤很重要,但我看到的伪影看起来像是最近邻问题。绘制图像时在哪里可以设置要使用的过滤器?
图像大于屏幕上的最终尺寸。
private void drawRotatedImage( DrawingContext dc , double width_px , double x , double y , double angle )
{
dc.PushTransform( new TranslateTransform(x,y) );
dc.PushTransform( new RotateTransform(angle) );
double scale = width_px / image.Width;
Rect rr = new Rect( -image.Width*0.5*scale , -image.Height*0.5*scale , image.Width*scale , image.Height*scale );
dc.DrawImage( image , rr );
dc.Pop();
dc.Pop();
}