Crystal Reports is a good solution for this. We used to use it for printing HCFA insurance forms. If you've never seen one, HCFA is like the grandaddy of all government forms for printing headaches. It allows exact positioning on a piece of paper. However, at least in past versions, when using Crystal you want to remove all guidelines before moving to production. Guidelines (at the last time I used it) can cause up to .5 inch variation in output from printer to printer. We found that we had no variation without the guidelines.
Another point is that there is always some very minor variation in print positioning from one printer to the next. It's typically less than 1/16 of an inch, which is within the tolerances of most government forms. However if that is not okay, you're in for a world of headache if you need to support different brands/classes of printers. This will be true no matter what software you go with.
As far as software to do it directly goes, it depends on the application. If you just need to dump out a few W4's then buying a package that prints from a standard format (.csv, excel, etc) to a W4 is probably going to work out okay. If you need to handle much more complex forms (like the HCFA), you will come out better by purchasing a professional reporting tool.
If it's a simple output, you'll be able to find cheap software that does it for you. Cost is going to relate directly to the complexity and number of different forms you need to support.