码迷,mamicode.com
首页 > Windows程序 > 详细

C# 切分图片

时间:2018-06-27 18:06:07      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:isp   复杂   ppa   var   怎么   文件   rom   dispose   idt   

        public void Slice()
        {
            // 图片路径
            var file = "F;/aaa.png";
            // 水平切分
            int horizontal = 4;
            // 纵向切分
            int vertical = 4;
            for (int i = 0; i < horizontal * vertical; i++)
            {
                using (Image image = Image.FromFile(file, true))
                {
                    // 每一块的高
                    int s_h = image.Height / horizontal;
                    // 每一块的宽
                    int s_w = image.Width / vertical;
                    // 整除判断自己加吧,懒得写了

                    /*
                     0,0 ; 1,0 ; 2,0 ; 3,0
                     0,1 ; 1,1 ; 2,1 ; 3,1
                     0,2 ; 1,2 ; 2,2 ; 3,2
                     0,3 ; 1,3 ; 2,3 ; 3,3
                     */
                    // 左上角为0,0
                    var rect = new Rectangle();
                    rect.X = i % vertical * s_w;
                    rect.Y = i / horizontal * s_h;
                    rect.Width = s_w;
                    rect.Height = s_h;
                    CutForCustom(image, "xxx"+i+".png", rect);
                }
            }
        }

        /// <summary>
        /// 切图
        /// </summary>
        /// <param name="image">图源</param>
        /// <param name="fileSaveUrl">要保存的文件名</param>
        /// <param name="rect">位置大小</param>
        public void CutForCustom(Image image, string fileSaveUrl, Rectangle rect)
        {
            var templateImage = new Bitmap(image);
            var bitCrop = templateImage.Clone(rect, System.Drawing.Imaging.PixelFormat.Format32bppArgb);
            bitCrop.Save(fileSaveUrl);
            bitCrop.Dispose();
            templateImage.Dispose();
            image.Dispose();
        }

具体文件怎么来就随意了。如果切分的块数不能整除也可以,只是会丢失,自己补足一下会更复杂了

C# 切分图片

标签:isp   复杂   ppa   var   怎么   文件   rom   dispose   idt   

原文地址:https://www.cnblogs.com/Fivee/p/9235230.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!