Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Gráficos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #6  
Antiguo 04-06-2008
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 24
Caro Va por buen camino
Hola de nuevo, si haras de la forma en que te explique también deberías tomar en cuenta, de colocar a transparente algunos componentes que vayan a estar en tu form como Labels, que la imagen siempre este debajo de todos los componentes (Send To Back) y también lo que explican aqui:

http://www.elrinconcito.com/delphi/trucos/Compo3.htm

Para poner una imagen tranparente debes utilizar TransparentColor y TransparentMode, un ejemplo aqui:

http://www.latiumsoftware.com/es/delphi/00015.php

como te dice el amigo BlueSteel, si quieres dar el efecto de agua, sería mejor que lo hicieras en alguna aplicación que te maneje imagenes como photoshop..... Aquí un ejemplo para transformar a escala de grises una imagen, te puede servir algo de ahí para empezar.

http://www.latiumsoftware.com/es/pascal/0032.php#5

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
  procedure GrayScale(PICT: TPicture);
  const
    MaxPixelCount = 32768;
  type
    pRGBArray = ^TRGBArray;
    TRGBArray = ARRAY[0..MaxPixelCount-1] of TRGBTriple;
  var
    i, j, Colr : Integer;
    sl : pRGBArray;  // Scanline
    bmp : TBitmap;
  begin
    bmp := TBitmap.Create;
    try
      bmp.PixelFormat := pf24bit;
      bmp.Width := PICT.Graphic.Width;
      bmp.Height := PICT.Graphic.Height;
      bmp.Canvas.Draw(0,0,PICT.Graphic);
      if bmp.PixelFormat <> pf24bit then begin
        // ShowMessage('Not a 24Bit color bitmap!');
        Exit;
      end;
      for j:=0 to bmp.Height-1 do begin
        sl := bmp.ScanLine[j];
        for i:=0 to bmp.Width-1 do begin
          Colr:=HiByte(sl[i].rgbtRed * 77 + sl[i].rgbtGreen * 151 +
             sl[i].rgbtBlue * 28);
          sl[i].rgbtRed := Colr;
          sl[i].rgbtGreen := Colr;
          sl[i].rgbtBlue := Colr;
        end;
      end;
      PICT.Assign(bmp);
    finally
      bmp.Free;
    end;
  end;

  begin
    GrayScale(Image1.Picture);
  end;
Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Como poner una imagen de fondo en quick report mar646 Impresión 3 07-03-2020 11:38:37
Como Cambiar El Color De Fondo En Una Imagen kurono Varios 2 27-11-2011 13:53:41
Como incluir una imagen en la barra del menu?? Greco Varios 10 31-08-2011 01:10:09
Incluir una imagen bitmap en un RichEdit chinchan C++ Builder 1 29-01-2008 09:53:50
Incluir html como diseño fondo al enviar email CORBATIN Internet 7 27-06-2007 22:51:39


La franja horaria es GMT +2. Ahora son las 13:48:05.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi