如何使image中一块有特定颜色的区域闪烁(100分)

  • 主题发起人 主题发起人 sw7309
  • 开始时间 开始时间
S

sw7309

Unregistered / Unconfirmed
GUEST, unregistred user!
如何使image中一块有特定颜色的区域闪烁,请高手指教
 
你的具体意思是一个矩型区域
1。有两种颜色切换吗
2。有一种颜色和原来的图象切换
3。图象反色和原色切换
做个任务记录 然后放个timer 定时绘制任务
 
谢谢amakusa,但我指的区域唯一的特征是具有特定的颜色,而不知道区域的形状
 
var
MyRgn,bmpRgn: THandle;
X, Y: Integer;
for x:=0 to Image1.width-1 do
for y:=0 to Image1.height-1 do
begin
if Image1.Canvas.Pixels[x,y]= AColor then
begin
bmpRgn:= CreateRectRgn(x,y,x+1,y+1);
CombineRgn(MyRgn,MyRgn,bmpRgn,RGN_XOR);
end;
end;
得到Acolor的区域就是MyRgn,
具体怎么闪烁你可以查阅region functions
 
listening...
 
怎么没有好的解答啊,希望版主帮忙啦
 
有一个很有趣的方法,就再作一张图片了
然后用切换的方法让它们闪烁起来
 
如果图像很大,比如有5000*5000,这样做行不行
 
如果图像很大,而且闪烁的面积也很大,那么效果肯定不好了。

但是如果闪烁的面积不大,则可以只把需要变的位置做成新图就可以了。
 
我想请问各位,因为图像是256色的,如果我直接修改图像的调色板,能不能让图像的颜色立刻产生变化,如果可能,不就能做到闪烁了吗?
 
draw point to special color zone on the image, then refesh, then redraw
 
谢谢yyanghhong,但这样做速度肯定是一个问题,如果图像很大,根本就没有闪烁的感觉
 
使用调色板动画肯定是可以达到要求,但请教如下在真彩24bit或32bit分辨率下
实现调色板动画
 
真彩24bit或32bit分辨率下

根本没有调色板
 
但是一幅256色的图像有调色板,在24或32bit环境下,能不能让一幅256色的图像
实现调色板动画
 
bubble的方法很好,你为什么不试一试
 
bubble的方法对小图像是可以的,但我的要求是比较大的图像,
一般至少在2000*2000以上
 
后退
顶部