登录
首页 » C#源码 » C# WPF实现图片浮雕、凹凸的图像效果

C# WPF实现图片浮雕、凹凸的图像效果

于 2022-02-20 发布 文件大小:287.04 kB
0 226
下载积分: 2 下载次数: 1

代码说明:

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;   }   完整

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

发表评论

0 个回复

  • C# 最经典 简单的progressBar进度条用法示例
    这是一个大家都熟悉的实用技巧,用C#制作进度条功能,本代码演示了最简单,且实现方法简单的progressBar进度条用法示例,   单击按钮后,开始演示进度条效果,这部分代码写在按钮事件中:   progressBar1.Value = 0;//设置进度条的初始值   progressBar1.Minimum = 0;//设置progressBar1控件的Minimum值为0   progressBar1.Maximum = 500;//设置progressBar1的Maximum值为500   progressBar1.Step = 1;//设置progressBar1的增值为1   for (int i = 0; i < 500; i++)//调用for语句循环递增   {    progressBar1.PerformStep();//使用PerformStep方法按Step值递增    textBox1.Text = "进度值:" + progressBar1.Value.ToString();   }
    2022-08-18 01:25:55下载
    积分:1
  • C# SQL语句查询指定区间内的数据库内容
    C# 查询数据库信息,具体到本例中,是查询第10到第20名的数据,这在平时的数据库运用中,十分实用,比如查询指定区间内的成绩、销售业绩等,将查询出的数据给予一定的等级,本程序查询到的数据将返回DataTable对象:   string P_Str_ConnectionStr = string.Format(//创建数据库连接字符串    @"server=WIN-GI7E47AND9RLS;database=db_TomeTwo;uid=sa;pwd=");   string P_Str_SqlStr = string.Format(//创建SQL查询字符串    @"SELECT TOP 10 * FROM (SELECT TOP 20 * FROM tb_Grade ORDER BY 总分 DESC) AS st ORDER BY 总分 ASC");   SqlDataAdapter P_SqlDataAdapter = new SqlDataAdapter(//创建数据适配器    P_Str_SqlStr, P_Str_ConnectionStr);   DataTable P_dt = new DataTable();//创建数据表   P_SqlDataAdapter.Fill(P_dt);//填充数据表   return P_dt;//返回数据表
    2022-11-06 22:25:03下载
    积分:1
  • C# 获取本地打印服务器后台文件的路径
    Visual C# MyWinWPF.rar,核心代码分享如下:   private void button1_Click(object sender, RoutedEventArgs e)   {//获取本地打印服务器后台文件的路径    var MyPrintServer = new System.Printing.LocalPrintServer();    string MyInfo = "本地打印服务器后台文件的路径是:" + MyPrintServer.DefaultSpoolDirectory;    MessageBox.Show(MyInfo, "信息提示", MessageBoxButton.OK);   }
    2022-01-23 11:13:33下载
    积分:1
  • C# WPF 文字动态旋转动画
    C# WPF 文字动态旋转动画,这个是动态的,文字以动画方式旋转360度,无缝旋转,WPF制作动画效果还是挺方便的,这个例子十分简单,文字的旋转也可变通为图片的旋转。运行效果图如下示。
    2022-11-09 17:45:04下载
    积分:1
  • C# WPF设置图片做为程序窗口背景
    C# WPF设置程序窗口背景图片的例子,调用外部一张图片,作为程序窗口的背景,这是一个挺基础的C#窗口设计制作小例子。本程序通过定义BitmapImage和ImageBrush()来实现,有兴趣的参见以下几行代码:   设置WPF程序的背景图像代码如下:   var MyImage = new BitmapImage(new Uri("J001.jpg", UriKind.Relative));   var MyBrush = new ImageBrush();   MyBrush.ImageSource = MyImage;   this.Background = MyBrush;   本例的运行效果请参见下图示。
    2022-02-28 22:19:19下载
    积分:1
  • C# LockThread()锁定线程以实现线程同步
    C# 使用LockThread()方法实现线程监视监控的例子,锁定线程以实现线程同步,实现方法比较简单,可参考以下的代码,完整的代码可在本网页下载:   static void Main(string[] args)   {    Program myProgram = new Program();//实例化类对象    myProgram.LockThread(); //调用锁定线程方法    Console.ReadLine();   }   void LockThread()   {    Monitor.Enter(this);//锁定当前线程    Console.WriteLine("锁定线程以实现线程同步");    Monitor.Exit(this); //释放当前线程   }
    2022-02-20 05:30:05下载
    积分:1
  • C#结合数据库生成饼形图表
    C#结合数据库生成饼形图表,这种图表是常见的数据统计图表,饼形图、柱状图等使用十分广泛,本程序演示了C#从数据库中读取出数据,然后交给饼形图生成模块,加载数据生成饼形图表。   //清空背景色   g.Clear(Color.White);   Pen pen1 = new Pen(Color.Red);   Brush brush1 = new SolidBrush(Color.PowderBlue);   Brush brush2 = new SolidBrush(Color.Blue);   Brush brush3 = new SolidBrush(Color.Wheat);   Brush brush4 = new SolidBrush(Color.Orange);   Font font1 = new Font("Courier New", 16, FontStyle.Bold);   Font font2 = new Font("Courier New", 8);   g.FillRectangle(brush1, 0, 0, width, height); //绘制背景图   g.DrawString("公司员工年龄比例饼形图", font1, brush2, new Point(80, 20)); //书写标题   int piex = 100, piey = 60, piew = 200, pieh = 200;   //20-25岁员工在圆中分配的角度   float angle1 = Convert.ToSingle((360 / Convert.ToSingle(Sum)) * Convert.ToSingle(man20to25));   //26-30岁员工在圆中分配的角度   float angle2 = Convert.ToSingle((360 / Convert.ToSingle(Sum)) * Convert.ToSingle(man26to30));   //31-40岁员工在圆中分配的角度   float angle3 = Convert.ToSingle((360 / Convert.ToSingle(Sum)) * Convert.ToSingle(man31to40));   g.FillPie(brush2
    2022-04-12 00:35:45下载
    积分:1
  • C# 创建一个泛型接口
    C# 创建一个泛型接口的例子,创建一个泛型接口的代码和方法如下:   public interface IGenericInterface   {    T CreateInstance(); //接口中调用CreateInstance方法   }   //实现上面泛型接口的泛型类   //派生约束where T : TI(T要继承自TI)   //构造函数约束where T : new()(T可以实例化)   public class Factory : IGenericInterface where T : TI, new()   {    public TI CreateInstance()//创建一个公共方法CreateInstance    {    return new T();    }   }   class Program   {    static void Main(string[] args)    {    //实例化接口    IGenericInterface factory =   Factory();    //输出指定泛型的类型    Console.WriteLine(factory.CreateInstance().GetType().ToString());    Console.ReadLine();    }   }
    2022-03-11 00:59:39下载
    积分:1
  • C# 在LINQ to XML中将XML文件转换为CSV文件的例子
    C# 在LINQ to XML中将XML文件转换为CSV文件的例子源码,转换的结果请参考如图所示:   private void button1_Click(object sender, EventArgs e)   {//在LINQ to XML中将XML文件转换为CSV文件    TextReader MyReader = new StringReader(this.textBox1.Text);    XElement MyCustomers= XElement.Load(MyReader);    MyReader.Close();    string MyInfo =    (from MyElement in MyCustomers.Elements("客户")    select    String.Format("{0},{1},{2},{3},{4}",    (string)MyElement.Element("客户ID"),    (string)MyElement.Element("公司名称"),    (string)MyElement.Element("城市") + (string)MyElement.Element("地址"),    (string)MyElement.Element("联系人姓名"),    Environment.NewLine    )    ).Take(10).Aggregate(new StringBuilder(),(MySubString, MyString)=>MySubString.Append(MyString),MySubString=>MySubString.ToString());    MessageBox.Show(MyInfo, "信息提示");   }
    2023-04-08 15:00:04下载
    积分:1
  • C# 笔触画图 打开和保存ink墨迹文件
    C# 笔触画图 打开和保存ink墨迹文件的实例,本程序主要是演示用C#打开ink格式的文件,并且进行文件编辑,或者画图新建保存为ink文件,打开墨迹文件后,可选择右侧列表的墨迹颜色,绘制图案,然后保存到ink文件中。
    2023-07-05 03:25:03下载
    积分:1
  • 696518资源总数
  • 106161会员总数
  • 5今日下载