日期:2014-05-20  浏览次数:20780 次

winform下的图像处理问题,图的大小?!!!
有一张图片,上面有一个图像,然后我再photoshop里面把它切开3份,并保存,这时的图片还是那个图像,只不过是3份分开的图形,每一份之间有一些空白像素,我是为了用程序重新读取,在把这3份在重新拼好。可是当放大图形变换后有一份总是差1个,半个像素,不能完全吻合....望大虾叔叔们指点...,没有分了,回头追加囧

伪代码

C# code

     Bitmap source = new Bitmap(切过的图);
    sub_image = source.Clone(对应的矩形区域);
   


生成sub_image 后绘制到窗体上 
C# code

            e.Graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.None;
            e.Graphics.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.None;
            e.Graphics.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.NearestNeighbor;
            g.Graphics.ScaleTransform(1.5, 1.5, MatrixOrder.Append);
            e.Graphics.DrawImageUnscaled(sub_image , x, y);





------解决方案--------------------
除非你是无压缩位图,否则经过分割——压缩转存——解压——放大显示后差1个、半个像素很正常