博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
GDI+ 学习记录(31): 图像颜色变换(TGPImageAttributes)
阅读量:6929 次
发布时间:2019-06-27

本文共 1139 字,大约阅读时间需要 3 分钟。

  hot3.png

//正常显示图片, 没有变换uses GDIPAPI, GDIPOBJ;procedure TForm1.FormPaint(Sender: TObject);var  g: TGPGraphics;  img: TGPImage;begin  g := TGPGraphics.Create(Canvas.Handle);  img := TGPImage.Create('c:\temp\test.png'); {测试文件要存在}  g.DrawImage(img, 0, 0, img.GetWidth, img.GetHeight);  img.Free;  g.Free;end;         //效果图:
26153505_te4p.png

//添加颜色变换uses GDIPAPI, GDIPOBJ;procedure TForm1.FormPaint(Sender: TObject);var  g: TGPGraphics;  img: TGPImage;  imgAtt: TGPImageAttributes;const  ColorMatrix: TColorMatrix = (    (1.0, 0.0, 0.0, 0.0, 0.0),    (0.0, 1.0, 0.0, 0.0, 0.0),    (0.0, 0.0, 1.0, 0.0, 0.0),    (0.0, 0.0, 0.0, 1.0, 0.0),    (1.0, 0.0, 0.0, 0.0, 1.0));begin  g := TGPGraphics.Create(Canvas.Handle);  img := TGPImage.Create('c:\temp\test.png'); {测试文件要存在}  imgAtt := TGPImageAttributes.Create;  imgAtt.SetColorMatrix(colorMatrix, ColorMatrixFlagsDefault, ColorAdjustTypeDefault);  g.DrawImage(    img,    MakeRect(0,0,img.GetWidth,img.GetHeight),    0,    0,    img.GetWidth,    img.GetHeight,    UnitPixel,    imgAtt);  imgAtt.Free;  img.Free;  g.Free;end;         //效果图:
26153506_eZUh.png

这个话题还有很多内容, 先弄这个例子算是给 M. Rokkaei 的回答.

转载于:https://my.oschina.net/hermer/blog/320045

你可能感兴趣的文章
正则限制 账号 密码 邮箱 身份证 手机号的相关代码
查看>>
C++ - 复制构造器 和 复制-赋值操作符 的 区别
查看>>
shell中特殊符号
查看>>
Powershell管理系列(一)Active Direcrtory管理:用户管理
查看>>
【面试题】 单链表的热点面试题(1 )
查看>>
我的友情链接,hexo+GitHub pages搭建我的博客
查看>>
我的友情链接
查看>>
KVM虚拟化的四种简单网络模型介绍及实现(一)
查看>>
我的友情链接
查看>>
使用include而不使用include_once
查看>>
计算两个日期相差几个月
查看>>
Linux磁盘空间被占用,而且找不到占用文件
查看>>
Zabbix 之snmp配置
查看>>
Tomcat6 绿色版配置
查看>>
SQL查询中的UNION ALL和UNION区别
查看>>
Python错误和异常
查看>>
《HTTP权威指南》学习笔记
查看>>
Linux Samba服务器配置
查看>>
Windows安装Resin配置详解与发布应用的方法
查看>>
华为eSight 监控AR系列路由器端口流量
查看>>