Thread View: comp.windows.ms.programmer
1 messages
1 total messages
Started by Chao-Kuei Hung
Sat, 01 Aug 1992 02:15
TRANSPARENT1 - How does it work?
Author: Chao-Kuei Hung
Date: Sat, 01 Aug 1992 02:15
Date: Sat, 01 Aug 1992 02:15
45 lines
2085 bytes
2085 bytes
Dear Netters:
I am a novice in DDK area, I hope this is not a FAQ. If so, please
forgive me.
The DDK document said for BitBlt() and StretchBlt(), driver has to
check both bkMode member of the lpDrawMode and Rop3 parameter to carry out
the transfer if driver set C1_TRANSPARENT in dpCaps1 of GDIINFO. I am kind
of confused by the bkMode == TRANSPARENT1 case. I cannot get a clear
definition of what drivers should do if bkMode is equal to TRANSPARENT1.
So I came out some possible scenarios for this case:
1. ROP3() first then check the result to decide wether we
want to update destionation or not.
tempD= ROP3(S,P,D);
if (tempD == bkColor)
Leave D as is;
else
D= ROP3(S,P,D);
2. Check Source and Brush first. If either one is equal to background
color of destination, we don't do ROP3() to change the
destionation.
if (S == bkColor || P == bkColor)
Leave D as is;
else
D= ROP3(S,P,D);
3. Check Source and Brush first. If both are equal to background
color of destination, we don't do ROP3() to change the
destionation.
if (S == bkColor && P == bkColor)
Leave D as is;
else
D= ROP3(S,P,D);
I don't know which scenario I should go. Probably neither one is
correct. Please help me clear the idea of this background mode. Thank you
guys very much!
Henri C. Chen. July 31, '92
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads