0

我在控件上绘制图像,通常仅旋转几度。这使得适当的过滤很重要,但我看到的伪影看起来像是最近邻问题。绘制图像时在哪里可以设置要使用的过滤器?

图像大于屏幕上的最终尺寸。

    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();
    }
4

1 回答 1

0

如果您在 .NET 4 中编写代码,那么您需要将过滤器升级到更高质量的 Fant 过滤器。

通过在 Window 或特定元素上放置附加属性来做到这一点。

于 2012-07-27T19:07:30.097 回答