We've been researching 2d barcodes too. We currently use ID Automation's Code 128 barcode and they have 2d fonts as well. You can find out more about 2d barcodess at the bottom of this page:
http://www.idautomation.com/barcode-faq/
The encoding of the barcode can be done graphically or using font encoding. They have several different types of interface programs available (.net, dll, com object). There are many other companies that make similar products. Look around and read a lot before you commit to one solution.