Compartilhar via


D1120: Tentativa inválida de desenhar bitmap

Uma operação falhou porque o bitmap tem a opção D2D1_BITMAP_OPTIONS_CANNOT_DRAW.

 

Possíveis causas

Essa mensagem ocorre quando um aplicativo tenta desenhar um bitmap sinalizado com D2D1_BITMAP_OPTIONS_CANNOT_DRAW. Isso inclui chamadas diretas para DrawBitmap, bem como o desenho de primitivos usando um pincel bitmap.

Possíveis correções

O sinalizador CANNOT_DRAW é usado para anotar corretamente recursos que são utilizáveis apenas como destinos, como backbuffers de cadeia de troca. No entanto, também é permitido omitir o sinalizador CANNOT_DRAW para alguns bitmaps de destino se eles também puderem ser usados como uma origem. Se esse for o caso, basta omitir o sinalizador CANNOT_DRAW. Se o bitmap precisar ser anotado com CANNOT_DRAW devido ao seu uso exclusivo como destino ou para permitir o bloqueio de CPU, considere usar uma textura de preparo com o mesmo tamanho da origem desejada, mas sem a designação CANNOT_DRAW. Copie para a textura de preparo usando ID3D11DeviceContext::CopyResource e use a textura de preparo como fonte para a operação de desenho. O uso de uma textura de preparo gera implicações de desempenho; eles poderão ser aceitáveis se o bitmap de origem não mudar com frequência.