Lo puedes hacer refiriendote a la Table o Query, que tienes asociado al DBGrid lo puedes hacer con un ciclo, pero antes declara la unidad Printer en USES es algo asi..(es una idea)
X:=10;
While not Table1.Eof do
Begin
Printer.Canvas(10,X,Table1.FindField("MI_CAMPO").AsString)
X:=X+20;
End;
Ademas de Esto, debes determinar
* hasta donde termina la hoja
* que espacios tendra entre cada campo
* Etc, tu gusto.. y tu afán.
Ahora mas facil, tengo un componente que hace todo esto sin mas, ni mas, bien facil.
si lo quieres me mandas un mail y yo te lo envio..
pero me mandas tu nombre, pais, que estudias o trabajas y que proyectos tienes, es todo. (solo para hacer amigos, no es riguroso).
Suerte....