zoukankan      html  css  js  c++  java
  • 转】 C# 图片格式(JPG,BMP,PNG,GIF)等转换为ICO图标

    using System;
    using System.Drawing;
    using System.Windows.Forms;
    using System.IO;

    namespace ICOTest
    {
        public partial class Form1 : Form
        {
            string FileName = "C:\\";
            public Form1()
            {
                InitializeComponent();
            }

            //核心代码
            private void button1_Click(object sender, EventArgs e)
            {
                Size size = new Size(32, 32);
                //获得原始图片文件
                using (Bitmap bm = new Bitmap(FileName))
                {
                    //从现有图像缩小,为了得到合适的ICO文件
                    using (Bitmap iconBm = new Bitmap(bm, size))
                    {
                        //如果是windows调用,直接下面一行代码就可以了
                        //此代码不能在web程序中调用,会有安全异常抛出
                        using (Icon icon = Icon.FromHandle(iconBm.GetHicon()))
                        {
                            string Name_ = "C:\\ICO\\" + DateTime.Now.Ticks.ToString() + ".ico";
                            using (Stream stream = new System.IO.FileStream(Name_, System.IO.FileMode.Create))
                            {

                                icon.Save(stream);
                                MessageBox.Show("转换成功。路径是:" + Name_);
                            }
                        }
                    }
                }
            }

            private void button2_Click(object sender, EventArgs e)
            {
                openFileDialog1.Filter = "JPG|*.jpg|BMP|*.bmp|PNG|*.png|GIF|*.gif";
                DialogResult D = openFileDialog1.ShowDialog();
                if (D == DialogResult.OK)
                {
                    FileName = this.openFileDialog1.FileName.Trim();
                    this.textBox1.Text = FileName;
                }
            }
        }
    }

    图像界面效果如下:

  • 相关阅读:
    【ARM-Linux开发】C语言getcwd()函数:取得当前的工作目录
    【ARM-Linux开发】C语言getcwd()函数:取得当前的工作目录
    【ARM-Linux开发】Gstreamer+QT+摄像头 编程总结
    【ARM-Linux开发】Gstreamer+QT+摄像头 编程总结
    【ARM-Linux开发】 pkg-config的用法
    【ARM-Linux开发】 pkg-config的用法
    【ARM-Linux开发】gstreamer教程及在DM3730上的应用
    【ARM-Linux开发】gstreamer教程及在DM3730上的应用
    【ARM-Linux开发】打包解包命令
    【ARM-Linux开发】打包解包命令
  • 原文地址:https://www.cnblogs.com/L_tommy/p/1888847.html
Copyright © 2011-2022 走看看