兩個頁面的Alpha混合C 原始碼

2021-03-31 11:00:18 字數 987 閱讀 9672

hresult ddrval;

ddrval = lpbackbuffer->bltfast( 0, 0, lpddsone,&rc,ddbltfast_wait);//背景位圖傳送到後台緩衝區

if( ddrval != dd_ok )

ddsu***cedesc ddsd,ddsd2;

zeromemory(&ddsd,sizeof(ddsd));

ddsd.dwsize=sizeof(ddsd);

zeromemory(&ddsd2,sizeof(ddsd2));

ddsd2.dwsize=sizeof(ddsd2);

ddrval=lpbackbuffer->lock(null,&ddsd,ddlock_wait,null);//鎖定臺緩衝區

if(ddrval!=dd_ok)

ddrval=lpddstwo->lock(null,&ddsd2,ddlock_wait,null);//鎖定包含前景點陣圖的表面

if(ddrval!=dd_ok)

byte* bitmap=(byte*)ddsd.lpsu***ce;//獲取背景點陣圖在記憶體中的起點位置

byte* bitmap2=(byte*)ddsd2.lpsu***ce;//獲取前景點陣圖在記憶體中的起點位置

int alpha;

int pos,pos1;

static double rate1=0.05,rate2=0.0;

if(rate1>1.0)rate1=0.0;

rate2=1.0-rate1;

for(int y=newrect1.top;y<=newrect1.bottom;y++) }

rate1+=0.05;

lpbackbuffer->unlock(&ddsd);//解鎖表面

lpddstwo->unlock(&ddsd2);//解鎖表面

cgamewnd::flip();//翻轉表面

兩個獲取http頁面的c 函式

埋頭苦幹一天終於搞定!乙個用c 寫的windows應用程式,作用嘛,就是對asp程式已知的20種漏洞進行掃瞄,顯示源程式。在這個應用程式中用到兩種獲得http頁面的方法,一種是直接用httpwebrequest類,而另一種是同伺服器通過tcp ip建立socket連線,直接查詢埠80 為此我寫了以下...

Alpha 混合 兩個半透明色的疊加

講 alpha 混合的文章太多了,我並不是要說有什麼新的更好的演算法,而是這些 alpha 混合的文章都是基於一種特定的現實應用 在背景色上疊加乙個半透明色。而 openpainter 的需求更具一般性 混合兩個半透明顏色。也就是說,原始色也是有透明度的。為此我首先用 ps 做了不少試驗,試圖推導出...

同一頁面的兩個Iframe獲取資料

首先頁面 此時左側的iframe想要獲取到右側的iframe中的資料 var x window.parent.document.getelementbyid treeframe var right x.contentwindow x.contentdocument if right.document...