转载请注明出处:http://www.cnblogs.com/Ray1024

一、概述

Direct2D是一个基于Direct3D的2D图形API,可以利用硬件加速特性来提供高性能高质量的2D渲染。但是使用过老版本Direct2D的朋友应该都会发现,如果你想使用它来实现2D图形效果很困难,只能用来做一些基本的绘制和变换。但是最近看了msdn上面Direct2D有了1.1和1.3版本,这些版本提供了更丰富的功能,但是只有英文文档,所以大家可能对这些功能不是很熟悉。在这一系列教程中,将详细介绍Direct2D新版本的内容,让大家更方便地使用Direct2D来进行2D渲染工作。

在Direct2D1.1中,我们可以对图片应用高质量的特效,这些特效基于Direct3D11,可以发挥出GPU在图像处理方面的优势,比如着色器的使用等等。这些特效可以分为两种:内置特效和自定义特效。它们应用于任何位图,包括:Windows图像组件(WIC)加载的图像,Direct2D绘制的位图,DirectWrite中的文本或Direct3D渲染的场景。我们可以在实际应用中使用Direct2D特效来实现我们想要的一些效果。

二、Direct2D1.1内置特效概览

Direct2D1.1的内置特效有很多,大致可以分为以下几类:

  - Filtering滤镜

  - Composition and Blending组合和混合

  - Transparency透明度

  - Color颜色

  - Lighting and Stylizing光照

  - Transforming and Scaling平移和缩放

  - Sources来源

在这里我们只挑出几个内置特效,把效果图展示给大家,让大家体验一下Direct2D可以实现的一些图片渲染效果,不做过多的介绍。

(1)离散传递效果(Discrete transfer effect)

(2)色调旋转效果(Hue rotatation effect)

 
(3)线性传递效果(Linear transfer effect)
 
(4)卷积矩阵效果(Convolve matrix effect)
 
(5)高斯模糊效果(Gaussian blur effect)
 
(6)形貌效果(Morphology effect)
 
(7)波动效果(Displacement map effect)
 
(8)阴影效果(Shadow effect)
 
(9)浮雕效果(Emboss Effect)
 
 
(10)边缘检测效果(Edge Detection Effect)
 
(11)曝光效果(Exposure Effect)
 
(12)灰度效果(Grayscale effect)
 
(13)高亮和阴影效果(Highlights and Shadows Effect )
 
(14)反转效果(Invert effect)
 
(15)棕褐色调效果——怀旧风格(Sepia Effect)
 
(16)锐化效果(Sharpen Effect)
 
(17)晕印效果(Vignette Effect)
 

三、结语

看到这里是不是对Direct2D有些刮目相看了?是的,最初刚看到这些我也是眼前一亮,很让人兴奋是不是。在之后的教程中,我将为大家详细介绍这些Direct2D1.1中的内置特效。

[Direct2D1.1教程] Direct2D特效概览的更多相关文章

  1. 【Direct2D1.1初探】Direct2D特效概览

    转载请注明出处:http://www.cnblogs.com/Ray1024 一.概述 Direct2D是一个基于Direct3D的2D图形API,可以利用硬件加速特性来提供高性能高质量的2D渲染.但 ...

  2. ZeroMQ 教程 001 : 基本概览

    介绍性的话我这里就不翻译了, 总结起来就是zmq很cool, 你应该尝试一下. 如何安装与使用zmq 在Linux和Mac OS上, 请通过随机附带的包管理软件, 或者home brew安装zmq. ...

  3. 在 WinForm 中使用 Direct2D

    在 C# 的 WinForm 应用中,界面的绘制使用的是 GDI+.不过在一些特别的应用中,可能需要用硬件加速来提高绘制的效率.下面就来介绍两种在 WinForm 应用中嵌入 Direct2D 的方法 ...

  4. C# 使用 Direct2D 实现斜角效果

    Direct2D 是微软新的二维图形 API,可为二维几何图形.位图和文本提供高性能和高质量的呈现.Direct2D 支持硬件加速,无论是绘制速度还是绘制质量,Direct2D 都要比 GDI 和 G ...

  5. Swift - 开源框架总结

    苹果官方Swift文档<The Swift Programming Language> 苹果开发者Swift文档及介绍 网友整理的Swift中文文档< Apple Swift编程语言 ...

  6. HTML编辑模式下制作表格

    前面有朋友问如何做图文并茂的音乐帖子,的确音乐能以表格式做出来,更能让人过目不忘,何况帖子制作过程本身就是创作,包含了制作人对音乐的理解和爱好.以下简单介绍用代码HTML制作表格,希望对大家有所帮助. ...

  7. 一步一步构建手机WebApp开发——页面布局篇

    继上一篇:一步一步构建手机WebApp开发——环境搭建篇过后,我相信很多朋友都想看看实战案例,这一次的教程是页面布局篇,先上图: 如上图所示,此篇教程便是教初学者如何快速布局这样的页面.废话少说,直接 ...

  8. sanic+aiohttp爬虫demo(爬图片,新闻,数据)

    直接上代码,都是很简单的一些demo,爬取的网站,都没有什么加密措施,所以应该不涉及违法数据,哈哈 1.爬取网页数据(aiohttp+sanic+scrapy+xpath解析html) from sa ...

  9. Flutter如何引用第三方库并使用

    Flutter如何引用第三方库并使用 https://www.jianshu.com/p/bbda7794345e Flutter官网点击访问Flutter教程(一)Flutter概览Flutter教 ...

随机推荐

  1. ibatis 学习笔记 3 - pfpfpfpfpf的专栏 - 博客频道 - CSDN.NET

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  2. 用saxon框架对xml数据进行过滤 - 程序员的天堂 - ITeye技术网站

    用saxon框架对xml数据进行过滤 博客分类: Java   Saxon 是一个 XSLT 和XQuery处理器.它是使用 XML 文档和样式表作为输入,然后生成结果文档作为输出的程序,它还包括了一 ...

  3. mysql 二级索引

    mysql中每个表都有一个聚簇索引(clustered index ),除此之外的表上的每个非聚簇索引都是二级索引,又叫辅助索引(secondary indexes). 以InnoDB来说,每个Inn ...

  4. MYSQL管理----数据库删除恢复

    (1) 如果备份了,就好解决了.略. (2)如果日志打开,使用mysqlbinlog来恢复. mysqlbinlog工具的使用,大家可以看MySQL的帮助手册.里面有详细的用, 在这个例子中,重点是- ...

  5. WKWebKit基础

    UIWebView & UIWebViewDelegate 这个两个东西在 WKWebKit 中被重构成 14 个类 3 个协议. WKWebKit Framework Classes WKB ...

  6. team talk 主要框架

    Android TeamTalk的原型是Android-IM, 注:本文假设你已经有Android开发环境,且对Android开发的基本常识有所了解 本文以eclipse为例启动Eclipse,导入A ...

  7. lpc1768的rit使用

    LPC1768在系统滴答定时器和通用定时器之外还引入了一个定时器,叫做重复定时器RIT,该定时器只能用于定时操作,带有一个中断,我个人的感觉,这似乎是为了延时函数设计的一个定时器 那么使用该定时器时遵 ...

  8. FZU 2112 Tickets

    这个问题可以转变一下,先要知道有几个连通块,连通块之间肯定需要添加一条边, 还需要知道每个连通块内部需要添加几条边,这个问题等价于求一张图至少需要几笔画成,这个问题的答案是度为奇数的点的个数/2 #i ...

  9. 《玩转Bootstrap(JS插件篇)》笔记

    导入JavaScript插件 不论是单独导入还一次性导入之前必须先导入jQuery库. 一次性导入 <script src="js/bootstrap.min.js"> ...

  10. Mybatis3.2.1整合Spring3.1

    Mybatis3.2.1整合Spring3.1 根 据官方的说法,在ibatis3,也就是Mybatis3问世之前,Spring3的开发工作就已经完成了,所以Spring3中还是没有对 Mybatis ...