Por Ala!.. primero quiero recomendarte releer la
Guía de Estilos de los foros para participar en ellos.
Luego quiero comentarte que lo que estas haciendo no es lo que habitualmente referimos, como imprimir directamente en la impresora. Simplemente estas haciendo lo que hace cualquier herramienta de reportes.
Si quieres alinear el texto, tienes que indicar el sector donde quieras alinearlo, puedes hacer algo como:
Código Delphi
[-]
var
S: string;
R: TRect;
begin
S := 'Texto';
R := Rect(0, 0, 100, 100);
DrawText(Image1.Canvas.Handle, PChar(S), Length(S), R, DT_CENTER + DT_WORDBREAK);
Te recomiendo ver
este hilo, donde utilizo esta función con una aplicación lógica.
Saludos!