Como fazer para imprimir um form no meio da folha?
Olá
eu gostaria de saber como eu faço para imprimir um form no meio da folha, já tentei de tudo e naum concegui ainda. em folha A4
obrigado
eu gostaria de saber como eu faço para imprimir um form no meio da folha, já tentei de tudo e naum concegui ainda. em folha A4
obrigado
Pimp
Curtidas 0
Respostas
Fabio_lamber
07/10/2004
Para imprimir o form, basta informar o nome do mesmo como parâmetro: PrintForm(Form1). Antes de imprimir, a cor atual do form é salva em OldColor e alterada para clWhite (frm.Color := clWhite), para evitar gasto excessivo de tinta da impressora (ou tonner).
PrintForm
uses
Windows, SysUtils, Printers, Forms, Graphics, Controls, Classes;
.
.
.
procedure PrintForm(frm: TForm);
var
bmp: TBitMap;
x, y, WDPI, HDPI: Integer;
OldColor: TColor;
begin
Screen.Cursor := crHourGlass;
OldColor := frm.Color;
frm.Color := clWhite;
frm.Update;
bmp := frm.GetFormImage;
with Printer do
begin
Orientation := poLandscape;
BeginDoc;
HDPI := PageHeight div 8;
WDPI := PageWidth div 8;
x := PageWidth - Round(WDPI * 0.4); {0.4´ margem direita}
y := PageHeight - Round(HDPI * 0.5); {0.5´ Altura do rodapé}
Canvas.StretchDraw(Rect(0, 0, x, y), bmp);
EndDoc;
end;
bmp.Free;
frm.Color := OldColor;
Screen.Cursor := crDefault;
end;
ai é so imprimi..rrr.ssss
PrintForm
uses
Windows, SysUtils, Printers, Forms, Graphics, Controls, Classes;
.
.
.
procedure PrintForm(frm: TForm);
var
bmp: TBitMap;
x, y, WDPI, HDPI: Integer;
OldColor: TColor;
begin
Screen.Cursor := crHourGlass;
OldColor := frm.Color;
frm.Color := clWhite;
frm.Update;
bmp := frm.GetFormImage;
with Printer do
begin
Orientation := poLandscape;
BeginDoc;
HDPI := PageHeight div 8;
WDPI := PageWidth div 8;
x := PageWidth - Round(WDPI * 0.4); {0.4´ margem direita}
y := PageHeight - Round(HDPI * 0.5); {0.5´ Altura do rodapé}
Canvas.StretchDraw(Rect(0, 0, x, y), bmp);
EndDoc;
end;
bmp.Free;
frm.Color := OldColor;
Screen.Cursor := crDefault;
end;
ai é so imprimi..rrr.ssss
GOSTEI 0
Pimp
07/10/2004
Não funcionou, eu queria que imprimisse assim:
Meu form tem Height=458 e Width=575
Então eu queria que imprimisse no meio da folha mas com margem superior = 0.
Meu form tem Height=458 e Width=575
Então eu queria que imprimisse no meio da folha mas com margem superior = 0.
GOSTEI 0