接上篇,同样的项目,又涉及打印,总结后也一并发出来吧,看到很多人在求无弹出框的打印方式,好不容易找到某位老手写的Simple,自己改改就用上了,效果还不错。
直接上代码,老样子,没有包名。
package { import flash.printing.*; import flash.display.Sprite; import flash.text.TextField; import flash.display.Stage; import flash.geom.Rectangle; public class PrintInfo extends Sprite { //private var bg:Sprite; private var text:TextField; public function PrintInfo(printInfo:String):void { init(printInfo); } public function print():void { this.width=1024; this.height=200; var pj:PrintJob = new PrintJob(); var options:PrintJobOptions = new PrintJobOptions(); //options.printAsBitmap = true; //pj.printer = "POS-58" pj.orientation = PrintJobOrientation.PORTRAIT; var uiOpt:PrintUIOptions = new PrintUIOptions(); try { if (pj.start2(uiOpt,false)) { pj.addPage(this, null, options); } } catch (e:Error) { //do nothing } pj.send(); /*if (pj.start2()) { try { pj.addPage(this,new Rectangle(0,0,300,300)); } catch (e:Error) { //do nothing } pj.send(); }*/ } private function init(printInfo:String):void { text = new TextField(); text.text = printInfo; addChild(text); } } }
PS:这里也要附带说一下,小子在测试的时候身边是没有打印机的,刚好装了OneNote,发现可以打印到OneNote上面去,这个不错,大家如果有类似问题,可以装个OneNote试试,当然,有打印机的情况下就没必要那么麻烦了。
上一篇: 使用Flash AIR创建桌面无提示拍照应用示例 下一篇: 依然有效的优惠me域名转入方法