基于C#实现图片合成功能

作者:芝麻粒儿 时间:2022-08-23 07:21:13 

实践过程

效果

基于C#实现图片合成功能

代码

public partial class Form1 : Form
{
   public Form1()
   {
       InitializeComponent();
   }

private void button1_Click(object sender, EventArgs e)
   {
       if (openFileDialog1.ShowDialog() == DialogResult.OK)
       {
           pictureBox1.Image = Image.FromFile(openFileDialog1.FileName);
       }
   }

private void button2_Click(object sender, EventArgs e)
   {
       if (openFileDialog2.ShowDialog() == DialogResult.OK)
       {
           pictureBox2.Image = Image.FromFile(openFileDialog2.FileName);
       }
   }

private void button3_Click(object sender, EventArgs e)
   {
       if (pictureBox1.Image != null && pictureBox2.Image != null)
       {
           Bitmap bt = new Bitmap(pictureBox1.Image);
           Graphics g = Graphics.FromImage(bt);
           g.DrawImage(pictureBox2.Image,new Point(5,5));
           pictureBox3.Image = bt;
       }
   }
}
partial class Form1
{
   /// <summary>
   /// 必需的设计器变量。
   /// </summary>
   private System.ComponentModel.IContainer components = null;

/// <summary>
   /// 清理所有正在使用的资源。
   /// </summary>
   /// <param name="disposing">如果应释放托管资源,为 true;否则为 false。</param>
   protected override void Dispose(bool disposing)
   {
       if (disposing && (components != null))
       {
           components.Dispose();
       }
       base.Dispose(disposing);
   }

#region Windows 窗体设计器生成的代码

/// <summary>
   /// 设计器支持所需的方法 - 不要
   /// 使用代码编辑器修改此方法的内容。
   /// </summary>
   private void InitializeComponent()
   {
       this.button1 = new System.Windows.Forms.Button();
       this.button2 = new System.Windows.Forms.Button();
       this.pictureBox1 = new System.Windows.Forms.PictureBox();
       this.pictureBox2 = new System.Windows.Forms.PictureBox();
       this.button3 = new System.Windows.Forms.Button();
       this.pictureBox3 = new System.Windows.Forms.PictureBox();
       this.openFileDialog1 = new System.Windows.Forms.OpenFileDialog();
       this.openFileDialog2 = new System.Windows.Forms.OpenFileDialog();
       ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
       ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit();
       ((System.ComponentModel.ISupportInitialize)(this.pictureBox3)).BeginInit();
       this.SuspendLayout();
       //
       // button1
       //
       this.button1.Location = new System.Drawing.Point(12, 12);
       this.button1.Name = "button1";
       this.button1.Size = new System.Drawing.Size(121, 23);
       this.button1.TabIndex = 0;
       this.button1.Text = "选择第一张图片";
       this.button1.UseVisualStyleBackColor = true;
       this.button1.Click += new System.EventHandler(this.button1_Click);
       //
       // button2
       //
       this.button2.Location = new System.Drawing.Point(139, 12);
       this.button2.Name = "button2";
       this.button2.Size = new System.Drawing.Size(121, 23);
       this.button2.TabIndex = 1;
       this.button2.Text = "选择第二张图片";
       this.button2.UseVisualStyleBackColor = true;
       this.button2.Click += new System.EventHandler(this.button2_Click);
       //
       // pictureBox1
       //
       this.pictureBox1.Location = new System.Drawing.Point(12, 41);
       this.pictureBox1.Name = "pictureBox1";
       this.pictureBox1.Size = new System.Drawing.Size(248, 160);
       this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
       this.pictureBox1.TabIndex = 2;
       this.pictureBox1.TabStop = false;
       //
       // pictureBox2
       //
       this.pictureBox2.Location = new System.Drawing.Point(12, 216);
       this.pictureBox2.Name = "pictureBox2";
       this.pictureBox2.Size = new System.Drawing.Size(248, 186);
       this.pictureBox2.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
       this.pictureBox2.TabIndex = 3;
       this.pictureBox2.TabStop = false;
       //
       // button3
       //
       this.button3.Location = new System.Drawing.Point(266, 12);
       this.button3.Name = "button3";
       this.button3.Size = new System.Drawing.Size(121, 23);
       this.button3.TabIndex = 4;
       this.button3.Text = "合成图片";
       this.button3.UseVisualStyleBackColor = true;
       this.button3.Click += new System.EventHandler(this.button3_Click);
       //
       // pictureBox3
       //
       this.pictureBox3.Location = new System.Drawing.Point(266, 41);
       this.pictureBox3.Name = "pictureBox3";
       this.pictureBox3.Size = new System.Drawing.Size(379, 363);
       this.pictureBox3.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
       this.pictureBox3.TabIndex = 5;
       this.pictureBox3.TabStop = false;
       //
       // openFileDialog1
       //
       this.openFileDialog1.Filter = "图片文件|*.jpg;*.jpeg;*.png;*.bmp";
       //
       // openFileDialog2
       //
       this.openFileDialog2.Filter = "图片文件|*.jpg;*.jpeg;*.png;*.bmp";
       //
       // Form1
       //
       this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
       this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
       this.ClientSize = new System.Drawing.Size(657, 416);
       this.Controls.Add(this.pictureBox3);
       this.Controls.Add(this.button3);
       this.Controls.Add(this.pictureBox2);
       this.Controls.Add(this.pictureBox1);
       this.Controls.Add(this.button2);
       this.Controls.Add(this.button1);
       this.Name = "Form1";
       this.Text = "Form1";
       ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
       ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit();
       ((System.ComponentModel.ISupportInitialize)(this.pictureBox3)).EndInit();
       this.ResumeLayout(false);

}

#endregion

private System.Windows.Forms.Button button1;
   private System.Windows.Forms.Button button2;
   private System.Windows.Forms.PictureBox pictureBox1;
   private System.Windows.Forms.PictureBox pictureBox2;
   private System.Windows.Forms.Button button3;
   private System.Windows.Forms.PictureBox pictureBox3;
   private System.Windows.Forms.OpenFileDialog openFileDialog1;
   private System.Windows.Forms.OpenFileDialog openFileDialog2;
}

来源:https://zhima.blog.csdn.net/article/details/128227674

标签:C#,图片,合成
0
投稿

猜你喜欢

  • Java实现整数分解质因数的方法示例

    2022-01-27 23:10:04
  • SpringBoot整合Web之AOP配置详解

    2022-01-17 21:38:11
  • Spring Boot + Mybatis 实现动态数据源案例分析

    2023-05-15 12:13:47
  • java8 Stream大数据量List分批处理切割方式

    2023-02-10 22:34:36
  • springboot vue测试平台开发调通前后端环境实现登录

    2021-08-13 03:54:02
  • Java毕业设计实战之宠物医院与商城一体的系统的实现

    2023-06-02 13:28:44
  • Android Service详解及示例代码

    2021-12-24 05:44:17
  • Android EditText长按菜单中分享功能的隐藏方法

    2021-08-27 19:30:45
  • Springboot异常日志输出方式

    2022-04-14 05:38:27
  • Mybatis动态调用表名和字段名的解决方法

    2022-03-18 16:54:14
  • Java实现蓝桥杯G将军的示例代码

    2022-05-01 08:44:58
  • Java实现树形List与扁平List互转的示例代码

    2023-03-15 00:18:23
  • java判断字符串是否有逗号的方法

    2021-11-03 08:01:23
  • SpringBoot创建RSocket服务器的全过程记录

    2022-10-24 10:20:25
  • mybatis的大于小于号转义符号一览

    2023-05-31 07:23:03
  • C#中读写INI文件的方法例子

    2022-10-21 23:14:48
  • java使用jaxb操作xml示例

    2023-11-05 15:02:18
  • 关于spring的自定义缓存注解分析

    2023-11-28 17:02:50
  • 使用java springboot设计实现的图书管理系统(建议收藏)

    2023-11-25 00:54:49
  • Springboot动态切换数据源的具体实现与原理分析

    2022-11-24 13:45:26
  • asp之家 软件编程 m.aspxhome.com