BCB如何做出遮色片效果 |
尚未結案
|
seavegg
一般會員 ![]() ![]() 發表:5 回覆:3 積分:1 註冊:2004-12-05 發送簡訊給我 |
|
JerryKuo
版主 ![]() ![]() ![]() ![]() ![]() 發表:42 回覆:571 積分:322 註冊:2003-03-10 發送簡訊給我 |
|
richtop
資深會員 ![]() ![]() ![]() ![]() ![]() 發表:122 回覆:646 積分:468 註冊:2003-06-10 發送簡訊給我 |
seavegg 您好: 我試著模擬遮色片的效果,方法如下:
所謂的紅色遮色片,就是僅能讓紅色光部分通過,餘綠,藍色遮色片依此類推。 不過這是不是正確的方法,我不敢確定。如果有人知道真正的原理,歡迎告知!
|
seavegg
一般會員 ![]() ![]() 發表:5 回覆:3 積分:1 註冊:2004-12-05 發送簡訊給我 |
引言: seavegg你好; 請問一下什麼是遮色片,是什麼原理?有什麼做用呢?沒有說清楚~ 真不好意思~ 遮色片是我照著FLASH中的元件名字說的 像是先再表單上放上一張背景圖~ 另外再放上一個圖型(EX:圓形) 然後只有在第二張圖形的範圍中第一張背景圖才會顯現~ 就像下面的圖~ 上面是原來的背景圖~ 下面是放上一圓形濾光片後的效果 如果我們把圓形向左移動一些就能看到左邊一些的背景圖~ 然而超過圓形的背景圖全被影藏了~ |
seavegg
一般會員 ![]() ![]() 發表:5 回覆:3 積分:1 註冊:2004-12-05 發送簡訊給我 |
|
stellos
中階會員 ![]() ![]() ![]() 發表:24 回覆:84 積分:51 註冊:2004-06-08 發送簡訊給我 |
下面範例希望是你要的
|
JerryKuo
版主 ![]() ![]() ![]() ![]() ![]() 發表:42 回覆:571 積分:322 註冊:2003-03-10 發送簡訊給我 |
或是用region方式
// Bmp是原始圖,bmp1是加光罩的後圖片 Graphics::TBitmap* bmp1=new Graphics::TBitmap; byte *ptr1,*ptr2; static int mask_x = 0,mask_y = 0; //光罩位移 static int masksize_x = 100,masksize_y = 100; //光罩大小 HRGN MyRgn = ::CreateEllipticRgn(0, 0, masksize_x, masksize_y); //光罩區域範圍 bmp1->PixelFormat = pf24bit; bmp1->Width = Bmp->Width; bmp1->Height = Bmp->Height; bmp1->Transparent = true; bmp1->TransparentMode = tmAuto; for(int y=0;y |
JerryKuo
版主 ![]() ![]() ![]() ![]() ![]() 發表:42 回覆:571 積分:322 註冊:2003-03-10 發送簡訊給我 |
引言: 或是用region方式被我抓到重覆發文喔...// Bmp是原始圖,bmp1是加光罩的後圖片 Graphics::TBitmap* bmp1=new Graphics::TBitmap; byte *ptr1,*ptr2; static int mask_x = 0,mask_y = 0; //光罩位移 static int masksize_x = 100,masksize_y = 100; //光罩大小 HRGN MyRgn = ::CreateEllipticRgn(0, 0, masksize_x, masksize_y); //光罩區域範圍 bmp1->PixelFormat = pf24bit; bmp1->Width = Bmp->Width; bmp1->Height = Bmp->Height; bmp1->Transparent = true; bmp1->TransparentMode = tmAuto; for(int y=0;y |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |