<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="init()" layout="absolute">
    <mx:Script>
        <![CDATA[
            import mx.printing.FlexPrintJobScaleType;
            import mx.printing.FlexPrintJob;
            import mx.controls.Image;
            import mx.graphics.ImageSnapshot;
            import mx.containers.VBox;
            import mx.charts.HitData;
            import mx.collections.ArrayCollection;
            import com.esri.solutions.flexviewer.utils.QueryUtil;
            import mx.validators.ValidationResult;
            import mx.rpc.events.FaultEvent;
            import mx.rpc.events.ResultEvent;

        private var content:String;
        var queryUtil:QueryUtil;
       [Bindable]
        private var rainDateArr:ArrayCollection;
        [Bindable]
        private var riverDateArr:ArrayCollection;
        [Bindable]
        private var rainArr:ArrayCollection;
        var stcd:String="mj01";
        var dt:Date=new Date("2009-9-12");
        private function oncezhanResult(event:ResultEvent):void
        {
            content= event.result.toString();   
        }
        private function onFault(event:FaultEvent):void
        {
        }
        private function init():void
        {
           service.GetRainLineByDate.send("mj01","2009-9-12");
           // service.HelloWorld.send("a","b");
           //service.GetRiverLineByDate.send();
           service.GetRiverLineByDate.send("mj01","2009-9-12");
           //service.GetHydrograph_rain.send("mj01");
        }
        private function onClick(event:MouseEvent):void
        {
            var str:String=queryUtil.getContent();
            //lb.text=str;
        }
        private function onResult(event:ResultEvent):void
        {
            var dd:String=(event.result as XML).inforTitle;
        }
         //当日雨量柱状图
        private function RainDateResult(event:ResultEvent):void
        {
            if(rainDateArr!=null)
            {
                rainDateArr.removeAll();
            }
            rainDateArr = event.result.Tables.ds.Rows;
               return;
        }
        //当日河道水位过程线
        private function RiverDateResult(event:ResultEvent):void
        {
            if(riverDateArr!=null)
            {
                riverDateArr.removeAll();
            }
            riverDateArr = event.result.Tables.ds.Rows;
               return;
        }
        private function onRiverDateFault(e:FaultEvent):void
        {
        }
        public function RainResult(event:ResultEvent) : void
        {
            if(rainArr!=null)
            {
                rainArr.removeAll();
            }
            rainArr = event.result.Tables.ds.Rows;
               return;
        }// end function
             public function myParseFunction(s:String):Date {
              // Get an array of Strings from the comma-separated String passed in.
             var a:Array = s.split(":");
              // Create the new Date object. Note that the month argument is 0-based (with 0 being January).
              var date:Date=new Date();
              var y:Number=date.fullYear
              var m:Number=date.month;
              var d:Number=date.date;
              var newDate:Date = new Date(y,m,d,a[0],a[1],a[2]);
              return newDate;
          }
            private function renderTips(data:HitData):String
            {
                var a:String=data.item.Z;
                var b:String=data.item.TM;
                return "时间:"+b+"\n"+"水位:"+a+"(m)";
            }

//打印的核心代码
            private function print(event:MouseEvent):void
            {   

                var printJob:FlexPrintJob = new FlexPrintJob();
                if(printJob.start())
                {
                        var printBox:VBox = new VBox();
                        printBox.styleName = "PrintBox";
                        printBox.width = 600;
                        printBox.horizontalScrollPolicy = "off";
                        printBox.verticalScrollPolicy = "off";
                        var bmpMap:BitmapData = ImageSnapshot.captureBitmapData(panel);
                        var bmp:Bitmap = new Bitmap(bmpMap); 
                        var printImg:Image = new Image();  
                        printImg.source = bmp;
                        printBox.addChild(printImg);
                        this.addChild(printBox);
                        printJob.addObject(printBox, FlexPrintJobScaleType.SHOW_ALL);
                        printJob.printAsBitmap;
                        this.removeChild(printBox);
                        printJob.send();
                }
            }
        ]]>
    </mx:Script>
    <mx:Style> 
     .ChineseFont 
    {  
        fontFamily:"Verdana","宋体";  
        fontSize:12;  
     }  
    </mx:Style> 
    <mx:WebService />
        </mx:Canvas>
</mx:Application>

Flex 图表打印

相关文章:

  • 2021-09-24
  • 2021-09-10
  • 2022-12-23
  • 2022-03-08
  • 2018-12-27
  • 2021-09-24
猜你喜欢
  • 2021-05-27
  • 2022-12-23
  • 2022-01-11
  • 2022-12-23
  • 2022-12-23
  • 2021-05-17
  • 2022-12-23
相关资源
相似解决方案