【WIN10】WIN2D——圖層
先看效果:
效果還是不錯滴。
這功能就有點像PS的圖層和蒙板了。
簡單的添加一個層:
- private void draw_mb(CanvasControl sender, CanvasDrawingSession drawingSession)
- {
- draw_normal(sender, drawingSession);
- using (drawingSession.CreateLayer())
- {
- drawingSession.FillRectangle(, , oriImage_.SizeInPixels.Width, oriImage_.SizeInPixels.Height, Color.FromArgb(, , , ));
- }
- }
注意:一定要使用using,否則會出錯!!!!
第二效果呢,先畫個模糊背景,再加一個圓就OK了,圓使用圖片填充,就可以顯示清晰的圓形圖片了~~~~~~
- private void draw_mb2(CanvasControl sender, CanvasDrawingSession drawingSession)
- {
- Microsoft.Graphics.Canvas.Effects.GaussianBlurEffect gaussianEffect = new Microsoft.Graphics.Canvas.Effects.GaussianBlurEffect();
- gaussianEffect.BlurAmount = ;
- gaussianEffect.Source = oriImage_;
- drawingSession.DrawImage(gaussianEffect);
- float width = oriImage_.SizeInPixels.Width;
- float height = oriImage_.SizeInPixels.Height;
- using (drawingSession.CreateLayer())
- {
- Microsoft.Graphics.Canvas.Brushes.CanvasImageBrush br = new Microsoft.Graphics.Canvas.Brushes.CanvasImageBrush(sender);
- br.Image = oriImage_;
- drawingSession.FillCircle(new System.Numerics.Vector2(width / , height / -), , br);
- }
- }
第三個效果,也是相當簡單啦,第二個效果都出來了,第三個效果簡直就是複製粘貼那麼簡單:
- private void draw_mosaic(CanvasControl sender, CanvasDrawingSession drawingSession)
- {
- draw_normal(sender, drawingSession);
- float width = oriImage_.SizeInPixels.Width;
- float height = oriImage_.SizeInPixels.Height;
- using (drawingSession.CreateLayer(1f))
- {
- Microsoft.Graphics.Canvas.Effects.GaussianBlurEffect gaussianEffect = new Microsoft.Graphics.Canvas.Effects.GaussianBlurEffect();
- gaussianEffect.BlurAmount = ;
- gaussianEffect.Source = oriImage_;
- Microsoft.Graphics.Canvas.Brushes.CanvasImageBrush br = new Microsoft.Graphics.Canvas.Brushes.CanvasImageBrush(sender);
- br.Image = gaussianEffect;
- br.SourceRectangle = new Rect(, , width, height);
- drawingSession.FillCircle(new System.Numerics.Vector2(width / , height / - ), , br);
- }
- }
PS:本來想用微軟的“微軟牛津計劃”的面部識別技術進行動態識別人臉。。。但是那個庫需要連網,而且不牆的話,網速不是很理想,所以就放棄了,使用固定的座標好了。
【WIN10】WIN2D——圖層的更多相关文章
- 【WIN10】WIN2D——圖像處理
源碼下載:http://yunpan.cn/c3iNuHFFAcr8h 访问密码 8e48 還是先來看下截圖: 實現了幾個效果:放大.縮小.旋轉.左右翻轉.上下翻轉,亮度變化.灰度圖.對比度.高斯模 ...
- Android 繪圖白板元件,有畫筆和板擦的功能 (转)
package com.example.drawboard; import java.util.ArrayList; import java.util.List; import android.con ...
- IOS APP配置.plist汇总(转自coolweather )
IOS APP配置.plist汇总(转自coolweather ) 此文转自http://www.cocoachina.com/bbs/read.php?tid=89684&page=1 作者 ...
- [转]JSOM绘制地图区块及航道路径
From :http://support.sailstech.com/kb/c73fd2405d79911253e568ccdc69256dc7c8fb5c/josm 步驟一: 使用JOSM繪製地圖區 ...
- PCB成型製程介紹
PCB成型製程在電子構裝中所扮演的角色 下圖是電腦主機的內部組成 我們將以插在主機板上的一片 USB擴充卡來說明PCB成型製 程在電子構裝中所扮演的角色 PCB成型製程的子製程 USB擴充卡要插入主機 ...
- MFC如何在树形图边上添加动态小地图
MFC如何在树形图边上添加动态小地图 https://www.jianshu.com/p/7b1d828bf5db (简书无法识别缩进的...早知道先在博客园发了) (转载请注明出处) 作者:梦镜谷雨 ...
- info.plist的选项含义
1. Application does not run in background(鍵名:UIApplicationExistsOnSuspend)自從iOS4.0之後,當你在應用程式執行的時 ...
- 色码表 Color code table
最近打算更新设计博客页面,需要用到CSS色码表,查了一些资料现转载此处以备以后使用,点击此处查看原文,另外还发现了几个不错的网站: color-hex HTML颜色代码 色碼表 色碼表英文為 Colo ...
- thinkphp5ajax分頁&&搜索後分頁
//控制器層 //分頁 public function list_january_table(){ //設置當前頁 $page = input("post.page") ? inp ...
随机推荐
- net.sf.json------json解析
下载地址 [plain] view plain copy 本次使用版本:http://sourceforge.net/projects/json-lib/files/json-lib/json-l ...
- bzoj千题计划180:bzoj4411: [Usaco2016 Feb]Load balancing
http://www.lydsy.com/JudgeOnline/problem.php?id=4411 用树状数组维护扫描线 一个树状数组维护扫描线之上的y<=i点,另一个维护扫描线之下y&l ...
- My latest news
2018.04.12 0:01 本站点停止更新,启用0x7c00.vip站点. 2018.03.23 复试报道(心态不太平稳).每一行的深入都是需要知识的积累和时间的沉淀,就像学法律.计算机等等.愿 ...
- gdb初步窥探
本文是通过学习左耳朵皓帝的文章,详见:http://blog.csdn.net/haoel 1.使用gdb gdb主要是用来调试c和c++程序,首先在编译前我们先把调试信息加到可执行程序当中,使用参数 ...
- 图的最短路径-----------SPFA算法详解(TjuOj2831_Wormholes)
这次整理了一下SPFA算法,首先相比Dijkstra算法,SPFA可以处理带有负权变的图.(个人认为原因是SPFA在进行松弛操作时可以对某一条边重复进行松弛,如果存在负权边,在多次松弛某边时可以更新该 ...
- CF359B Permutation (构造)
CF359B Permutation \(solution:\) 作为一道构造题,这题也十分符合构造的一些通性----(找到一些规律,然后无脑循环). 构造一个长度为 \(2n\) 的排列 \(a\) ...
- 关于v4包的Fragment过渡动画的事件监听无响应问题解决
项目中部分功能模块采用了单Activity+多Fragment模式,当Fragment切换时,需要在过渡动画执行完后做一些操作,通常就是在自己封装的FragmentBase中重写onCreateAni ...
- CMD常用命令(一)
常用命令大全 net>user heibai lovechina /add 加一个heibai的用户密码为lovechina net>localgroup Administrators h ...
- 学习mysql replication gitd
- stdole.dll
迁移至win1064位后,发布提示stdole.dll错误,查找半天,是因为引用了office组件问题,将其注释掉.解决.因为此块代码无用,但是对有用的代码如何解决发布问题,未找到合适解决方法.