C#描画後に描画したファイルを画像で保存
2516 ワード
これは今私自身のノートになって、すべて书いていないで、见ないでください、ハハハ
1、図面はまずGraphiesオブジェクトの参照を作成し、画像はすべてこの表示に基づいている.
コンストラクション関数でインスタンス化
2、画像表示ボックスのロード
3、ファイルの画像を開く
4、画像描画
1、図面はまずGraphiesオブジェクトの参照を作成し、画像はすべてこの表示に基づいている.
Graphics graphics; //
コンストラクション関数でインスタンス化
graphics = this.groupBox3.CreateGraphics(); // groupBox panel
2、画像表示ボックスのロード
PictureBox pictureBox1.Image = new Bitmap(1270, 776);
3、ファイルの画像を開く
private void _Click(object sender, EventArgs e)
{
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.InitialDirectory = "G:/ / .jpeg";
openFileDialog.Filter = "Bitmap files (*.bmp)|*.bmp|Jpeg files (*.jpg)|*.jpg|All valid files (*.bmp/*.jpg)|*.bmp/*.jpg| All Files|*.*";
openFileDialog.FilterIndex = 2;
openFileDialog.RestoreDirectory = true;
if (DialogResult.OK == openFileDialog.ShowDialog())
{
m_Bitmap = (Bitmap)Bitmap.FromFile(openFileDialog.FileName, false);
this.AutoScroll = true;
this.AutoScrollMinSize = new Size((int)(m_Bitmap.Width * Zoom), (int)(m_Bitmap.Height * Zoom));
this.Invalidate();
pictureBox1.Width = m_Bitmap.Width;
pictureBox1.Height = m_Bitmap.Height;
pictureBox1.Image = m_Bitmap;
groupBox3.Width = pictureBox1.Width;
groupBox3.Height = pictureBox1.Height;
//Graphics graphics = groupBox3.CreateGraphics();
graphics = Graphics.FromImage(m_Bitmap);
}
}
4、画像描画
graphics.DrawLine(pen, 10, 10, 500, 500);
Graphics.FromImage(pictureBox1.Image).DrawRectangle(pen, 55, 55, 100, 100);
public Form1()
{
InitializeComponent(); //
pictureBox1.Image = new Bitmap(pictureBox1.Width, pictureBox1.Height); //
SolidBrush b = new SolidBrush(Color.White); //
//
Graphics.FromImage(pictureBox1.Image).FillRectangle(b, 0, 0, pictureBox1.Width, pictureBox1.Height);
}
//
private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
{
//
Graphics.FromImage(pictureBox1.Image).DrawEllipse(new Pen(Brushes.Red), e.X, e.Y, 1, 1);
pictureBox1.Invalidate();
}
private void button1_Click(object sender, EventArgs e)
{
pictureBox1.Image.Save(@"D:\1.jpg", ImageFormat.Jpeg);
MessageBox.Show("ok");
}