Ver Mensaje Individual
  #32  
Antiguo 29-05-2013
Avatar de cesarsoftware
cesarsoftware cesarsoftware is offline
Miembro
 
Registrado: nov 2006
Posts: 241
Reputación: 18
cesarsoftware Va por buen camino
Cita:
Empezado por escafandra Ver Mensaje
Me alegra que tu proyecto avance y que mis aportes te sirvan de ayuda.
Buenos días, perdona que te moleste, pero he retomado el proyecto y tengo una duda que no consigo resolver.
Deje el tema de resta de imágenes porque tenia que entregarlo y mandaba la imagen completa, ahora estoy enviando la resta y eso es lo que veo, la resta.
Como creo inicialmente una imagen vacía, la primera vez la resta es la imagen completa, pero luego solo pinto la diferencia al asignar el Stream al bitmap.

Esta es la función

Código Delphi [-]
function TFormPantalla.PintaPantalla(): boolean;
var
  LStream: TMemoryStream;
  LPngImage: TPngImage;
begin
  TimerTimeOut.Enabled := False;
  Result := True;
  if Self.WindowState = wsMinimized then
    Exit;
  LPngImage := TPngImage.Create;
  LStream := TMemoryStream.Create;
  try
    LStream.Write(SCRBuffer[0], SCRSize);
    LStream.Position := 0;
    LPngImage.Canvas.Lock;
    LPngImage.LoadFromStream(LStream);
    LPngImage.Canvas.Unlock;
    Imagen.Picture.Assign(LPngImage);
  except
    LStream.Free;
    LPngImage.Free;
    Result := False;
  end;
  LStream.Free;
  LPngImage.Free;
end;

¿Como puedo hacer para, en vez de usar Imagen.Picture.Assign(LPngImagen), que es solo la diferencia, para "sumar" la diferencia recibida a la imagen actual?

Gracias y ya sabes que las las pongo yo
__________________
Disfruta de la vida ahora, vas a estar muerto mucho tiempo.
Responder Con Cita