Fórum --gt;gt;Imprimir imagem do formulário... Alguém sabe? #170767

22/07/2003

0

Pessoal, alguém sabe como posso imprimir uma área determinada do form? tipo, dar as coordenadas e capturar esse retângulo, jogando na área de transferência?


Earmarques

Earmarques

Responder

Posts

22/07/2003

Cebikyn

A seguinte procedure põe o conteúdo de um retângulo qualquer do Desktop (incluindo seu Form ou qualquer outra coisa) na Área de Transferência, espero que ajude:

procedure Capturar(Coordenadas: TRect);
var
  R : TRect;
  DC : HDc;
  Bitmap : TBitmap;
  Canv : TCanvas;
begin
  Canv := TCanvas.Create;
  Bitmap := TBitmap.Create;
  Bitmap.Width := Coordenadas.Right-Coordenadas.Left;
  Bitmap.Height := Coordenadas.Bottom-Coordenadas.Top;
  DC := GetWindowDC( GetDeskTopWindow );
  Canv.Handle := DC;
  R := Rect(0, 0, Bitmap.Width, Bitmap.Height);
  Bitmap.Canvas.CopyRect( R, Canv, Coordenadas );
  Clipboard.Assign(Bitmap);
  ReleaseDC( GetDeskTopWindow, DC );
  Bitmap.Free;
  Canv.Free;
end;


Não esqueça de por [b:a60f5d472a]ClipBrd[/b:a60f5d472a] na seção [b:a60f5d472a]Uses[/b:a60f5d472a] da sua Unit.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar