|
브러시 자체에서 불투명도를 조절할 수는 없습니다.;
불투명하게 나타내고 싶으시다면 여러가지 방법이 있겠지만. 간단하게 두가지 정도의 방법을 알려드릴 수 있겠네요;
첫번째는. 한 픽셀 사이에 투명한 픽셀을 두어 어우러져 투명한 듯 보이는 방법입니다.;
○ 투명한 픽셀 , ● 색이 있는 픽셀.
○●○●○●○●○●○●○●○●○●○●○●○●
●○●○●○●○●○●○●○●○●○●○●○●○
○●○●○●○●○●○●○●○●○●○●○●○●
●○●○●○●○●○●○●○●○●○●○●○●○
이렇게 하면 투명한 부분이 배경색으로 차게 되어 불투명한 느낌을 받을 수 있게 됩니다.
또 다른 방법으로는 합성을 하는 방법입니다.
예를들어 (배경의 색 + 그려질 색) / 2 하면 반 투명한 색이 되겠지요.. 이걸로 색을 채우는 겁니다.
원하시는 답변은 아니겠지만.. 브러시 자체엔 불투명도를 조절하는 방법은 없는걸로 압니다.;
brush 스타일과 hatch 를 잘 조절하면 첫번째 방법의 효과는 바로 나타내실 수 있을겁니다. ;;
^^ 좋은하루 되세요~;
잠스터 님이 쓰신 글 :
: Polygon이나 Rectangle 함수로 어떤 영역을 그릴 때,
: 내부 영역은 완전 투명이 아닌 반투명으로 해서 배경의 색이 비치게 그리고 싶습니다.
:
: 완전 투명 브러쉬는
: LOGBRUSH lplb;
: lplb.lbStyle = BS_HOLLOW;
: lplb.lbHatch = 0;
: lplb.lbColor = RGB(0,0,0);
: HBRUSH brush = CreateBrushIndirect(&lplb);
: 이렇게 구현했는데 반투명은 모르겠네요..
: 가령 빨간색 반투명 브러쉬는 어떻게 해야 하는지 답변 부탁드립니다...
|