Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > API de Windows
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 15-09-2007
fide fide is offline
Miembro
 
Registrado: oct 2006
Posts: 331
Poder: 18
fide Va por buen camino
Lightbulb Capturar la Imagen del Desktop

Hola amigos. Estoy intentando capturar la imagen del Desktop pero no con GetWindowDc sino con otra Api o de otra forma.

El echo es que GetClientRec me pone la Pc lenta cuando capturo imagenes asi, ademas si estoy jugando por ejemplo el Star Craft las imagenes que captura no se ven bien y se pierden cantidad de colores.

Espero ayuda y gracias desde ya amigos del club...
Responder Con Cita
  #2  
Antiguo 16-09-2007
l30 l30 is offline
Miembro
 
Registrado: jun 2007
Posts: 36
Poder: 0
l30 Va por buen camino
Bueno no se si esto te sirva fide, allí te va.

Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
     procedure foto_pantalla(Image: TBitmap);
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.foto_pantalla(Image: TBitmap);
var
  DC : HDC;
begin
  DC := GetDC (GetDesktopWindow);

  try
    Image.Width := GetDeviceCaps (DC, HORZRES);
    Image.Height := GetDeviceCaps (DC, VERTRES);
    BitBlt(Image.Canvas.Handle, 0, 0, Image.Width,
    Image.Height,DC, 0, 0, SRCCOPY);
  finally
    ReleaseDC (GetDesktopWindow, DC);
  end;

end;

procedure TForm1.Button1Click(Sender: TObject);
var
   Image_m: Timage;
begin
   Image_m:= TImage.Create(Self);
   foto_pantalla(Image_m.Picture.Bitmap);
   Image_m.Picture.SaveToFile('imagen.bmp');
   Image_m.Free;
end;

end.
Responder Con Cita
  #3  
Antiguo 16-09-2007
l30 l30 is offline
Miembro
 
Registrado: jun 2007
Posts: 36
Poder: 0
l30 Va por buen camino
Bueno fide, me falto decirte que si quieres la imagen más pequeña, te mando este procedimiento.

Código Delphi [-]
 procedure Tclien.comvertir_de_bmp_a_jpg(cargar_image_de,
    gueradr_image_en: AnsiString);
  var
    MyJPEG : TJPEGImage;
    MyBMP  : TBitmap;
    begin
    MyBMP := TBitmap.Create;
  with MyBMP do
       try
          {Cargamos el BMP}
          LoadFromFile(cargar_image_de);
          MyJPEG := TJPEGImage.Create;
          with MyJPEG do begin
          Assign(MyBMP);
          {Grabamos el JPG}
          SaveToFile(gueradr_image_en);
          Free;
       end;
       finally
          Free;
    end;
  end;

Código Delphi [-]
    cliente.comvertir_de_bmp_a_jpg(guar_dar_direccion+'image.bmp', guar_dar_direccion+'foto_chiquita.jpg');
Responder Con Cita
Respuesta



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
Capturar Imagen de un Video Greg Gráficos 3 30-04-2020 21:39:02
capturar imagen de camara web aprendiz2 API de Windows 6 02-03-2007 01:04:00
Capturar una imagen con una camara bill_mg Varios 1 04-05-2006 12:49:09
Capturar imagen webcam fmtidona Gráficos 4 25-11-2005 18:04:31
Capturar una sección de una imagen opardor API de Windows 7 29-07-2005 23:22:01


La franja horaria es GMT +2. Ahora son las 13:23:36.


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
Copyright 1996-2007 Club Delphi