Sunday, 11 March 2012

PDF generation in flex


<?xml version="1.0"?>

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" backgroundColor="white" layout="absolute">
  <mx:Script><![CDATA[
     import mx.collections.ArrayCollection;
     import org.alivepdf.pages.Page;
           // import org.alivepdf.layout.Resize;
            import org.alivepdf.pdf.PDF;
            import org.alivepdf.layout.Orientation;
            import org.alivepdf.layout.Size;
            import org.alivepdf.layout.Unit;
            import org.alivepdf.display.Display;
            import org.alivepdf.saving.Method;
            import org.alivepdf.fonts.FontFamily;
            import org.alivepdf.fonts.Style;
            import org.alivepdf.colors.RGBColor;
     [Bindable]
     public var arr:ArrayCollection = new ArrayCollection([
        {Month:"Jan", Income:2000, Expenditure:1500},
        {Month:"Feb", Income:1000, Expenditure:200},
        {Month:"Mar", Income:1500, Expenditure:500},
  {Month:"Apr", Income:1002, Expenditure:226},
  {Month:"May", Income:2566, Expenditure:566},
  {Month:"Jun", Income:4478, Expenditure:476},
  {Month:"Jul", Income:7654, Expenditure:3654},
  {Month:"Aug", Income:1112, Expenditure:655},
  {Month:"Sep", Income:6546, Expenditure:244},
  {Month:"Oct", Income:545, Expenditure:445},
  {Month:"Nov", Income:2435, Expenditure:654},
  {Month:"Dec", Income:6354, Expenditure:356}
 
     ]);
    
    
      private var myPDF:PDF;
          
             function generatePDF(e:MouseEvent)
            {
                myPDF = new PDF(Orientation.LANDSCAPE, Unit.MM, Size.A3);
                myPDF.setDisplayMode(Display.FULL_WIDTH);
             myPDF.setDisplayMode(Display.DEFAULT);          
           myPDF.setDisplayMode(Display.REAL);
           myPDF.setDisplayMode(Display.FULL_PAGE);
            
                myPDF.addPage();
                myPDF.addImage (can);
                myPDF.save(Method.REMOTE,"http://localhost:9080/ermWeb/servlet/ggs.erm.servlet.setup3.CreatePDFServlet","drawing.pdf");
                myPDF.end();
            }

    
    
    
    
  ]]></mx:Script>
  <mx:Image height="31" width="43" source="@Embed(source='/pdf.gif')" click="generatePDF(event)" id="generate_btn" toolTip="click to save as pdf" x="502" y="19"/>
  <mx:Canvas width="577" height="458" x="237" y="58" id="can">
    <mx:BarChart id="BarChart" dataProvider="{arr}" showDataTips="true" width="408" height="323" x="84.5" y="19">
       <mx:verticalAxis>
          <mx:CategoryAxis
               dataProvider="{arr}"
               categoryField="Month"
          />
       </mx:verticalAxis>
       <mx:series>
          <mx:BarSeries
               yField="Month"
               xField="Income"
               displayName="Income"
          />
          <mx:BarSeries
               yField="Month"
               xField="Expenditure"
               displayName="Expenditure"
          />
       </mx:series>
    </mx:BarChart>
    <mx:Legend x="84.5" y="361" dataProvider="{BarChart}" width="408" height="29"/>
  </mx:Canvas>
</mx:Application>

No comments:

Post a Comment