C#で簡単な画像のトリミングをやってみた

引数で指定された画像をトリミングする

using System.Drawing;

namespace TrimImage
{
    class Program
    {
        static void Main(string[] args)
        {
            string srcFile = args[0];
            int x = int.Parse(args[1]);
            int y = int.Parse(args[2]);
            int width = int.Parse(args[3]);
            int height = int.Parse(args[4]);

            using (var srcImage = new Bitmap(srcFile))
            using (var desImage = new Bitmap(width, height, srcImage.PixelFormat))
            using (var g = Graphics.FromImage(desImage))
            {
                var srcRect = new Rectangle(x, y, width, height);
                var desRect = new Rectangle(0, 0, desImage.Width, desImage.Height);

                g.DrawImage(srcImage, desRect, srcRect, GraphicsUnit.Pixel);

                string desFile = System.IO.Path.Combine(System.IO.Path.GetDirectoryName(srcFile), "trim_" + System.IO.Path.GetFileName(srcFile));

                desImage.Save(desFile, System.Drawing.Imaging.ImageFormat.Png);
            }
        }
    }
}