Ver Mensaje Individual
  #4  
Antiguo 22-08-2006
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Reputación: 24
seoane Va por buen camino
Prueba con esto:

Código Delphi [-]
uses jpeg;

procedure Capturar(Filename: string; Panel: TPanel);
var
  SrcWindow: THandle;
  SrcDC: HDC;
  Bitmap: TBitmap;
  Jpg: TJPEGImage;
begin
  SrcWindow:= Panel.Handle;
  if SrcWindow <> 0 then
  begin
    SrcDC:= GetDC(SrcWindow);
    if SrcDC <> 0 then
    begin
      Bitmap:= TBitmap.Create;
      Jpg:= TJPEGImage.Create;
      try
        Bitmap.Width:= Panel.Width;
        Bitmap.Height:= Panel.Height;
        BitBlt(Bitmap.Canvas.Handle,0,0,Bitmap.Width,Bitmap.Height,SrcDC,0,0,SRCCOPY);
        Jpg.CompressionQuality:= 60;
        Jpg.Assign(Bitmap);
        Jpg.SaveToFile(Filename);
      finally
        Bitmap.Free;
        Jpg.Free;
        ReleaseDC(SrcWindow,SrcDC);
      end;
    end;
  end;
end;


// Ejemplo de como usar la funcion
Capturar('c:\1.jpg',Panel1);

¿Acerté con lo que querías?
Responder Con Cita