Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Gráficos (https://www.clubdelphi.com/foros/forumdisplay.php?f=8)
-   -   Capturar un sector de un formulario y guardarlo como imagen (https://www.clubdelphi.com/foros/showthread.php?t=60256)

testosi 25-09-2008 19:05:24

Capturar un sector de un formulario y guardarlo como imagen
 
Estimados, he buscado mucho en los hilos con temas relacionados a lo que necesito pero no encuentro una solución a mi problema. Les detallo mi inconveniente:

Debo capturar un sector determinado de un formulario y guardarlo como imagen.
Desde ya muy agradecido por su ayuda.

Saludos.

roman 25-09-2008 19:31:03

Puedes usar un objeto Bitmap y su método Bitmap.Canvas.CopyRect para copiar la porción deseada del formulario. Luego usas Bitmap.SaveToFile para guardar la imagen a un archivo.

// Saludos

roman 25-09-2008 19:53:09

Aquí un ejemplito:

Código Delphi [-]
procedure SaveRect(Form: TForm; Source: TRect; FileName: TFileName);
var
  Bitmap: TBitmap;
  Dest: TRect;

begin
  Bitmap := TBitmap.Create;

  try
    Bitmap.Width := Source.Right - Source.Left;
    Bitmap.Height := Source.Bottom - Source.Top;
    Bitmap.PixelFormat := pf32bit;

    Dest := Rect(0, 0, Bitmap.Width, Bitmap.Height);
    Bitmap.Canvas.CopyRect(Dest, Form.Canvas, Source);
    Bitmap.SaveToFile(Filename);
  finally
    Bitmap.Free;
  end;
end;

La función recibe el formulario y la porción que requieres guardar y la guarda en el archivo indicado.

// Saludos

testosi 25-09-2008 20:43:09

Muchas gracias roman, era lo que necesitaba. Funciona a la perfección.

Nuevamente muchas gracias.


La franja horaria es GMT +2. Ahora son las 12:06:10.

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