Antes de nada...
(1) No repitas el mismo mensaje varias veces.
(2) Si utilizas TAG's en tu código, éste se leerá mejor...
En cuanto a la pregunta, puedes utilizar el propio Print del formulario; No es muy sofisticado, pero funciona, y dado la urgencia...
Haz los siguientes cambios y prueba.
Si realizas un:
verás que funciona, pero imprime todo el formulario; Para "mejorarlo" un poco haz lo siguiente:
(1) Coloca los botones y el TEdit dentro de un panel y lo situas en la parte inferior del form.
(2) En el evento de print coloca lo siguiente:
Código Delphi
[-]
var
bi:TBorderIcons;
begin
Self.Color := clWhite;
Self.BorderStyle := bsNone;
bi := Self.BorderIcons;
Self.BorderIcons := [];
panel1.Visible := False; <<-- Panel donde están los controles
try
Self.Print;
Self.BorderIcons := bi;
Self.BorderStyle := bsSizeable;
Self.Color := clBtnFace;
finally
panel1.Visible := False;
end;