-
C# WPF把彩色图片转换为灰度图
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;
完整源码例子请在本页下载,运行效果截图如下图示。
- 2022-02-01 21:42:57下载
- 积分:1
-
ATK-ESP8266 WIFI模块资料
1、ATK-ESP8266 WIFI 模块简介 ATK-ESP8266 是 ALIENTEK 推出的一款高性能的 UART-WiFi(串口-无线)模块,ATK-ESP8266 板载ai-thinker公司的ESP8266模块,该模块通过 FCC,CE认证,可直接用于产品出口欧美地区。 ATK-ESP8266模块采用串口(LVTTL)与MCU(或其他串口设备)通信,内置 TCP/IP协议栈,能够实现串口与WIFI之间的转换。 通过 ATK-ESP8266 模块,传统的串口设备只是需要简单的串口配置,即可通过网络(WIFI)传输自己的数据。 ATK-ESP8266 模块支持 LVTTL串口,兼容3.3V和5V单片机系统,可以很方便的与你的产品进行连接。模块支持串口转 WIFI STA、串口转 AP 和WIFI STA+WIFI AP 的模式,从而快速构建串口-WIFI数据传输方案,方便你的设备使用互联网传输数据。 ATK-ESP8266 29mm*19mm 6 2.54mm
- 2022-08-13 08:01:09下载
- 积分:1
-
TMS320C6748各个接口外设所有标准源码程序 (亲测好使)
TMS320C6748各个接口外设所有标准源码程序 (亲测好使)
- 2022-07-16 14:39:18下载
- 积分:1
-
C# 修改注册表键值禁止修改IE浏览器主页
C# 通过修改注册表键值的方法实现禁止/允许修改IE浏览器主页,这个方法是通过注册表来修改,通过改变注册表相关键值来打开和关闭某项功能,设置HomePage键值为1,以便禁止修改IE主页,当设置HomePage键值为0,以便允许修改IE主页。主要操作的是注册表的SoftWarePoliciesMicrosoftInternet ExplorerControl Panel键值。
- 2022-01-22 04:38:33下载
- 积分:1
-
C# AVG、SUM、COUNT、SqlHelper等函数用法示例
本源码主要是一些C#数据库操作函数的示例,比如使用函数AVG计算数值字段平均值、使用函数SUM计算数值字段累加和
使用函数COUNT统计数据库记录数、使用SqlHelper查询数据库记录、使用SqlHelper获取聚合函数值、使用SqlHelper增加数据库记录等,每一个例子都有详细的源代码。
实现这些功能需要调用Microsoft.ApplicationBlocks.Data.dll,DataAccessApplicationBlock.msi已打包在源码包中。
程序运行效果如下图示,单击对应按钮即可查看对应的功能演示,测试前请先连接好数据库。
- 2022-10-25 05:55:02下载
- 积分:1
-
C# 指定主机和端口发消息的实现
Visual C# 指定主机和端口发消息的实现例子,支持和远程主机发送消息,本例子可学习到很多实用的网络方法的用法,以下代码是本功能的核心实现:
richTextBox1.Text = string.Empty;
//实例化UdpClient对象
UdpClient udpclient = new UdpClient(Convert.ToInt32(textBox2.Text));
//调用UdpClient对象的Connect建立默认远程主机
udpclient.Connect(textBox1.Text, Convert.ToInt32(textBox2.Text));
//定义一个字节数组,用来存放发送到远程主机的信息
Byte[] sendBytes = Encoding.Default.GetBytes(textBox3.Text);
//调用UdpClient对象的Send方法将Udp数据报发送到远程主机
udpclient.Send(sendBytes, sendBytes.Length);
//实例化IPEndPoint对象,用来显示响应主机的标识
IPEndPoint ipendpoint = new IPEndPoint(IPAddress.Any, 0);
//调用UdpClient对象的Receive方法获得从远程主机返回的Udp数据报
Byte[] receiveBytes = udpclient.Receive(ref ipendpoint);
//将获得的Udp数据报转换为字符串形式
string returnData = Encoding.Default.GetString(receiveBytes);
richTextBox1.Text = "接收到的信息:" + returnData.ToString();
//使用IPEndPoint对象的Address和Port属性获得响应主机的IP地址和端口号
richTextBox1.Text += "
这条信息来自主机" + ipendpoint.Address.ToString()
+ "上的" + ipendpoint.Port.ToString() + "端口";
//关闭UdpClient连接
- 2022-02-10 10:21:19下载
- 积分:1
-
STM32F1的SPWM逆变器源码
#include "SPWM.h"
#include "led.h"
#include "usart.h"
u16 TimerPeriod = 7200;
u16 DutyFactor = 50;
void TIM_Int_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
NVIC_InitTypeDef NVIC_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB, ENABLE);
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4 | RCC_APB1Periph_TIM3,ENABLE); //时钟使能
/* GPIOA配置:通道PA.6和PA.7作为输出引脚*/
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_7;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
&nbs
- 2022-07-26 17:50:34下载
- 积分:1
-
C# 为文字创建渐变色的下划线
C# 为文字创建渐变色的下划线,放大后还是很漂亮的,下划线变成了点状的,而且是颜色是渐变的,下面介绍实现这一功能的代码,给字符串创建渐变色下划线,核心代码如下:
TextDecoration MyUnderline = new TextDecoration();
Pen MyPen = new Pen();
MyPen.Brush = new LinearGradientBrush(Colors.Green,
Colors.Blue, new Point(0, 0.5), new Point(1, 0.5));
MyPen.Brush.Opacity = 0.5;
MyPen.Thickness = 1.5;
MyPen.DashStyle = DashStyles.Dash;
MyUnderline.Pen = MyPen;
MyUnderline.PenThicknessUnit = TextDecorationUnit.FontRecommended;
TextDecorationCollection MyCollection = new TextDecorationCollection();
MyCollection.Add(MyUnderline);
this.textBlock1.Text = "中华人民共和国";//自定义要显示下划线的文字
this.textBlock1.FontSize = 48;
this.textBlock1.TextDecorations = MyCollection;
需要请下载完整源码。运行效果图如下。
- 2022-01-22 05:14:06下载
- 积分: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
-
C# 使用Socket连接远程主机的例子
C# UseSocket例子,使用Socket连接远程主机,其核心是使用Socket的构造函数实例化一个Socket对象,用来连接远程主机,再具体就是调用Connect方法连接远程主机,在成功连接主机后,调用自定义方法ConnectSocket,使用指定的服务器名和端口号实例化一个Socket对象,将请求发送到连接的服务器,从绑定的Socket接收数据,将接收到的数据转换为字符串类型,调用自定义方法SocketSendReceive获取指定主机的主页面内容。
远程连接部分的实现如下:
//使用指定的IP地址和端口号实例化IPEndPoint对象
IPEndPoint IPEPoint = new IPEndPoint(address, port);
//使用Socket的构造函数实例化一个Socket对象,以便用来连接远程主机
Socket newSocket = new Socket(IPEPoint.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
newSocket.Connect(IPEPoint); //调用Connect方法连接远程主机
在创建远程连接之前,要循环遍历得到的IP地址列表。
- 2022-04-29 10:57:31下载
- 积分:1