If it's a standard ASCII report then you can embed control characters to tell a printer which font/font size to use.
Unfortunately, these tend to be printer-specific, but many printers can run in Epson-compatible mode or HP-compatibe mode, so you can normally use their codes.
What I have done in the past is to either prepare the report as a text file, then output to the printer, put the control codes using "put unformatted", send the text file to the printer then change the font size back, then close the printer, or output to the printer, put the control codes, send the report, put reset control codes and close the output.
It all depends on how you access the printer.
If your print command is of the form "cat | lp ..." then you would generate a text file, add the control codes to the start of the text file and then cat the text file through the print command. If your print command is of the form "output through value ('cat |lp ...')" then you would want to use put unformatted to output the codes, then generate the report then use put unformatted to reset the printer then output close.
But, you have to make sure the command codes are the right ones for your printer and output accordingly.
Have a look at your printer documentation to get some idea of the command codes your printers use.
Also, google for PCL Command Codes:
www.google.co.uk/search?hl=en&q=pcl+command+codes
or Epson Command Codes:
www.google.co.uk/searchnum=100&hl=en&safe=off&q=epson+command+codes
for an idea of what is required.