[DSAPI.DLL下载地址]


  说到计算机上使用代码来处理各种图像特效,是一份太有挑战性的工作.以下涉及的所有图像效果均不是从网上复制的源码,而是本人试验数次并编写的,所以原理上会和网上的有所不同.既然说到图像了,那么我们先来看一些图像效果吧.


















看了以上的效果图,是不是感觉实现起来会比较麻烦呢?No,其实上面的各种特效都只有几句代码.我们来看看我是如何写的:


'模糊
Dim B As New Bitmap(My.Resources.ss)
DSAPI.图形图像.图像特效.模糊(B, 10)
Me.BackgroundImage = B

'自动将驴子变幻为最搭配背景图的色调

  Dim B As New Bitmap(My.Resources.ss.Width, My.Resources.ss.Height)
Using G As Graphics = Graphics.FromImage(B)
G.DrawImage(My.Resources._20071206123902233, New Rectangle(Label2.Left, Label2.Top, Label2.Width, Label2.Height), New Rectangle(0, 0, My.Resources._20071206123902233.Width, My.Resources._20071206123902233.Height), GraphicsUnit.Pixel)
End Using
DSAPI.图形图像.图像特效.色彩.调整指定图像色调为参考图像的最佳色调(B, New Bitmap(My.Resources.ss))
Label2.Location = New Point(0, 0)
Label2.Size = My.Resources.ss.Size
Label2.Image = B

'使图片只输出蓝色色调

 Dim B As New Bitmap(My.Resources.ss)
DSAPI.图形图像.图像特效.色彩.保留通道(B, DSAPI.图形图像.图像特效.色彩.色彩通道.蓝)
Me.BackgroundImage = B

'使图片只输出红色色调

 Dim B As New Bitmap(My.Resources.ss)
DSAPI.图形图像.图像特效.色彩.保留通道(B, DSAPI.图形图像.图像特效.色彩.色彩通道.红)
Me.BackgroundImage = B

'调整图像色相

  Dim B As New Bitmap(My.Resources.ss)
DSAPI.图形图像.图像特效.色彩.调整图像色调(B, 1, 0, 0) '红绿蓝各0.0到1.0的百分比
Me.BackgroundImage = B

'调整图像亮度

 Dim B As New Bitmap(My.Resources.ss)
DSAPI.图形图像.图像特效.色彩.亮度(B, 100) '范围-128到128
Me.BackgroundImage = B

'灰度

   Dim B As New Bitmap(My.Resources.ss)
DSAPI.图形图像.图像特效.色彩.灰度(B)
Me.BackgroundImage = B

'黑与白

   Dim B As New Bitmap(My.Resources.ss)
DSAPI.图形图像.图像特效.色彩.黑与白(B, 0)
Me.BackgroundImage = B

'反色

   Dim B As New Bitmap(My.Resources.ss)
DSAPI.图形图像.图像特效.色彩.反色(B)
Me.BackgroundImage = B

是不是感觉特别容易呢?是的,用DSPI就是这么简单.需要注意一下,上述调整指定图像色调为参考图像的最佳色调的两个参数,要求两个图片尺寸相等,否则出错.以上效果可以根据自己的需要进行效果叠加,比如上一句是模糊处理,下一句是灰度处理.


其他效果

图像的旋转,这个由于过于简单,就不上图演示了,给出代码:

        DSAPI.图形图像.图像特效.变形.从中心旋转(B, 90) '将图像从中心旋转90度
DSAPI.图形图像.图像特效.变形.从指定点旋转(B, New Point(10, 10), 90) '将图像从坐标(10,10)的点为中心旋转90度
DSAPI.图形图像.图像特效.变形.调整大小(B, 0.5) '将图像缩小一半

控件背景图像的动态效果


        DSAPI.图形图像.图像特效.动画.淡出(Me)
DSAPI.图形图像.图像特效.动画.淡出淡入(Me, Me.BackgroundImage)
DSAPI.图形图像.图像特效.动画.淡入(Me, Me.BackgroundImage)


DSAPI多功能组件编程应用-图形图像篇(中)的更多相关文章

  1. DSAPI多功能组件编程应用-HTTP监听服务端与客户端_指令版

    前面介绍了DSAPI多功能组件编程应用-HTTP监听服务端与客户端的内容,这里介绍一个适用于更高效更快速的基于HTTP监听的服务端.客户端. 在本篇,你将见到前所未有的超简化超傻瓜式的HTTP监听服务 ...

  2. DSAPI多功能组件编程应用-参考-Win32API常数

    DSAPI多功能组件编程应用-参考-Win32API常数 在编程过程中,常常需要使用Win32API来实现一些特定功能,而Win32API又往往需要使用一些API常数,百度搜索常数值,查手册,也就成了 ...

  3. DSAPI多功能组件编程应用-网络相关(上)

    [DSAPI.DLL下载地址]  DSAPI多功能组件编程应用-网络相关,网络相关编程有很多很多,这里讲解一下封装在DSAPI中的网络相关的功能,这些都是本人简化到极点的功能了,可以在软件开发过程中节 ...

  4. DSAPI多功能组件编程应用-网络相关(下)

    [DSAPI.DLL下载地址] 在本篇,我将重点介绍DSAPI.DLL中Socket编程的使用.众所周知,Socket用起来不难,但是写起来麻烦.我对Socket进行了封装,进行了高度简化.下面我将通 ...

  5. DSAPI多功能组件编程应用-网络相关(中)

    [DSAPI.DLL下载地址] 在中篇,我将演示比上篇稍微复杂点的功能.如HTTP监听和局域网广播. 有时,我们会有这样的需求:用户通过浏览器来访问获取数据,我们的程序需要监听指定端口,根据不同的请求 ...

  6. DSAPI多功能组件编程应用-文件类

    [DSAPI.DLL下载地址]     本节内容,是属于"无需过多说明"就能使用的功能.由于实在是太简单,我就简单地示例一下. DSAPI.文件类.获取可读性强的字节大小信息(&q ...

  7. DSAPI多功能组件编程应用-反射相关

    [DSAPI.DLL下载地址]       在.Net中,反射技术是一种入门困难,熟用快速的东西,对于没有接触过反射技术的程序员来说的确是头疼的,看一旦自己写过了,上手就非常简单了.在本节,将部分.N ...

  8. DSAPI多功能组件编程应用-DS提示气泡

    首先下载DSAPI.dll.并在项目中引用. 该功能包括在DSAPI1.0.1.1及更高版本号,DLL请到本人资源里查找. Private Sub Button1_Click(sender As Ob ...

  9. DSAPI多功能组件编程应用-使用外部字体(包括资源文件)

    在软件开发过程中,尤其是比较个性化的程序,有时会需要使用非安装字体文件,比如发布的时候附带了一个专用字体,或者该字体文件直接被放入项目资源,当不希望把这个字体安装到用户的操作系统但又想使用它时,本示例 ...

随机推荐

  1. comutil

    使用该工具库,通常包含comsuppw.lib.kernel32.lib. _com_util::ConvertBSTRToString 将VT_BSTR类型转换为普通字符串.

  2. CentOS 编译安装 Nodejs (实测 笔记 Centos 7.3 + node 6.9.5)

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7.0-1406-x86_64-DVD.iso 安装步骤: 1.准备 1.1 显示系统版 ...

  3. MySql解除安全模式:Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column.

    在修改一条数据字段时报错: Error Code: 1175. You are using safe update mode and you tried to update a table witho ...

  4. seed实验——Set-UID Program Vulnerability实验

    一.实验描述 Set-UID是Unix OS中的一个·非常重要的安全机制.当一个Set-UID程序运行的时候,它具有代码拥有者的权限.举个例子,如果代码的拥有者是root用户,那么不论任何用户运行该程 ...

  5. topic的leader显示为none的解决办法

    1.查看kafka的topic详细信息 bin/kafka-topics.sh --zookeeper 127.0.0.1:2181 --topic test --describe 配置delete. ...

  6. 1.2 Why need pluggable?

    When Android programmers write new features, bugs, or even crashes will exits in their App. Once a t ...

  7. [Bash]LeetCode192. 统计词频 | Word Frequency

    Write a bash script to calculate the frequency of each word in a text file words.txt. For simplicity ...

  8. [Swift]LeetCode341. 压平嵌套链表迭代器 | Flatten Nested List Iterator

    Given a nested list of integers, implement an iterator to flatten it. Each element is either an inte ...

  9. Python面试真题第三节

    51.正则匹配,匹配日期2018-03-20 url='https://sycm.taobao.com/bda/tradinganaly/overview/get_summary.json?dateR ...

  10. Python内置函数(12)——compile

    英文文档: compile(source, filename, mode, flags=0, dont_inherit=False, optimize=-1) Compile the source i ...