下面这这一个过程可以在屏幕上画一个半透明线,如何更改就可以在image的canvas上画这样的线呢?

下面这这一个过程可以在屏幕上画一个半透明线,如何更改就可以在image的canvas上画这样的线呢? Delphi / Windows SDK/API
http://www.delphi2007.net/DelphiMultimedia/html/delphi_20060929140743277.html
procedure       TForm1.Button1Click(Sender:       TObject);  
  var  
      hpen:THandle;  
      hdc:   THandle;  
   
  begin  
      hpen   :=   CreatePen(PS_SOLID,   100,clred);  
      hdc   :=getdc(0);  
      SetROP2(hdc,   R2_MASKPEN);  
      SelectObject(hdc,       hpen);  
      LineTo(hdc,400,400);  
   
  end;  
   
   
  试过多次了,将hdc   :=image1.Canvas.handle;后就可以直接在image的画布上画线了,可是总不能实现半透明的效果,如何才能搞定呢?  
  新手初练,请多关照。

Canvas.Pen.Mode   :=   pmMask   ;画笔设成这样,能满足一般的,  
  有些xor太厉害了,使得颜色不是很正确,如果要很正确的话,必须取两个图片进行运算

posted on 2009-03-13 10:27  delphi2007  阅读(446)  评论(0编辑  收藏  举报