加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

C# 图片格式转换

发布时间:2020-12-16 01:13:13 所属栏目:百科 来源:网络整理
导读:在日常工作中,经常需要不同格式(JPG,PNG,BMP,GIF,ICO)的图片,有时还需要进行图片格式的相互转换,本文以一个简单的小例子,简述图片格式转换的常见方法,仅供学习分享使用,如有不足之处,还请指正。 涉及知识点 OpenFileDialog 打开文件对话框,用于选择

在日常工作中,经常需要不同格式(JPG,PNG,BMP,GIF,ICO)的图片,有时还需要进行图片格式的相互转换,本文以一个简单的小例子,简述图片格式转换的常见方法,仅供学习分享使用,如有不足之处,还请指正。

涉及知识点

  • OpenFileDialog 打开文件对话框,用于选择文件,可以设置过滤后缀。
  • FolderBrowserDialog 文件夹选择对话框,用于选择一个文件夹,可以新增。
  • ImageFormat 图片类型枚举。
  • Bitmap 位图对象,包含对应的属性和内容。
  • Stream 流对象的基类。
  • FlowLayoutPanel 流式布局容器,所添加的元素,以横向或纵向依次排列。

?

示例效果图

图片转换器的示例效果图如下:

?

核心代码

?打开图片

 1         /// <summary>
 2         /// 打开图片
 3         </summary>
 4         <param name="sender"></param>
 5         <param name="e"></param>
 6         private void btnOpen_Click(object sender,EventArgs e)
 7         {
 8 
 9             this.fileDialog.Filter = fileFilter;
10             this.fileDialog.Multiselect = true;
11             this.fileDialog.CheckFileExists = 12             if (fileDialog.ShowDialog() == DialogResult.OK)
13             {
14                 string[] fileNames = this.fileDialog.FileNames;
15                 foreach(string fileName in fileNames)
16                 {
17                     Bitmap bmp = new Bitmap(fileName);
18                     //保存图片名称
19                     bmp.Tag = Path.GetFileNameWithoutExtension(fileName);
20                     PictureBox box =  PictureBox();
21                     box.Image = bmp;
22                     box.Width = 10523                     box.Height = 15024                     box.BorderStyle = BorderStyle.FixedSingle;
25                     box.Padding = new Padding(2);
26                     .flowPnl.Controls.Add(box);
27                 }
28                 this.txtFile.Text = Path.GetDirectoryName(fileNames[0]);
29 
30             }
31         }
View Code

转换图片格式

 转换图片
 4         void convertImage(string dir,string filter,Bitmap bmp)
 5  6             string filePath = Path.Combine(dir,1)">string.Format("{0}.{1}",bmp.Tag.ToString(),filter.ToLower()));
 7             switch (filter)
 8  9                 case JPG:
10                     bmp.Save(filePath,ImageFormat.Jpeg);
11                     break12                 PNG14                     GIF17                     18                 BMP19 20                     21                 ICO22                     Stream stream = File.Create(filePath);
23                     Icon icon = Icon.FromHandle(bmp.GetHicon());
24                     icon.Save(stream);          save the icon
25                     stream.Close();
28         }
View Code

如果需要示例的源码,可以点击链接进行下载

源码链接

备注

题李凝幽居

作者:贾岛 ?唐代

闲居少邻并,草径入荒园。
鸟宿池边树,僧敲月下门。
过桥分野色,移石动云根。
暂去还来此,幽期不负言。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读