OS/400 comes with transform objects (object type *WSCST — Workstation customization) to transform the formatting information in a spool file to what’s needed by a particular printer.
Unfortunately, I believe the only CANON printers supported are LIPS3 DBCS (Double-byte character set). I don’t know any specifics on the Cannon printers. What you can do is find a printer which supports the basic datastream you’re after and modify the *WSCST object. To do this you’ll have to RTVWSCST (Retrieve Workstation Customization Source) for an existing transform and then modify the source and CRTWSCST for your printer.
A search of the iSeries Support Knowledgebase yields a lot of information. If you’re really stumped, IBM has ConsultLine services (for fee) which can generate the proper *WSCST source for you.
The knowledge base can be found at: http://www-912.ibm.com/supporthome.nsf/document/20300257
I clicked on “Software Knowledge Base”, then “Search”, then I keyed “Support for ASCII Printers from Canon”. This yielded a list of Knowledge Base documents including one at the top titled “Support for ASCII Printers from Canon” This has information on setting up Host Print Transform for printers including the Canon imageRUNNER ir5000.