2009-07-08 4 views
0

Ich bin eine neue Biene zu flex. Was ich versuche zu tun ist, zu generieren und speichern Sie das Layout-Design, die nichts anderes als Leinwand in ein PDF-Format auf dem Server. Zur Zeit kann ich das PDF im Browser anzeigen (siehe Funktion unten :) aber kann die Datei nicht auf dem Server speichern.Flex Problem beim Speichern von PDF am Server

private function continueToPdf():void{ 
      myPDF = new PDF( Orientation.LANDSCAPE, Unit.MM, Size.A4); 
      myPDF.setDisplayMode (Display.FULL_WIDTH); 
      myPDF.addPage(); 
      myPDF.addImage(layout_cnv); 
      myPDF.save(Method.REMOTE, "http://flexindia.org/designtool/upload/create.php",Download.INLINE ,"drawing.pdf"); 
    } 

wo layout_cnv ist ein canvas.Also ich benutze AlivePDF.swc lbrary für diese. Die PHP-Datei auf dem Server ist create.php

    <?php 
       $method = $_GET['method']; 
       $name = $_GET['name']; 

       if (isset ($GLOBALS["HTTP_RAW_POST_DATA"])) { 

// get bytearray 
$pdf = $GLOBALS["HTTP_RAW_POST_DATA"]; 

// add headers for download dialog-box 
header('Content-Type: application/pdf'); 
header('Content-Length: '.strlen($pdf)); 
header('Content-disposition:'.$method.'; filename="'.$name.'"'); 
echo $pdf; 

    } else echo 'An error occured.'; 

      ?> 

mir jemand bitte helfen kann.

+0

jemand bitte helfen . –

+0

Ich bin verwirrt. Client-Seite ist flex, Server-Seite ist PHP. Wer muss das PDF, den Client oder den Server speichern? –

+0

muss nur auf der Serverseite gespeichert werden. –

Antwort

0

Endlich nach einigen Tagen habe ich die Lösung für das oben genannte Problem entdeckt. Hier für die Datei lokal auf dem Server Speichern Ich brauche nur ein paar Änderungen in der folgenden Funktion zu tun, wie:

 private function continueToPdf():void{ 
        myPDF = new PDF( Orientation.LANDSCAPE, Unit.MM, Size.A4); 
        myPDF.setDisplayMode (Display.FULL_WIDTH); 
        myPDF.addPage(); 
        myPDF.addImage(layout_cnv); 
        myPDF.save(Method.REMOTE, "create.php",Download.INLINE ,"drawing.pdf"); 
       } 

Wo create.php der Server-Skript ist wie folgt definiert:

 <?php 

     $fp = fopen('upload/drawing.pdf', 'wb'); 
     fwrite($fp, $GLOBALS['HTTP_RAW_POST_DATA' ]); 
     fclose($fp); 
     ?> 

    cheers :-) !!!