说道绘制空心字,win32 程序员都回想到使用gdi32的beginpath ... endpath。这样做固然行,但如果情况再复杂些,如空心字需要有“*”花纹,或针点式花纹,或边框, 甚至还要流动,那么,用beginpath endpth ,再把path 分割成点数组,以实现流动。这样做效果却不是很好,一来实现复杂,二来效率也不高。其实,还有另一种思路的:
那就是:一个空心'中'字等于,上下左右各一个有某种颜色的字,中间一个背景色的字,画在一起,叠加而成。那么,绘制一个空心字
font.color:=clblue;
textout(103 , 100,'中');
textout(97,100,'中');
textout(100 , 103,'中');
textout(100,97,'中');
font.color:=backcolor;
textout(100,100,'中');
实现“*”花纹
textout(100,100,'********')//*的个数可由textwidth决定。
textout(100,100,'********')
.......//textout的个数可由textheight决定。
实现针点式花纹
textout(100,100,'. . . . . . . .')...........
实现流动(为了防止闪烁可在tbitmap先画好再拷贝到屏幕上。)
用timer或thread 多次画就行了.