Página 1 de 1

Bitmap transparente.

Enviado: 20 Mar 2014 17:44
por Adalberto
Caros amigos, boa tarde.

Desculpem as moléstias

No exemplo de splash do Dr. Soto a imagem não tem o fundo branco, o fundo e transparente; os amigos sabem como es possível fazer isso ?, Por favor me ajudem com este tema.

Desde já agradeço a todos, Deus abençoe vocês.

Adalberto

Bitmap transparente.

Enviado: 20 Mar 2014 18:33
por Toledo
Amigo, você deve estar falando do exemplo de ScreenSplash que o Dr. Claudio Soto disponibilizou na pasta samples da HMG Oficial, pasta \SAMPLES\Miscellaneous\ScreenSplash.

Bom, se for este exemplo, observe que o arquivo ScreenSplash.png tem o fundo na cor branca, então é utilizado a função HMG_GetImageInfo() para pegar informações sobre o arquivo (largura, altura e cor de fundo). Depois a cor de fundo é passada para a variável Image_BackColor, que é utilizada no comando:

Código: Selecionar todos

SET WINDOW FormSplash TRANSPARENT TO COLOR Image_BackColor
Então, na imagem, tudo que estiver na mesma cor de Image_BackColor vai ficar transparente.

Abraços,

Bitmap transparente.

Enviado: 20 Mar 2014 18:52
por Adalberto
Prezado amigo e maestro Toledo.

Graças por responder e por estar sempre disposto a colaborar.

Por favor, me desculpa.

A verdade e que eu me equivoquei ao citar a o grande Dr. Soto, me referia a o exemplo do grande Grigory:

C:\MiniGUI\SAMPLES\BASIC\SPLASHDEMO_2

Veja Toledo que a imagem utilizada e Splash.Gif com fundo branco que logo fica transparente mesmo, o que fica atrás do fundo se pode ver.

Gostaria de poder fazer isso com imagem BMP ou mesmo GIF.

Mais uma vez, agradeço sua ajuda.

[ ] Adalberto

Bitmap transparente.

Enviado: 20 Mar 2014 21:38
por Toledo
Amigo, neste exemplo do Grigory Filatov, a cor de fundo do arquivo Splash.Gif não é totalmente branca, usa a cor RGB com os valores 252, 253, 252. Então se a sua imagem não tem esta mesma cor de fundo, não vai ficar transparente.

Para que a sua imagem GIF seja apresentada com transparência, você vai ter que saber qual é a cor do fundo da sua imagem, no formato RGB. Depois na função _DefineSplashWindow() você terá que alterar o seguinte comando:

Código: Selecionar todos

SET REGION OF &name BITMAP &cSaveBmp TRANSPARENT COLOR RGB(252, 253, 252) TO RegionHandle
No comando acima, troque RGB(252, 253, 252) pela cor de fundo da sua imagem. Por exemplo, se a cor de fundo da sua imagem for totalmente branca, coloque RGB(255, 255, 255).

Abraços,

Bitmap transparente.

Enviado: 20 Mar 2014 22:48
por Adalberto
Maestro Toledo,

Perdão por tantas moléstias.

Troquei a imagem no exemplo do Grigory, por uma imagem com o fundo de cor branca, e não alterei nada no PRG, compilei e rodou blz. O fundo e transparente mesmo, pode se ver todo o que havia atrás.

Por favor olhe o exemplo que adjunto, essa imagem que diz EninSoft, tem un fundo quadrado de cor branco.

Gostaria de poder fazer isso mesmo nas imagem que colocarei na janela principal de meu aplicativo.

Grato com o senhor e com todos os amigos e amigas do foro.

Aguardo ajuda.

Bitmap transparente.

Enviado: 21 Mar 2014 09:00
por Toledo
Adalberto escreveu:Gostaria de poder fazer isso mesmo nas imagem que colocarei na janela principal de meu aplicativo.
Amigo, segue em anexo um pequeno exemplo. Espero que seja isto que você queria!

Abraços,

Bitmap transparente.

Enviado: 21 Mar 2014 11:22
por Adalberto
Maestro Toledo, bom dia.

Vou estudar seu exemplo, o propósito e tirar esse fundo branco dos logos VEGA e EninSoft, da janela que adjunto como exemplo; se o senhor tem mais uma dica eu agradeço muito.

“Senhor me Deus graças por nos dar pessoas bondosas que compartilham seus valiosos conhecimentos, abençoa eles e faz prosperar seu trabalho”.

[ ]Adalberto

Bitmap transparente.

Enviado: 22 Mar 2014 13:14
por Toledo
Amigo, veja este outro exemplo que segue em anexo.

No exemplo será apresentado 3 vezes o logo da VEGA, onde:

- O logo na parte superior da janela já está incluído na própria imagem de fundo.
- O logo na parte inferior esquerda é um arquivo no formato GIF com fundo branco.
- O logo na parte inferior direita é um arquivo no formato PNG com fundo transparente.

Bom, como você pode notar os dois logos GIF e PNG não ficam completamente transparentes, fica algumas sujeiras na borda das letras.

Coloquei o logo na parte superior (dentro da imagem de fundo) apenas para lhe mostrar que seria uma melhor opção os logos já estarem dentro da imagem de fundo.

Abraços,

Bitmap transparente. Resolvido

Enviado: 22 Mar 2014 20:10
por Adalberto
Maestro Toledo, boa noite.

O senhor fez um maravilhoso trabalho, espetacular, e isso mesmo o que eu estava buscando, muito obrigado por compartilhar esse trabalho, muito melhor de ótimo de bom.

Bendito nosso Deus por nos dar pessoas bondosas como você e como os amigos que participam deste foro.

Saludos, desde Santa Cruz de la Sierra – Bolivia.

[ ] Adalberto