Print the text over many pages : Print « Development « Flash / Flex / ActionScript






Print the text over many pages

 
package {

    import flash.display.Sprite;
    import flash.text.TextField;
    import flash.text.TextFieldAutoSize;
    import flash.net.URLLoader;
    import flash.net.URLRequest;
    import flash.events.Event;
    import flash.printing.PrintJob;
         import flash.geom.Rectangle;
         public class Printing extends Sprite {
     
             private var _printableContent:Sprite = new Sprite();
             private var _textField:TextField = new TextField();
             private var _loader:URLLoader = new URLLoader();
     
             public function Printing() {
                 _loader.load(new URLRequest("http://www.java2s.com/m.txt"));
                 _loader.addEventListener(Event.COMPLETE, completeHandler);
     
                 _textField.width = 400;
                 _textField.multiline = true;
                 _textField.wordWrap = true;
                 _textField.autoSize = TextFieldAutoSize.LEFT;
     
                 addChild(_printableContent);
                 _printableContent.addChild(_textField);
             }
     
             private function completeHandler(event:Event):void {
                 _textField.text = _loader.data;
                 var printJob:PrintJob = new PrintJob();
                 if(printJob.start()) {
                     var pages:Number = Math.ceil(_textField.height /  printJob.pageHeight);
     
                     _textField.width = printJob.pageWidth;
     
                     for(var i:Number = 0; i < pages; i++) {
                         printJob.addPage(_printableContent, new Rectangle(0, i *  printJob.pageHeight, printJob.pageWidth, printJob.pageHeight));
                     }
                     printJob.send();
                     _textField.width = 400;
                 }
             }
         }
     }

        








Related examples in the same category

1.Adding Print Functionality to Applications
2.Add pages to print job
3.Print out a text file