- 博客(17)
- 资源 (7)
- 收藏
- 关注
原创 Delphi获取控件界面图像“新招”
众所周知,Delphi是一种可视化编程方式的软件,在某些Delphi软件中,常常需要获取一些界面控件的图像,如TImage、TPaintBox、TPanel等控件。获取这些界面控件图像时,一般都是采用直接截屏的办法,但直接截屏的办法有一个缺陷,就是当这些控件完全或者部分被遮挡后,并不能获取其完整界面的图像。对TImage的截屏更是受到限制,因为除了BMP类型图像(即TImage.Pictu
2009-11-22 23:00:00 9529 3
原创 实现任意角度渐变填充(三) -- 多色渐变填充文字
本文介绍怎样实现任意角度的文字多色渐变填充。 因为文字填充区是由若干个不规则的图形组成的,因此渐变填充文字比渐变填充矩形(见《实现任意角度渐变填充(一) -- 双色渐变填充矩形》和《实现任意角度渐变填充(二) -- 多色渐变填充矩形》)要复杂一些。需要先建立一个临时位图,以黑底白字形式将文字画在临时位图上,然后以临时位图数据为掩码图,对文字填充区域进行填充,如果掩码图某坐标的象素值
2009-11-18 13:56:00 5212 2
原创 实现任意角度渐变填充(二) -- 多色渐变填充矩形
在《实现任意角度渐变填充(一) -- 双色渐变填充矩形》一文中,比较详细的阐述了任意角度双色渐变填充矩形的原理,同时也用Delphi实现了填充过程,本文在此基础上,继续实现对矩形的任意角度多色渐变填充。 其实,任意角度多色渐变填充与任意角度双色渐变填充在实现原理上没有什么不同,填充过程也是完全相同的,只需要修改一下设置颜色缓冲区的代码,将按长度比例计算2种颜色缓冲区各元素颜色值,
2009-11-17 11:47:00 5123 2
原创 实现任意角度渐变填充(一) -- 双色渐变填充矩形
在实现任意角度双色渐变填充矩形之前,先了解一下简单实现横向或者纵向的双色渐变填充矩形的过程:首先按2种颜色在x(或者y)方向的按长度比例填充一条直线,然后,不断移动y(或者x)坐标,反复复制该直线,直到达到矩形的高(宽度),如此就实现了整个矩形的填充过程。按照这个原理,同样也可实现矩形的任意角度双色渐变填充,只不过比较麻烦,我们先按以下思路来实现: 1、按给定的渐变角度,计算出矩
2009-11-16 21:19:00 9407 4
原创 C语言版GDI+应用例子 -- 制作水印图片
本文介绍一个利用C语言版GDI+制作水印图片的例子,下面是程序代码:#include "../../SampleCode/comcode/Application.h"#pragma hdrstop#define ID_SAVE 101PGpBitmap bitmap;PGpBitmap photo;PGpBitmap watermark;INT
2009-11-15 11:30:00 7147
原创 C语言版GDI+应用例子 -- ColorMatrix
本文例子展示GDI+的ColorMatrix的几种经典应用:#include "../../SampleCode/comcode/Application.h"#pragma hdrstop#define ID_REASE 100#define ID_ALPHA 101#define ID_BRIGHT 102#define ID_GRAY 103#de
2009-11-11 18:23:00 2944 1
原创 C语言版GDI+应用例子 -- 文字
本文是使用C语言版GDI+仿C#文字绘制的例子代码:#include "../../SampleCode/comcode/Application.h"#pragma hdrstopWCHAR flowedText1[] = L"I went down to the St James Infirmary,/n /Saw my baby there,/n /S
2009-11-11 18:11:00 2862
原创 C语言版GDI+应用例子 -- 画笔
GDI+ 提供了很多绘图方法,如直线、曲线、圆弧、矩形、椭圆、扇形、多边形以及路径线条等,这些图形都需要使用GDI+ 画笔对象。本文是个使用GDI+画笔画各种线段的例子:#include "../../SampleCode/comcode/Application.h"#pragma hdrstopvoid DrawAlignmentRect(PGpGraphics g,
2009-11-11 17:56:00 4102 2
原创 C语言版GDI+应用例子 -- 画刷
GDI+提供了SolidBrush(实色刷)、HatchBrush(阴影刷)、TextureBrush(纹理刷)、LinearGradientBrush(渐变刷)和PathGradientBrush(路径刷)等五种画刷,在GDI+的C语言版本中,这些画刷的方法都以在原C++类类名为前缀,其中的LinearGradientBrush和PathGradientBrush分别简化为LineBru
2009-11-11 11:40:00 11993 3
原创 在C语言Windows应用程序中使用GDI+
GDI+是C++中常用的一种图形图像工具,VB、Delphi等语言也移植了GDI+,.net的诸多语言甚至完全采用GDI+作为绘制其界面。 在Winsows系统下,几乎所有的API都是直接针对C语言的,除C/C++可直接使用这些API外,其它各种语言都必须移植这些API方法,而唯独GDI+,微软提供的Gdiplus头文件,从类型定义到方法接口,都是针对C++写的,这就使得C语言没法使
2009-11-10 22:32:00 11285 6
原创 Delphi图像处理 -- 色相/饱和度调整
阅读提示: 《Delphi图像处理》系列以效率为侧重点,一般代码为PASCAL,核心代码采用BASM。 《C++图像处理》系列以代码清晰,可读性为主,全部使用C++代码。 尽可能保持二者内容一致,可相互对照。 本文代码必须包括文章《Delphi图像处理 -- 数据类型及公用过程》中的ImageData.pas单元。 本文是基于《GDI+在Delphi程序的应用 –
2009-11-06 23:11:00 5010 2
原创 Delphi图像处理 -- 线性亮度/对比度调整
阅读提示: 《Delphi图像处理》系列以效率为侧重点,一般代码为PASCAL,核心代码采用BASM。 《C++图像处理》系列以代码清晰,可读性为主,全部使用C++代码。 尽可能保持二者内容一致,可相互对照。 本文代码必须包括文章《Delphi图像处理 -- 数据类型及公用过程》中的ImageData.pas单元。 本文代码是在《Delphi图像处理 -- 亮度/对
2009-11-06 22:55:00 6766 3
原创 Delphi图像处理 -- 中值滤波
阅读提示: 《Delphi图像处理》系列以效率为侧重点,一般代码为PASCAL,核心代码采用BASM。 《C++图像处理》系列以代码清晰,可读性为主,全部使用C++代码。 尽可能保持二者内容一致,可相互对照。 本文代码必须包括文章《Delphi图像处理 -- 数据类型及公用过程》中的ImageData.pas单元。 图像的中值滤波,就是在以某一像素为中心的n阶像素矩
2009-11-06 13:55:00 4888 8
原创 Delphi图像处理 -- 设置图像关键颜色
阅读提示: 《Delphi图像处理》系列以效率为侧重点,一般代码为PASCAL,核心代码采用BASM。 《C++图像处理》系列以代码清晰,可读性为主,全部使用C++代码。 尽可能保持二者内容一致,可相互对照。 本文代码必须包括文章《Delphi图像处理 -- 数据类型及公用过程》中的ImageData.pas单元。 设置图像关键颜色,使图像的某种或某个范围的颜色成
2009-11-05 20:47:00 4572 3
原创 Delphi图像处理 -- 平面几何变换(下)
阅读提示: 《Delphi图像处理》系列以效率为侧重点,一般代码为PASCAL,核心代码采用BASM。 《C++图像处理》系列以代码清晰,可读性为主,全部使用C++代码。 尽可能保持二者内容一致,可相互对照。 本文代码必须包括文章《Delphi图像处理 -- 数据类型及公用过程》中的ImageData.pas单元和《Delphi图像处理 -- 平面几何变换类》Transf
2009-11-03 20:46:00 7443 5
原创 Delphi图像处理 -- 获取窗口或设备的图像数据
阅读提示: 《Delphi图像处理》系列以效率为侧重点,一般代码为PASCAL,核心代码采用BASM。 《C++图像处理》系列以代码清晰,可读性为主,全部使用C++代码。 尽可能保持二者内容一致,可相互对照。 本文代码必须包括文章《Delphi图像处理 -- 数据类型及公用过程》中的ImageData.pas单元。 CSDN论坛中,经常看到有关截屏的贴。所谓截屏,指
2009-11-02 13:22:00 6812 1
原创 Delphi图像处理 -- 图像翻转(镜像)
阅读提示: 《Delphi图像处理》系列以效率为侧重点,一般代码为PASCAL,核心代码采用BASM。 《C++图像处理》系列以代码清晰,可读性为主,全部使用C++代码。 尽可能保持二者内容一致,可相互对照。 本文代码必须包括文章《Delphi图像处理 -- 数据类型及公用过程》中的ImageData.pas单元。 对图像的翻转处理,是产生一个与原图像在水平方向或
2009-11-01 11:12:00 7456 2
GDI+ for VCL and GDI+ for C (2010.10.7)
2010-10-07
Gdiplus C语言版本
2009-11-10
GDI+ for VCL
2007-11-29
Gdiplus for VCL(Delphi and C Builder)
2007-11-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人