找传奇、传世资源到传世资源站!

以任意比例缩放图片例子

8.5玩家评分(1人评分)
下载后可评
介绍 评论 失效链接反馈

以任意比例缩放图片例子 C#语言基础-第1张

using System;using System.Drawing;using System.Collections;using System.ComponentModel;using System.Windows.Forms;using System.Data;namespace Image{/// <summary>/// Form1 的摘要说明。/// </summary>public class Form1 : System.Windows.Forms.Form{private System.Windows.Forms.Button button1;private System.Windows.Forms.OpenFileDialog openFileDialog1;/// <summary>/// 必需的设计器变量。/// </summary>private System.ComponentModel.Container components = null;private System.Windows.Forms.Button button2;private System.Windows.Forms.NumericUpDown numericUpDown1;private System.Windows.Forms.Label label1;private System.Windows.Forms.Label label2;private System.Windows.Forms.NumericUpDown numericUpDown2;private System.String StrFileName="";public Form1(){//// Windows 窗体设计器支持所必需的//InitializeComponent();//// TODO: 在 InitializeComponent 调用后添加任何构造函数代码//}/// <summary>/// 清理所有正在使用的资源。/// </summary>protected override void Dispose( bool disposing ){if( disposing ){if (components != null) {components.Dispose();}}base.Dispose( disposing );}#region Windows 窗体设计器生成的代码/// <summary>/// 设计器支持所需的方法 - 不要使用代码编辑器修改/// 此方法的内容。/// </summary>private void InitializeComponent(){this.button1 = new System.Windows.Forms.Button();this.openFileDialog1 = new System.Windows.Forms.OpenFileDialog();this.button2 = new System.Windows.Forms.Button();this.numericUpDown1 = new System.Windows.Forms.NumericUpDown();this.label1 = new System.Windows.Forms.Label();this.label2 = new System.Windows.Forms.Label();this.numericUpDown2 = new System.Windows.Forms.NumericUpDown();((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).BeginInit();((System.ComponentModel.ISupportInitialize)(this.numericUpDown2)).BeginInit();this.SuspendLayout();// // button1// this.button1.Location = new System.Drawing.Point(24, 208);this.button1.Name = "button1";this.button1.Size = new System.Drawing.Size(80, 23);this.button1.TabIndex = 0;this.button1.Text = "浏览图像";this.button1.Click = new System.EventHandler(this.button1_Click);// // openFileDialog1// this.openFileDialog1.Filter = "Image files (JPeg, Gif, Bmp, etc.)|*.jpg;*.jpeg;*.gif;*.bmp;*.tif; *.tiff; *.png|" " JPeg files (*.jpg;*.jpeg)|*.jpg;*.jpeg |GIF files (*.gif)|*.gif |BMP files (*.b" "mp)|*.bmp|Tiff files (*.tif;*.tiff)|*.tif;*.tiff|Png files (*.png)| *.png |All f" "iles (*.*)|*.*";// // button2// this.button2.FlatStyle = System.Windows.Forms.FlatStyle.Popup;this.button2.Location = new System.Drawing.Point(8, 8);this.button2.Name = "button2";this.button2.Size = new System.Drawing.Size(360, 192);this.button2.TabIndex = 1;this.button2.Paint = new System.Windows.Forms.PaintEventHandler(this.button2_Paint);// // numericUpDown1// this.numericUpDown1.Location = new System.Drawing.Point(184, 208);this.numericUpDown1.Minimum = new System.Decimal(new int[] { 1, 0, 0, 0});this.numericUpDown1.Name = "numericUpDown1";this.numericUpDown1.Size = new System.Drawing.Size(40, 21);this.numericUpDown1.TabIndex = 2;this.numericUpDown1.Value = new System.Decimal(new int[] { 5, 0, 0, 0});this.numericUpDown1.ValueChanged = new System.EventHandler(this.numericUpDown1_ValueChanged);// // label1// this.label1.Location = new System.Drawing.Point(112, 212);this.label1.Name = "label1";this.label1.Size = new System.Drawing.Size(72, 16);this.label1.TabIndex = 3;this.label1.Text = "X方向缩放:";// // label2// this.label2.Location = new System.Drawing.Point(232, 212);this.label2.Name = "label2";this.label2.Size = new System.Drawing.Size(72, 16);this.label2.TabIndex = 5;this.label2.Text = "Y方向缩放:";// // numericUpDown2// this.numericUpDown2.Location = new System.Drawing.Point(304, 208);this.numericUpDown2.Minimum = new System.Decimal(new int[] { 1, 0, 0, 0});this.numericUpDown2.Name = "numericUpDown2";this.numericUpDown2.Size = new System.Drawing.Size(48, 21);this.numericUpDown2.TabIndex = 4;this.numericUpDown2.Value = new System.Decimal(new int[] { 5, 0, 0, 0});this.numericUpDown2.ValueChanged = new System.EventHandler(this.numericUpDown2_ValueChanged);// // Form1// this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);this.ClientSize = new System.Drawing.Size(376, 238);this.Controls.Add(this.label2);this.Controls.Add(this.numericUpDown2);this.Controls.Add(this.label1);this.Controls.Add(this.numericUpDown1);this.Controls.Add(this.button2);this.Controls.Add(this.button1);this.MaximizeBox = false;this.Name = "Form1";this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;this.Text = "演示以任意比例缩放显示图像";((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).EndInit();((System.ComponentModel.ISupportInitialize)(this.numericUpDown2)).EndInit();this.ResumeLayout(false);}#endregion/// <summary>/// 应用程序的主入口点。/// </summary>[STAThread]static void Main() {Application.Run(new Form1());}private void button1_Click(object sender, System.EventArgs e){//浏览图像 this.openFileDialog1.ShowDialog(); this.StrFileName=this.openFileDialog1.FileName; this.button2.Refresh();}private void button2_Paint(object sender, System.Windows.Forms.PaintEventArgs e){//以任意比例缩放显示图像if(this.StrFileName.Trim()=="")return;System.Drawing.Bitmap MyBitmap=new Bitmap(this.StrFileName);Graphics g = e.Graphics;TextureBrush MyBrush = new TextureBrush(MyBitmap);float fx=(float)(this.numericUpDown1.Value/10);float fy=(float)(this.numericUpDown2.Value/10);g.ScaleTransform(fx,fy);//MyBrush.ScaleTransform(fx,fy);g.FillRectangle(MyBrush,0,0,this.ClientRectangle.Width,this.ClientRectangle.Height);}private void numericUpDown1_ValueChanged(object sender, System.EventArgs e){//更新图像显示this.button2.Refresh();}private void numericUpDown2_ValueChanged(object sender, System.EventArgs e){//更新图像显示 this.button2.Refresh();}}}

评论

发表评论必须先登陆, 您可以 登陆 或者 注册新账号 !


在线咨询: 问题反馈
客服QQ:174666394

有问题请留言,看到后及时答复