BitBlt to invert colors using C++
Pergunta
I am using BitBlt WinAPI to compose a bitmap using C++, and I was wondering what flags do I need to use to invert the colors in it?
Solução
What did you try?
- DSTINVERT Inverts the destination rectangle.
- PATINVERT Combines the colors of the brush currently selected in hdcDest, with the colors of the destination rectangle by using the Boolean XOR operator.
- SRCINVERT Combines the colors of the source and destination rectangles by using the Boolean XOR operator.
Outras dicas
You can use BitBlt()
with NOTSRCCOPY
.
Here is your code:
HDC hdc = GetDC(HWND_DESKTOP);
BitBlt(hdc, 0, 0, GetSystemMetrics(SM_CXSCREEN), GetSystemMetrics(SM_CYSCREEN), hdc, NULL, NULL, NOTSRCCOPY);
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow