Hmm - I guess you could try not embedding characters in the fonts so that windows deals with them rather than flash. If that doesn't work, you could force the application to use device fonts only and see if that works.
The thing is, if flash is exporting it all as a bmp to the printer then it won't be treated as text and just an image.
Thanks for the reply.
I am not embedding any fonts in the file, I'm just using plain Arial 12 pt font. I tried using the device font _sans, but when I print - it doesn't show up at all.
I ran into the same issue. Device fonts just don't seem to print so I used html formatting to double the size of the text, then took a BitmapData snapshot of it, scaled the snapshot back down to the original size, placed it where the original text was and then print it. Sheesh.
var printable : Sprite = new Sprite ();
printPage.tf.htmlText = "<font size='40'>" + printPage.tf.text + "</font>";
var bd : BitmapData = new BitmapData ( printPage.tf.width, printPage.tf.height, true, 0x00FFFFFF );
bd.draw ( printPage.tf, null, null, null, null, true );
var bmp : Bitmap = new Bitmap ( bd, "never", true );
printPage.tf.htmlText = "<font size='20'>" + printPage.tf.text + "</font>";
printPage.tf.x = wherever you want it;
printPage.tf.y = wherever you want it;
printPage.addChild ( printable );
printable.addChild ( bmp );
printable.width = printPage.tf.width;
printable.height = printPage.tf.height;
printable.x = wherever you want it
printable.y = wherever you want it
var pj:PrintJob = new PrintJob ();
var rect : Rectangle = new Rectangle ( 30, -10, 792, 612 );
var options : PrintJobOptions = new PrintJobOptions ();
options.printAsBitmap = true;
pj.addPage ( printPage, rect, options );
If anybody knows a way to print device font text without a crazy hack like this please let me know.