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

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

于 2022-02-01 发布 文件大小:740.28 kB
0 61
下载积分: 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# 获取数组指定位置的元素,以下代码为核心代码,分享如下:   private void Frm_Main_Load(object sender, EventArgs e)   {    List ints = new List { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };    int result = ints.ElementAt(3);//获取指定位置的元素    //输出查询结果    label1.Text = "数据源:ints={0,1,2,3,4,5,6,7,8,9 }";//数据源    label2.Text = "查询表达式:ElementAt(3)";//查询表达式/操作    label3.Text = "查询结果:"+result.ToString();//查询结果   }
    2022-03-10 14:16:14下载
    积分:1
  • C# 启动外部计算器计算数据
    C# 启动外部计算器计算数据,private void button1_Click(object sender, EventArgs e)   {//启动计算器计算数据(从当前程序向其他程序发送键击数据)    ProcessStartInfo MyStartInfo = new ProcessStartInfo();    MyStartInfo.FileName = "Calc.exe";    Process MyProcess = new Process();    MyProcess.StartInfo = MyStartInfo;    MyProcess.Start();    System.Threading.Thread.Sleep(100);    IntPtr MyHandle = FindWindow("SciCalc", "计算器");    if (MyHandle == IntPtr.Zero)    {    MessageBox.Show("计算器程序没有运行","信息提示",MessageBoxButtons.OK);    return;    }    SetForegroundWindow(MyHandle);    SendKeys.SendWait("88");    SendKeys.SendWait("*");    SendKeys.SendWait("8");    SendKeys.SendWait("=");   }
    2023-04-17 08:10:03下载
    积分:1
  • C# 填充和格式化DataGridView单元格数据
    C# 填充和格式化DataGridView单元格数据,这个例子对C#操作数据来说,是很有必要掌握的,特别是DataGridView控件的使用,很普遍,本示例主要演示了两个dataGrid组件功能,一是格式化DataGridView控件的指定单元格,二是填充DataGridView控件(dataGridView1)数据,下面来看C#填充DataGridView控件数据的代码:   var MyConnectionString ="Data Source=.SQLEXPRESS;Initial Catalog=Northwind;Integrated Security=True";   var MySQL = "Select OrderID,RequiredDate,ShippedDate,ShipVia From Orders";   var MyConnection = new System.Data.SqlClient.SqlConnection(MyConnectionString);   var MyAdapter = new System.Data.SqlClient.SqlDataAdapter(MySQL, MyConnection);   var MyTable = new DataTable();   MyAdapter.Fill(MyTable);   this.dataGridView1.DataSource = MyTable;   运行效果如下图所示,更多代码请下载源码包编译运行吧。
    2022-05-07 18:45:47下载
    积分:1
  • C# 禁止鼠标左键单击的实现
    C# 禁止鼠标左键单击,附上例子源码,禁止后将不响应鼠标左键消息,当然也可恢复鼠标左键,直接关闭本程序即可恢复,实现方法也很简单,看如下代码:   private void button1_Click(object sender, EventArgs e)   {//禁止鼠标左键单击    Application.AddMessageFilter(this);    MessageBox.Show("鼠标左键已经被禁止,请用Tab键执行操作!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information);   }   private void button2_Click(object sender, EventArgs e)   {//允许鼠标左键单击    Application.RemoveMessageFilter(this);    MessageBox.Show("鼠标左键已经被解禁,可以执行操作!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information);   }   public bool PreFilterMessage(ref System.Windows.Forms.Message MySystemMessage)   {//不响应鼠标左键消息    if (MySystemMessage.Msg >= 513 && MySystemMessage.Msg
    2022-03-09 09:45:43下载
    积分:1
  • C# WPF改变窗口文字的浏览模式
    C#改变 文字的浏览模式,可以让一段文字按照单页、双页、滚动这三种模式显示,在每一种视图页面中,通过拖动滑块还可以改变文字的大小,如图所示的运行效果,请点击窗口下边的示例图标,以演示对应功能,请注意窗口中的显示的这段话:   “本书所有实例程序在配套光盘中均有完整的源代码,真正实现所见即所得,所学即所用。   本书适合使用Microsoft Visual Studio 2008的初、中级用户通过C#语言以Step by step方式深入浅出地学习.NET 3.5的最新编程技术”。
    2022-02-21 06:36:28下载
    积分:1
  • C# 只允许运行一个程序实例的方法及代
    Visual C# 设置程序只能运行一个实例,当用户再次打开同一窗口时,会弹出提示,告诉你本程序已经在运行了,具体的实现代码参考如下:   设置程序只能运行一个实例:   var MyModuleName = System.Diagnostics.Process.GetCurrentProcess().MainModule.ModuleName;   var MyProcessName =System.IO.Path.GetFileNameWithoutExtension(MyModuleName);   System.Diagnostics.Process[] MyProcesses = System.Diagnostics.Process.GetProcessesByName(MyProcessName);   if (MyProcesses.Length > 1)   {    MessageBox.Show("程序已经运行!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Error);    this.Close();   }
    2023-03-23 03:40:03下载
    积分:1
  • 中国象棋
    中国象棋源代码,使用Visual c++编写,对喜欢象棋的朋友,可以研究一下算法,具有很好的参考价值~
    2022-06-03 11:54:15下载
    积分:1
  • C# 使用 tabControl创建窗体TAB效果
    C# 使用 tabControl创建窗体TAB选项卡效果,大家都熟悉的功能,这个例子比较基础,面向C#的初学者,下面是实现本功能的核心代码:   private void Form1_Load(object sender, EventArgs e)   {    tabControl1.ImageList = imageList1;    tabPage1.ImageIndex = 0;    tabPage1.Text = "选项卡1";    tabPage2.ImageIndex = 0;    tabPage2.Text = "选项卡2";   }   本TAB运行效果请参见截图,完整源码请下载。
    2022-08-22 06:09:52下载
    积分:1
  • C# TXT 文本文件操作函数集代
    Visual C# TXT 文本文件操作函数集代码,可演示以下功能:在文本中查询包含一组指定单词的句子、查找两个文本文件中的不同句子、查找两个文本文件中的相同句子、在CSV文本文件中计算单列平均值、在CSV文本文件中计算多列平均值、将两个不同文本文件联接成新文件。
    2023-06-02 12:05:03下载
    积分:1
  • C# 为窗体控件添加浮动信息框
    C# 为窗体控件添加浮动的帮助信息框,private void Form1_Load(object sender, EventArgs e)   {//为窗体控件添加浮动的帮助信息框    //在标题栏上显示帮助按钮    this.HelpButton = true;    this.MaximizeBox = false;    this.MinimizeBox = false;    //指定显示指定控件的帮助信息    this.helpProvider1.SetShowHelp(this.textBox1, true);    //指定与指定的控件关联的帮助字符串    this.helpProvider1.SetHelpString(this.textBox1, "包括科目编码和科目名称");    this.helpProvider1.SetShowHelp(this.textBox2, true);    this.helpProvider1.SetHelpString(this.textBox2, "输入数据包括分节号");    this.helpProvider1.SetShowHelp(this.textBox3, true);    this.helpProvider1.SetHelpString(this.textBox3, "输入数据包括分节号");    this.helpProvider1.SetShowHelp(this.textBox4, true);    this.helpProvider1.SetHelpString(this.textBox4, "输入数据包括分节号");    this.helpProvider1.SetShowHelp(this.textBox5, true);    this.helpProvider1.SetHelpString(this.textBox5, "期末余额=期初余额+本期发生额");   }
    2023-03-05 04:10:04下载
    积分:1
  • 696524资源总数
  • 103939会员总数
  • 12今日下载