登录
首页 » C#源码 » C# WPF把彩色图片转换为灰度图

C# WPF把彩色图片转换为灰度图

于 2022-02-01 发布 文件大小:740.28 kB
0 195
下载积分: 2 下载次数: 1

代码说明:

C# 把彩色图片转换为灰度图,这是一个基于WPF的C#图像处理程序,图像彩色转换黑白,支持的图像文件格式为:JPeg,Gif,Bmp,etc。   程序主要实现两个功能,一是将彩色转换为索引像素格式、二是将彩色转换为黑白像素格式,对应于窗口中的按钮,可查看对应功能的演示:   将彩色转换为黑白像素格式,核心代码如下:   TransformedBitmap MyRotatedBitmapSource = new TransformedBitmap();   MyRotatedBitmapSource.BeginInit();   MyRotatedBitmapSource.Source = (System.Windows.Media.Imaging.BitmapSource)this.image1.Source;   MyRotatedBitmapSource.Transform = new RotateTransform(270);   MyRotatedBitmapSource.EndInit();   FormatConvertedBitmap MyFormatedBitmap = new FormatConvertedBitmap();   MyFormatedBitmap.BeginInit();   MyFormatedBitmap.Source = MyRotatedBitmapSource;   MyFormatedBitmap.DestinationFormat = PixelFormats.BlackWhite;   MyFormatedBitmap.EndInit();   this.image1.Source = MyFormatedBitmap;   完整源码例子请在本页下载,运行效果截图如下图示。

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • C# 按照扩展名分组文件
    C# 按照扩展名分组文件,按照文件类型的不同,对文件进行归类显示,分类清淅便于查看,主要是使用MyFile中的对象和方法实现,核心的功能代码如下:   private void ShowGroupFile(IEnumerable> MyQueryGroup)   {    this.listBox1.Items.Clear();    foreach (var MyFileGroup in MyQueryGroup)    {    this.listBox1.Items.Add("包含" + MyFileGroup.Key + "扩展名的文件如下:");    foreach (var MyFileInfo in MyFileGroup)    {    this.listBox1.Items.Add(MyFileInfo.Name);    }    this.listBox1.Items.Add("");    }   }   static IEnumerable GetFiles(string MyDir)   {    if (!System.IO.Directory.Exists(MyDir))    throw new System.IO.DirectoryNotFoundException();    string[] MyFileNames = null;    List MyFiles = new List();    //查找指定目录下的所有子目录中的所有文件    //MyFileNames = System.IO.Directory.GetFiles(MyDir, "*.*", System.IO.SearchOption.AllDirectories);    MyFileNames = System.IO.Directory.GetFiles(MyDir);    foreach (string MyName in MyFileNames)    {    MyFiles.Add(new System.IO.FileInfo(MyName));    }    return MyFiles;   }
    2022-12-28 08:15:04下载
    积分:1
  • Visual C# 交叉表查询
    这是一个Visual C# 交动态交叉表查询示例程序,动态交叉表(SQLServer 2005)查询例子源码:   private void Frm_Main_Load(object sender, EventArgs e)   {    SqlConnection con = new SqlConnection(//创建数据库连接对象    @"Server=WIN-GI7E47AND9RLS;database=db_TomeTwo;Uid=sa;Pwd=");    SqlDataAdapter dap = new SqlDataAdapter(//创建数据适配器对象    "select * from tb_VenditionInfo", con);    DataSet ds = new DataSet();//创建数据集    dap.Fill(ds, "table");//填充数据集    dgv_Message.DataSource =//设置数据源    ds.Tables[0].DefaultView;   }      private void btn_Select_Click(object sender, EventArgs e)   {    SqlConnection con = new SqlConnection(//创建数据库连接对象    @"Server=WIN-GI7E47AND9RLS;database=db_TomeTwo;Uid=sa;Pwd=");    SqlDataAdapter dap = new SqlDataAdapter("Corss", con);//创建数据适配器    dap.SelectCommand.CommandType =//设置命令为存储过程    CommandType.StoredProcedure;    DataSet ds = new DataSet();//创建数据集    dap.Fill(ds, "table");//填充数据集    dgv_Message.DataSource =//设置数据源    ds.Tables[0].D
    2022-12-26 00:25:03下载
    积分:1
  • C# 通过Linq实现元素操作符
    C# 通过Linq实现各种元素操作符,比如实现了以下操作符:   var first = pdt.First(p => p.p_price > 500);//返回单价大于500的第一个元素   Console.WriteLine("First操作符(" + first + ")");   var last = pdt.Last(p => p.p_price < 500);//返回单价小于500的最后一个元素   Console.WriteLine("Last操作符(" + last + ")");   var single = pdt.Single(p => p.p_id == 1);//返回产品id为1的元素   Console.WriteLine("Single操作符(" + single + ")");   var elementat = pdt.ElementAt(3);//返回第4个元素   Console.WriteLine("ElementAt操作符(" + elementat + ")");   Console.Read();
    2022-05-15 10:44:11下载
    积分:1
  • C#使用SqlDataAdapter对象的Fill方法填充DataSet
    C#使用SqlDataAdapter对象的Fill方法填充DataSet,具体是调用DataSet的Copy方法复制DataSet中的内容,完成填充的功能:   private void Form1_Load(object sender, EventArgs e)   {    //实例化SqlConnection变量conn,连接数据库    conn = new SqlConnection("server=.;database=db_14;uid=sa;pwd=");    //创建一个SqlCommand对象    SqlCommand cmd = new SqlCommand("select * from tb_test", conn);    SqlDataAdapter sda = new SqlDataAdapter();//创建一个SqlDataAdapter对象    //设置SqlDataAdapter对象的SelectCommand属性,设置执行的SQL语句    sda.SelectCommand = cmd;    ds = new DataSet(); //实例化DataSet    sda.Fill(ds, "test");//使用SqlDataAdapter对象的Fill方法填充DataSet    dataGridView1.DataSource = ds.Tables[0];//设置dataGridView1的数据源   }   private void button1_Click(object sender, EventArgs e)   {    DataSet ds1 = ds.Copy();//调用DataSet的Copy方法复制ds中的内容    dataGridView2.DataSource = ds1.Tables[0];//将ds1作为dataGridView2的数据源   }
    2022-11-04 09:50:03下载
    积分:1
  • C# 利用聚合函数SUM对销售额进行汇总
    C# 数据库版图书销售统计,利用聚合函数SUM对销售额进行汇总,包括销售总数量、销售总金额的统计:   /// 查询图书数量及金额信息   ///
    2022-01-31 08:31:12下载
    积分:1
  • C# 通过SqlReader HasRows判断指定表中是否有数据
    本例主要是判断指定的数据库数据表中是否有数据,这里使用了通过判断HasRows的返回值来判断,若返回值为真,则有数据,反之则无数据,最后用MessageBox.Show显示判断结果,完整的过程:   //实例化SqlConnection变量conn   SqlConnection conn = new SqlConnection("server=.;database=db_14;uid=sa;pwd=");   conn.Open();//打开连接   //创建一个SqlCommand对象   SqlCommand cmd = new SqlCommand("select * from " + textBox1.Text.Trim(), conn);   //使用ExecuteReade方法创建SqlDataReader对象   SqlDataReader sdr = cmd.ExecuteReader();   sdr.Read();//调用Read方法读取SqlDataReade   if (sdr.HasRows)//使用HasRows属性判断结果中是否有数据   {    MessageBox.Show("数据表中有值");//弹出提示信息   }   else   {    MessageBox.Show("数据表中没有任何数据");   }
    2022-02-07 01:03:03下载
    积分:1
  • C# 设置应用程序背景颜色
    C# 设置应用程序背景颜色,通过调用Windows调色板,来选取颜色,然后程序将颜色值赋值给窗口,此盒子可设置斜体的颜色值,运行效果如参考截图所示,核心代码请看以下代码片段:   private void Form1_Load(object sender, EventArgs e)   {//显示应用程序背景颜色    //先打开“Properties”,添加一个System.Drawing.Color类型的变量MyBackColor    this.BackColor = Properties.Settings.Default.MyBackColor;   }   private void button1_Click(object sender, EventArgs e)   {//设置应用程序背景颜色(在运行时编写用户设置)    if(this.colorDialog1.ShowDialog()==DialogResult.OK)    {    Properties.Settings.Default.MyBackColor = this.colorDialog1.Color;    Properties.Settings.Default.Save();    this.BackColor = Properties.Settings.Default.MyBackColor;    }   }
    2022-06-22 05:36:16下载
    积分:1
  • 螺丝服务端GMSV完整,可编译
    螺丝完全服务端源码,GMSV,linux下完美编译
    2022-05-31 17:22:32下载
    积分:1
  • .Net微信第三方公众平台,功能齐全,含文件,非编译版,可二次开发[.Net+Sql]
    一:功能齐全:九套首页模板,后台任意切换,微网站,微商城、微营销、幸运大转盘、刮刮卡、微相册等,所有文字图片后台均可修改除固定样式外。 二:订阅号、服务号都可以用:用户需自带“微信公众平台”,无论是“订阅号”还是“服务号”都可以使用!申请方面的问题尽管来咨询。 三:百分百满意服务:告诉客服你哪里不会操作,马上远程、操作、指导、演示.....我们承诺 ---只要客服不是在吃饭、上厕所、睡觉都会首先解答您出现的问题!适用于:公司形象建设、商店推广、产品推广、各城市微生活运营 .......功能菜单 该源码功能十分的全面,具体介绍如下: 1、菜单回复:微信自定义回复、关注时回复、默认回复、文本回复、图文回复、语音回复、 请求回复记录、LBS位置回复、自定义菜单。 2、微网站:微网站设置、模板管理、分类管理、文章管理、首页幻灯片、底部菜单导航、单页 信息、产品展示管理。 3、微商城:商城设置(商城设置、商城模板设置、支付方式设置、配送方式设置、订单参数设置)、 商品分类(商品类型和属性、商品分类管理)、商品管理(商品录入、出售中的商品、仓库中的商品)、 订单管理(待确认订单、全部订单)。 4、微营销系统:微活动(开心大转盘、刮刮卡、投票活动、世界杯竞猜)、营销工具(微相册、在线 预约、360全景图、喜帖、优惠券、团购)、点菜系统。 5、微信会员卡 四、功能介绍 1、菜单回复:关注时回复、默认回复、文本回复、图文回复、语音回复、请求回复、LBS回复。 2、自定义菜单:公众号自定义菜单设置 3、用户列表管理:获取关注公众号的账户信息进行管理 4、微官网:各种微官网模板可自行配置,头部幻灯片,底部,分类模块配置,内容配置 5、微商城:商城模板配置、产品分类管理、商品信息管理、商品录入、客户资源管理、订单管 理、物流配送方式设置 6、支付方式:财付通,支付宝 7、Ouath授权:飞信,人人,QQ,新浪,淘宝等,授权操作 8、微营销:大转盘、刮刮乐、投票、世界杯竞猜、微相册、在线预订、360全景、喜帖、优惠券 、微团购、点餐系统、会员卡等
    2023-07-06 05:50:22下载
    积分:1
  • c# 关闭窗口前确认 弹出提示
    与大家分享一个C#窗口编程小技巧,在用户关闭窗口前,弹出确认对话框,可有效防止用户误操作,误关闭窗口。本源码中是完整的实例下载 ,有基础的可参考以下的代码,快速实现本功能:   C#弹出关闭窗口的确认对话框,核心代码如下:   private void Form1_FormClosing(object sender, FormClosingEventArgs e)   {    DialogResult dr = MessageBox.Show("是否关闭窗体", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);    if (dr == DialogResult.Yes) //使用if语句判断是否单击“是”按钮    {    e.Cancel = false;//如果单击“是”按钮则关闭窗体    }    else//否则    {    e.Cancel = true;//不执行操作    }   }   当用户单击窗口右上角关闭按钮时,激活函数中的命令,弹出确认框。
    2022-01-25 15:52:19下载
    积分:1
  • 696516资源总数
  • 106442会员总数
  • 11今日下载