C# 手动/自动保存图片的实例代码

所属分类: 软件编程 / C#教程 阅读数: 129
收藏 0 赞 0 分享

view plaincopy to clipboardprint?

复制代码 代码如下:

//手动保存图片  
        private void saveBtn_Click(object sender, System.EventArgs e)  
        {  
            bool isSave = true;  
            SaveFileDialog saveImageDialog = new SaveFileDialog();  
            saveImageDialog.Title = "图片保存";  
            saveImageDialog.Filter= @"jpeg|*.jpg|bmp|*.bmp|gif|*.gif";  

            if(saveImageDialog.ShowDialog() == DialogResult.OK)  
            {  
                string fileName = saveImageDialog.FileName.ToString();  

                if(fileName != "" && fileName != null)  
                {  
                    string fileExtName = fileName.Substring(fileName.LastIndexOf(".")+1).ToString();  

                    System.Drawing.Imaging.ImageFormat imgformat = null;       

                    if(fileExtName!="")  
                    {  
                        switch(fileExtName)   
                        {   
                            case "jpg":   
                                imgformat = System.Drawing.Imaging.ImageFormat.Jpeg;   
                                break;   
                            case "bmp":   
                                imgformat = System.Drawing.Imaging.ImageFormat.Bmp;   
                                break;   
                            case "gif":   
                                imgformat = System.Drawing.Imaging.ImageFormat.Gif;   
                                break;   
                            default:   
                                MessageBox.Show("只能存取为: jpg,bmp,gif 格式");   
                                isSave = false;  
                                break;   
                        }   

                    }  

                    //默认保存为JPG格式  
                    if(imgformat == null)  
                    {  
                        imgformat = System.Drawing.Imaging.ImageFormat.Jpeg;  
                    }  

                    if(isSave)  
                    {  
                        try 
                        {  
                                this.pictureBox1.Image.Save(fileName,imgformat);  
                                //MessageBox.Show("图片已经成功保存!");  
                        }  
                        catch 
                        {  
                            MessageBox.Show("保存失败,你还没有截取过图片或已经清空图片!");  
                        }  
                    }  

                }  

            }  
        }  

        //自动保存图片  
        private void Autosave()  
        {  
            string Opath =@"D:\VedioCapture\Photo";  
            string photoname = DateTime.Now.Ticks.ToString();  
            if (Opath.Substring(Opath.Length-1, 1) != @"\")  
                Opath = Opath + @"\";  
            string path1 = Opath + DateTime.Now.ToShortDateString();  
            if (! Directory.Exists(path1))            
                Directory.CreateDirectory(path1);  
            //pictureBox1.Image.Save(path1 +"\\" + photoname + ".jpg",System.Drawing.Imaging.ImageFormat.Jpeg);  
            //图像的缩小  
            System.Drawing.Bitmap objPic,objNewPic;  
            try 
            {  
                objPic = new System.Drawing.Bitmap(pictureBox1.Image);  
                objNewPic=new System.Drawing.Bitmap(objPic,pictureBoxShow.Width,pictureBoxShow.Height);  
                //objNewPic=new System.Drawing.Bitmap(objPic,320,240);//图片保存的大小尺寸  
                objNewPic.Save(path1 +"\\" + photoname + ".jpg",System.Drawing.Imaging.ImageFormat.Jpeg);  
            }  
            catch(Exception exp){throw exp;}  
            finally 
            {  
                objPic=null;  
                objNewPic=null;  
            }  
        }

更多精彩内容其他人还在看

C# 大小写转换(金额)实例代码

C# 大小写转换(金额)实例代码,需要的朋友可以参考一下
收藏 0 赞 0 分享

C# WinForm中Panel实现用鼠标操作滚动条的实例方法

由于在WinForm中Panel不能直接响应鼠标的滚动事件,只好采用捕获窗体的滚动事件。
收藏 0 赞 0 分享

C#访问应用程序配置文件的方法

C#访问应用程序配置文件的方法,需要的朋友可以参考一下
收藏 0 赞 0 分享

C#读写文件的方法汇总

C#读写文件的方法汇总,需要的朋友可以参考一下
收藏 0 赞 0 分享

C#计算代码执行时间的方法

在一些测试工作时我们需要获得高精度的代码执行时间以比较其效率。
收藏 0 赞 0 分享

C# 动画窗体(AnimateWindow)的小例子

C# 动画窗体(AnimateWindow)的小例子,需要的朋友可以参考一下
收藏 0 赞 0 分享

C# zxing二维码写入的实例代码

C# zxing二维码写入的实例代码,需要的朋友可以参考一下
收藏 0 赞 0 分享

c#判断输入的是不是数字的小例子

c#判断输入的是不是数字的小例子,需要的朋友可以参考一下
收藏 0 赞 0 分享

c# 深拷贝与浅拷贝的区别分析及实例

浅拷贝(影子克隆):只复制对象的基本类型,对象类型,仍属于原来的引用. 深拷贝(深度克隆):不紧复制对象的基本类,同时也复制原对象中的对象.就是说完全是新对象产生的.
收藏 0 赞 0 分享

C#利用com操作excel释放进程的解决方法

最近利用Microsoft.Office.Interop.Excel.Application读取一个excel后,进程中一直存在excel,在网上找了一阵子,其中有几个解决方案
收藏 0 赞 0 分享
查看更多