There's a paid app called ePrint, which I believe works locally to printers attached to a wireless network (printers themselves don't need to be wireless) and doesn't appear to use a cloud service or need a PC in most cases. They have a free ePrint version that you can use to test the functionality before you pay for the full ePrint version.
Next there's PrintBot, this "Network printer driver" supports 1,000s of printer types connected to a local network. The free version lets you print a few pages to test, the full paid PrintBot Pro licensed version is unlimited.
Try both of those out and see which one works with your printer and apps.
There are also some free proprietary apps that work with specific hardware, HP ePrint should work, but only to HP printers (both older network enabled ones and newer ePrint enabled networked ones), Samsung MobilePrint should work (but only for Samsung printers).
MotoPrint lets you print to a lot of different printer types as long as they're connected to a wireless network (don't have to be wireless printers), annoyingly you can only install it on Motorola devices, so not putting down as an answer for you but someone else might find it useful.