Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在没有平滑的情况下放大位图是不准确的,如何使其正确?_C#_Image_Scaling_System.drawing - Fatal编程技术网

C# 在没有平滑的情况下放大位图是不准确的,如何使其正确?

C# 在没有平滑的情况下放大位图是不准确的,如何使其正确?,c#,image,scaling,system.drawing,C#,Image,Scaling,System.drawing,结果是图像在左上角方向上偏移了几个像素。 我怎样才能做到这一点?我刚刚尝试了完全相同的方法,但看不到您提到的偏移量。这是我测试项目中的整个Program.cs。重复?@PeterRitchie不,不是关于HQ缩放,只是关于默认情况下它如何不令人满意。第一个和第三个参数实际上可以省略,结果是相同的。 Bitmap outputBitmap = new Bitmap(inputBitmap.Width * 5, inputBitmap.Height * 5); using (Graphics g

结果是图像在左上角方向上偏移了几个像素。


我怎样才能做到这一点?

我刚刚尝试了完全相同的方法,但看不到您提到的偏移量。这是我测试项目中的整个Program.cs。重复?@PeterRitchie不,不是关于HQ缩放,只是关于默认情况下它如何不令人满意。第一个和第三个参数实际上可以省略,结果是相同的。
Bitmap outputBitmap = new Bitmap(inputBitmap.Width * 5, inputBitmap.Height * 5);

using (Graphics graphics = Graphics.FromImage(outputBitmap))
    {                        
    graphics.CompositingQuality =
        System.Drawing.Drawing2D.CompositingQuality.HighQuality;
    graphics.InterpolationMode =
        System.Drawing.Drawing2D.InterpolationMode.NearestNeighbor;
    graphics.SmoothingMode =
        System.Drawing.Drawing2D.SmoothingMode.HighQuality;

    graphics.DrawImage(inputBitmap, 0, 0,
        inputBitmap.Width * 5, inputBitmap.Height * 5);
    }