Если вы хотите инвертировать уже нарисованную область, я полагаю, что вы можете использовать CreateEffect(CLSID_D2D1Flood)
, чтобы создать эффект, который заполняется сплошным цветом, затем установить параметр цвета для эффекта белого, а затем использовать ID2D1DeviceContext::DrawImage
сэтот эффект и используйте D2D1_COMPOSITE_MODE_XOR
для параметра compositeMode
.
(Вам также может понадобиться использовать прозрачный белый , теперь, когда я думаю об этом ... предполагая, что XOR также работаетна альфа-канале. Возможно, вам придется поэкспериментировать. Кроме того, он может не работать, я не пробовал.)