Fórum uso do canvas.copymode #189177

16/10/2003

0

Gostaria de saber como fazer p/ carregar um bitmap qualquer em cima de um desenho, mas sem apagar o que existe ... tipo a propriedade :

canvas.penmode := pmNotXor;

da caneta ... o modo normal apaga o que ja estiver embaixo, trocando pelo que qro desenhar .... o mode cmSrcErase quase funciona, mas deixa onde nao quero desenhar (que é branco) preto ....

Alguem sabe outro modo p/ usar, ou uma combinacao deles p/ conseguir o mesmo efeito do pmNotXor do penmode ????


@dils0n

@dils0n

Responder

Posts

16/10/2003

@dils0n

Se o problema é q nao estao entendendo meu problema, tb posso dizer q qro um bmp ´transparente´ ... onde o bitmap source for branco, nao pintar em cima do destino !!!!


Responder

Gostei + 0

17/10/2003

Cebikyn

Use o BrushCopy:

Canvas.BrushCopy(DestRect, Bitmap, SourceRect, clWhite);


Em que DestRect é um TRect que especifica qual área do canvas será usada, Bitmap é o bitmap que se deseja copiar, SourceRect é um TRect que especifica qual parte do bitmap será copiada e clWhite é a cor que não será copiada (a cor ´transparente´, no seu exemplo).

Qq coisa deixe uma msg...


Responder

Gostei + 0

17/10/2003

@dils0n

Eu nao entendo, mesmo usando o BrushCopy, ele ainda assim me sacaneia ... hehe. Mas eu consegui driblar isso usando o ImageList - apesar q nao é a melhor solucao, ja q se eu mudar o bitmap nao vai mudar automaticamente o ImageList ... mas pelo menos assim funciona !!

Valeu pela ajuda !!


Responder

Gostei + 0

17/10/2003

Beppe

Tem duas propriedades de TBitmap relevantes. Sete Transparent para True e TransparentColor para clWhite.

Ataliba


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar