-
C# WPF实现图片浮雕、凹凸的图像效果
Visual C# WPF实现图片浮雕、凹凸的图像效果,看上去很有雕刻的效果,这个功能对于熟悉PS的朋友,可能不陌生,用C#的WPF技术,可以轻松实现类似效果,只是说法不一样,在本例中,叫做“凹凸位图特效”,本代码在功能实现上,分为全部实现和局部实现,代码参考如下:
private void button1_Click(object sender, RoutedEventArgs e)
{//凹凸位图特效全部作用于图像
this.image1.BitmapEffectInput = null;
var MyEffect = new System.Windows.Media.Effects.EmbossBitmapEffect();
MyEffect.Relief = 0.8;
MyEffect.LightAngle =320;
this.image1.BitmapEffect = MyEffect;
}
private void button2_Click(object sender, RoutedEventArgs e)
{//凹凸位图特效部分作用于图像
var MyEffect = new System.Windows.Media.Effects.EmbossBitmapEffect();
MyEffect.Relief = 0.8;
MyEffect.LightAngle = 320;
this.image1.BitmapEffect = MyEffect;
var MyInput = new System.Windows.Media.Effects.BitmapEffectInput();
MyInput.AreaToApplyEffect = new Rect(.25, .25, .50, .50);
MyInput.AreaToApplyEffectUnits = System.Windows.Media.BrushMappingMode.RelativeToBoundingBox;
this.image1.BitmapEffectInput= MyInput;
}
完整
- 2022-02-20 09:13:59下载
- 积分:1
-
Visual C# LINQ转换为一对多字典
Visual C# 转换为一对多字典,构造泛型列表,使用LINQ查找用户代码小于3的列表,此时的query变量的类型是IEnumerable类型,使用ToLookup方法将query转换为一对多字典类型:
ILookup userLookup = query.ToLookup(itm => itm.UserCode);
label1.Text = "ILookup的结果是:
";
foreach (var user in userLookup)//遍历查询结果
{
label1.Text += user.Key;//显示主键
label1.Text += " ";
foreach (var user2 in user)//遍历所有值
{
label1.Text += user2.UserName + " , ";//显示键值
}
label1.Text += "
";
}
- 2023-05-18 03:20:03下载
- 积分:1
-
Visual C# 定制个性化的winForm窗体
Visual C# 定制个性化的winForm窗体,自定义窗体的按钮和标题栏,最终运行效果如示例截图所示,看一看窗体的标题 栏完全和默认的风格不一样了,更接近于Windows8的扁平化风格了,呵呵,或许只是我的个人感觉。右侧是一个大按钮,总之这个窗口中的元素都是自定义的,不是默认的,对于以后自定义个性化的窗口分享一些技巧。
- 2022-04-10 03:00:12下载
- 积分:1
-
STM32f103C8T6 TIM3 PWM源码
STM32f103C8T6 TIM3 PWM源码 四路PWM输出,亲测可用
编译软件:MDK4.53
硬件平台:STM32开发板(主芯片stm32f103c8t6)
仿真器:JLINK
- 2022-07-11 02:31:25下载
- 积分:1
-
C# 文件排序、查找文件、正则表达式等操作实例集
C# 文件排序等操作实例集,包括:按照文件修改日期排序、按照文件尺寸大小排序、按照时间范围查找文件、查找名称相同的文件、使用正则表达式设置查询条件、按照类型和类别查找日志事件、按照类型和类别查找日志事件、获取单个进程使用的最大物理内存。。
- 2022-08-19 05:17:01下载
- 积分:1
-
Visual C# 读取音频文件并复制到剪贴板
粘贴剪贴板音频数据并播放,Visual C# 读取音频文件并复制到剪贴板,此外还提供了清空剪贴板上音频数据的功能。下面我们分别来看这几个重点功能具体是如何实现的,代码如下:
private void Button1_Click(object sender, EventArgs e)
{//读取音频文件并复制到剪贴板
Byte[] MyData=System.IO.File.ReadAllBytes("WindowsXP.wav");
Clipboard.SetAudio(MyData);
}
private void Button2_Click(object sender, EventArgs e)
{//粘贴剪贴板音频数据并播放
object MyData =Clipboard.GetData(DataFormats.WaveAudio);
System.Media.SoundPlayer MyPlayer=new System.Media.SoundPlayer();
MyPlayer.Stream = (System.IO.Stream)MyData;
MyPlayer.Play();
}
private void Button3_Click(object sender, EventArgs e)
{//清空剪贴板上的音频数据
Clipboard.Clear();
}
需要完整的可编译源代码项目,请下载本源码。
- 2022-01-25 17:41:37下载
- 积分:1
-
C# 仿微信大部分功能含登录扫描二维码的源代码
C# 版网页微信源代码,仿出了微信的大部分功能,加载登录微信需要扫描二维码,不过使用了较多的微信类库,微信主界面登录在WeChat_Desktop_App文件夹中。下载源码后请重新编译本源码,生成exe运行,界面如截图所示。
本C#微信项目,将微信的各个功能模块单独来开发,存放于各个文件夹中,比如登录模块、主界面模板、日志信息写入、文件上传下载日志和资源文件等,测试中发现可以登录微信,但是有些功能受测试条件限制,没能运行起来,大家下载源码后自己研究吧,有利于学习C#环境下的各个微信接口的使用。
- 2023-04-27 07:20:05下载
- 积分:1
-
C# 使用几何图形剪辑图像控件中的部分区域
C# 使用几何图形剪辑图像控件中的部分区域,类似于图片遮罩的效果,本例中,把一张图片裁切成椭圆形,图片显示在椭圆的底部,可随窗口的改变自动改变大校
private void Window_Loaded(object sender, RoutedEventArgs e)
{//使用几何图形剪辑图像控件中的部分区域
var MyClip = new EllipseGeometry();
MyClip.RadiusX = 120;
MyClip.RadiusY = 80;
MyClip.Center = new Point(145, 110);
this.image1.Clip = MyClip;
}
- 2022-11-04 14:00:03下载
- 积分:1
-
C# 读取SQL Server数据库结构,包括表结构
Visual C# 2012读取SQL Server数据库结构,在SQL2000中可以顺利通过测试,获取到所有的数据库和指定库的数据表,本程序主要针对用户表进行操作,在进行操作时要求用户名为sa密码为空。
- 2022-03-15 16:11:23下载
- 积分:1
-
C#以二进制格式打开和保存文件
C#使用BinaryWriter、BinaryReader对象分别保存和读取二进制文件,程序分两部分,先来看第一部分:
C#以二进制格式保存文件:设置保存文件的格式:
saveFileDialog1.Filter = "二进制文件(*.dat)|*.dat";
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
//使用“另存为”对话框中输入的文件名实例化FileStream对象
FileStream myStream = new FileStream(saveFileDialog1.FileName, FileMode.OpenOrCreate, FileAccess.ReadWrite);
//使用FileStream对象实例化BinaryWriter二进制写入流对象
BinaryWriter myWriter = new BinaryWriter(myStream);
//以二进制方式向创建的文件中写入内容
myWriter.Write(textBox1.Text);
//关闭当前二进制写入流
myWriter.Close();
//关闭当前文件流
myStream.Close();
textBox1.Text = string.Empty;
}
打开文件时同样也是以二进制来打开读取文件内容:
//设置打开文件的格式
openFileDialog1.Filter = "二进制文件(*.dat)|*.dat";
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
textBox1.Text = string.Empty;
//使用“打开”对话框中选择的文件名实例化FileStream对象
FileStream myStream = new FileStream(openFileDialog1.FileName, FileMode.Open, FileAccess.Read);
//使用FileStream对象实例化BinaryRea
- 2022-02-14 18:03:07下载
- 积分:1