在WPF DrawingContext上绘制旋转图像时的DrawImage过滤

时间:2012-06-19 09:55:08

标签: wpf drawimage drawingcontext

我在控件上绘制图像,通常只旋转几度。这使得正确的过滤很重要,但我看到看起来像最近邻居问题的工件。在哪里可以设置绘制图像时使用的滤镜?

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

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

1 个答案:

答案 0 :(得分:0)