Rotate Image By Angle 範例二

http://zip.nvp.com.tw/forum.php?mod=viewthread&tid=1101&extra=page%3D29

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace RotateImageByAngle_CS
{
    public partial class Form1 : Form
    {
        int i;
        public Form1()
        {
            InitializeComponent();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            this.pictureBox1.Image = Image.FromFile(@"c:windowsOPEN-chan_no33_1280.jpg");
        }
        private void button1_Click(object sender, EventArgs e)
        {
            ++i;
            this.pictureBox1.Image = RotateImageByAngle(Image.FromFile(@"c:windowsOPEN-chan_no33_1280.jpg"), 45 * i);
        }
        private static Bitmap RotateImageByAngle(Image oldBitmap, float angle)
        {
            Bitmap newBitmap = new Bitmap(oldBitmap.Width, oldBitmap.Height);
            Graphics graphics = Graphics.FromImage(newBitmap);
            graphics.TranslateTransform((float)oldBitmap.Width / 2, (float)oldBitmap.Height / 2);
            graphics.RotateTransform(angle);
            graphics.TranslateTransform(-(float)oldBitmap.Width / 2, -(float)oldBitmap.Height / 2);
            graphics.DrawImage(oldBitmap, new Point(0, 0));
            return newBitmap;
        }
    }
}

你可能感兴趣的:(Rotate Image By Angle 範例二)