GDI+_VB6_ARGB
在写一个用GDI+代替VB的Line函数的方法时,遇到了一个问题。
GdipCreateSolidFill
参数 color [in]ARGB颜色,指定此实体画笔的初始颜色。 brush [out]指向接收到新创建的SolidBrush对象的指针的变量的指针。 返回值 如果函数成功,则返回Ok,它是状态枚举的一个元素。 如果函数失败,它返回状态枚举的其他元素之一。
在得到ARGB值这一点出现了问题。
我当时以为很简单的HEX(ARGB)就能解决结果我就错了。
查阅了很多时间,才知道原来要分开来转换。
1 ARGB有四个值: 2 3 透明度 红色值 绿色值 蓝色值 4 5 于是我做了一个函数来解决:
Public Function ARGB(alpha As Integer, red As Integer, green As Integer, blue As Integer) As Long 'ARGB(透明度,红色,绿色,蓝色)If alpha > 255 Or red > 255 Or green > 255 Or blue > 255 Then'大于255 返回0ARGB = 0: Exit FunctionEnd IfDim S_a As String, S_r As String, S_g As String, S_b As String, S_16 As StringS_a = Hex(alpha): S_r = Hex(red): S_g = Hex(green): S_b = Hex(blue) '由于十六进制ARGB是以两位数为一个值的。 '当字符个数为1时前面加0补充If Len(S_a) < 2 Then S_a = "0" & S_aIf Len(S_r) < 2 Then S_r = "0" & S_rIf Len(S_g) < 2 Then S_g = "0" & S_gIf Len(S_b) < 2 Then S_b = "0" & S_bS_16 = "&H" & S_a & S_r & S_g & S_b 'ARGB=&H FFFF FFFF ARGB = Val(S_16) End Function
虽然很简单的一个东西,但是百度上对ARGB的介绍极少,导致浪费了我不少的时间,所以建一篇帖子谨记。
转载于:https://www.cnblogs.com/lingqingxue/p/10362639.html
GDI+_VB6_ARGB相关推荐
- 戏说 .NET GDI+系列学习教程(三、Graphics类的应用_验证码)
关于Graphics也有了基本了解下面想说的的是学这个东东干什么呢,到底如何应用 目前常见应用 1.验证码(参照网上的) 2.打印排版(会提到关于条形码大小设置) 3.自定义控件 一.验证码 1 cl ...
- 在.net中使用GDI+来提高gif图片的保存画质
//本文章有www.blue1000.com翻译,原文地址http://codebetter.com/blogs/brendan.tompkins/archive/2004/01/26/6103.as ...
- 一种使用GDI+对图片尺寸和质量的压缩方法
今天同事向我询问图片压缩的算法,我想起大概两三年前做过的一个项目.其中包含了尺寸和质量两种压缩算法,并且支持JPEG.bmp.PNG等格式.今天把这段逻辑贴出来,供大家参考.(转载请指明来源于brea ...
- GDI+ Bitmap与WPF BitmapImage的相互转换
原文:GDI+ Bitmap与WPF BitmapImage的相互转换 using System.Windows.Interop; //... // Convert BitmapImage to Bi ...
- 【转载】gdi+ 内存泄漏
[转载]http://issf.blog.163.com/blog/static/1941290822009111894413472/ 最近用GDI+实现了几个自定义控件,但是发现存在内存泄露问题 B ...
- Direct2D开发:Direct2D 和 GDI 互操作性概述
本主题说明如何结合使用 Direct2D 和 GDI(可能为英文网页).有两种方法可以结合使用 Direct2D 和 GDI:您可以将 GDI 内容写入与 Direct2D GDI 兼容的呈现器目标, ...
- 使用bitblt提高GDI+绘图的效率(转)
最近在做使用GDI+绘制K线界面发现传统的GDI+绘制方式效率比较低,根本无法满足K线界面及时刷新的速度要求. 所以做了个GDI+绘制图形界面的试验,改试验主要在一个600×600的区域内每隔10MS ...
- 在GDI+中用Mattix类对2D矢量图形进行平移、缩放操作
在GDI+中用Mattix类对2D矢量图形进行平移.缩放操作 1. GDI+中点坐标的格式及矩阵乘法的定义 GDI+中的的点按照1行3列的格式,即(x坐标,y坐标,1),其中1为哑元坐标.变换矩 ...
- GDI+编程说明及小结
原文地址:http://blog.csdn.net/byxdaz/article/details/5972759 GDI+(Graphics Device Interface Plus图形设备接口加) ...
- GDI+ 中发生一般性错误(生成验证码时出现的错误)
我在生成验证码时,出现这样的错误:GDI+ 中发生一般性错误. 怎么解决? 转载于:https://www.cnblogs.com/happyangle/archive/2008/06/11/1217 ...
最新文章
- jsapi设计_一个简单API设计
- dbvis 数据库连接工具-更新数据库驱动方法示例演示,驱动与数据库版本不匹配问题:Unknown system variable ‘query_cache_size‘解决方法
- [JZOJ5281]钦点题解--瞎搞+链表
- bootstrap --- 鼠标停留提示事件
- gRPC .NET Core跨平台学习
- C++11智能指针处理Array对象
- 基础DNS服务 轮训与泛域名解析
- Url重写——伪静态实现
- 最新苹果CMSV10视频电影网站源码+自适应手机版
- * Redis —— Scan、SScan、HScan、ZScan
- VS2017各版本区别
- 【C语言】实现网络对战五子棋
- Yamaha Vocaloid 5.6.2 x64 WiN 歌声合成器
- OPNsense - 多功能高可靠易使用的防火墙(二)
- 百度主页被“/?tn=88093251_85_hao_pg“劫持的一种解决办法
- 绍兴一中信心赛 T1排列
- rjs子模板中如何按照顺序并且有序列地执行语句
- 设备唯一标识方法(Unique Identifier):如何在Windows系统上获取设备的唯一标识
- 你为什么跳槽?真正原因找到了吗?
- 核心之外的8个必备Maven插件
热门文章
- BGP过滤器原理和实验(华为设备)
- ELK详解(十四)——Logstash TCP/UDP日志收集
- Linux SSHD服务安装与维护详解(一)——SSHD安装、启动与密钥认证实现
- 9-Shell的逻辑操作符知识介绍-实践及企业案例脚本剖析
- 【BZOJ3942】Censoring [KMP]
- XJOI网上同步训练DAY6 T2
- TABLE与DIV的取舍
- MYSQL 索引事务日志概述
- 部署Symantec Antivirus 10.0网络防毒服务器之二
- Visual Studio 2010 (ASP.Net 4.0)新功能一览(转载)