• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

c#学习之基础篇(动态打开,显示,保存,另存为图片)[待续]

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

声明:基础知识来自于此:http://blog.163.com/chenjunfeng_2007/blog/static/119385083201019102742570/

一、打开:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;

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

        /*用ToolStripMenuItem实现打开本地图片*/

        private void 打开ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            String picPath;
            //filter写法,"打开对话框下部索要显示内容|真正的过滤后缀名"
            openFileDialog1.Filter = "图片文件(jpg,jpeg,bmp,gif,ico,pen,tif)|*.jpg;*.jpeg;*.bmp;*.gif;*.ico;*.png;*.tif;*.wmf";
            openFileDialog1.ShowDialog();
            picPath = openFileDialog1.FileName;
            if(File.Exists(picPath))
            {
                pictureBox1.Image = Image.FromFile(picPath);
            }
        }

    /*用ToolStripMenuItem实现打开本地图片*/

   private void 保存ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            //Stream FileStream;
            SaveFileDialog saveImageDialog = new SaveFileDialog();
            saveImageDialog.Title = "保存文件实例";
            saveImageDialog.Filter = @"jpeg|*.jpg|bmp|*.bmp|gif|*.gif"; 

            saveImageDialog.ShowDialog();


            if (saveImageDialog.FileName != null)
            {
                //System.IO.Stream fs = (System.IO.Stream)saveImageDialog.OpenFile();
                //FileStream filestream = new FileStream(openFileDialog1.FileName.ToString(),FileMode.Open,FileAccess.Read);
                String fileName = saveImageDialog.FileName.ToString();

                if(fileName!="" && fileName!=null)
                {

                    /*该字符串中的每个字符都被认为具有数字位置:第一个字符的位置是 1,第二个字符的位置是 2,依此类推。

                      如果未指定第三个参数,将返回从第二个参数指定的位置开始直到字符串结尾的子字符串。

                      如果参数不是字符串类型,将先使用 string() 函数转换为字符串,然后计算该转换的结果。
                      substring("12345",2,3) ---->(234)
                      substring("12345",2) ------>(2345)*/

                    /*此处用fileExtName作为switch语句的开关项,但有编译期错误*/

                    String fileExtName = fileName.Substring(fileName.LastIndexOf(".") , 1).ToString() ;
                    System.Drawing.Imaging.ImageFormat imageformat= null;

                    if(fileExtName!=null)
                    {
                        switch(saveImageDialog.FilterIndex)
                        {
                            case 1:
                               imageformat=System.Drawing.Imaging.ImageFormat.Jpeg;
                                break;
                            case 2:
                               imageformat=System.Drawing.Imaging.ImageFormat.Bmp;
                                break;
                        }
                        if(imageformat==null)
                        {
                            imageformat = System.Drawing.Imaging.ImageFormat.Jpeg;
                        }

                        try
                        {
                            this.pictureBox1.Image.Save(fileName,imageformat);
                        }
                        catch
                        {
                            MessageBox.Show("sorry,保存图片出现异常");
                        }
                    }
                }
            }
        }

    }
}

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C#DataTable转换为Html用Html的方式预览DataTable的数据发布时间:2022-07-14
下一篇:
C#中关于Module和Assembly的关系发布时间:2022-07-14
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap