+ Antworten
Ergebnis 1 bis 7 von 7

Thema: Serverseitige PDF generierung

  1. #1
    TP-Specialist Dannys ist auf einem guten Weg Avatar von Dannys
    Registriert seit
    Apr 2001
    Ort
    Cologne / Germany
    Beiträge
    2.056

    Serverseitige PDF generierung

    hi all,

    hat jemand Erfahrung in der `on the fly` generierung von PDF Dokumenten ?

    Kunden sollen die Rechnungen online einsehen können und bei bedarf sich ein PDF ausdrucken können. Da man
    jedoch nicht für alle Kunden die Rechnungen bereits als Pdf vorhalten möchte, sollen diese erst auf wunsch generiert werden.


    dan
    ----------
    Kennt Ihr schon meine Blogs ?

    Das webTVblog.de
    Das e-commerce-blog.de
    ----------

  2. #2
    TP-Specialist Stuck Mojo ist ein richtiges Arbeitstier - DANKE Stuck Mojo ist ein richtiges Arbeitstier - DANKE Stuck Mojo ist ein richtiges Arbeitstier - DANKE Stuck Mojo ist ein richtiges Arbeitstier - DANKE Stuck Mojo ist ein richtiges Arbeitstier - DANKE Stuck Mojo ist ein richtiges Arbeitstier - DANKE Avatar von Stuck Mojo
    Registriert seit
    Feb 2001
    Ort
    Helmstedt/Wolfsburg
    Beiträge
    4.108
    Hi !!

    Mit PHP nutzt man für so etwas PDFLib (teuer) + PDI (noch teurer) oder man bedient sich einer Freeware-Klasse FPDF (www.fpdf.org).

    FPDF habe ich schon sehr oft eingesetzt und ist einfach Klasse. Für Rechnungsgenerierung habe ich eine extra Klasse geschrieben, die eine XML-Datei als Vorlage nimmt und daraus ein PDF-Dokument erstellt (sagen wir mal meine einfache Version von FOP). Also braucht man wenig Programmieraufwand, da Vorlagen oder existierende PDFs bei FPDF nicht eingelesen werden können und ansonsten komplett via PHP programmiert werden müssen. Bei Interresse PM

    Gruss
    Jan

  3. #3
    TP-Special Mod webmichl lebt für das TP und seine User webmichl lebt für das TP und seine User webmichl lebt für das TP und seine User webmichl lebt für das TP und seine User webmichl lebt für das TP und seine User webmichl lebt für das TP und seine User webmichl lebt für das TP und seine User webmichl lebt für das TP und seine User webmichl lebt für das TP und seine User webmichl lebt für das TP und seine User Avatar von webmichl
    Registriert seit
    Jun 2001
    Ort
    8°21' O 49°1' N
    Beiträge
    8.635

    und für die Perl-Umgebung...

    Bin gerade dabei, mich hierin einzuarbeiten. Vorteil: auch komplexe PDF-Seiten sind möglich. Nachteil: so gut wie keine Dokumentation - Perlkentnisse und Geduld sind Vorbedingung...

    Gruß, der Michl



    * * * if you want them to RTFM, make a better FM! * * *


  4. #4
    TP-Specialist Dannys ist auf einem guten Weg Avatar von Dannys
    Registriert seit
    Apr 2001
    Ort
    Cologne / Germany
    Beiträge
    2.056
    supie die jungs,

    womit macht man denn die Vorlage ? Muss die nicht in Postscript geschrieben werden also irgendwie mit Acrobat ? und gabs da nicht auch eine fies teure Lösung von Adobe ?

    dan
    ----------
    Kennt Ihr schon meine Blogs ?

    Das webTVblog.de
    Das e-commerce-blog.de
    ----------

  5. #5
    TP-Special Mod webmichl lebt für das TP und seine User webmichl lebt für das TP und seine User webmichl lebt für das TP und seine User webmichl lebt für das TP und seine User webmichl lebt für das TP und seine User webmichl lebt für das TP und seine User webmichl lebt für das TP und seine User webmichl lebt für das TP und seine User webmichl lebt für das TP und seine User webmichl lebt für das TP und seine User Avatar von webmichl
    Registriert seit
    Jun 2001
    Ort
    8°21' O 49°1' N
    Beiträge
    8.635
    Original geschrieben von Dannys
    swomit macht man denn die Vorlage ? Muss die nicht in Postscript geschrieben werden also irgendwie mit Acrobat ?
    Nö - zumindest bei der Perl-Lösung positionierst Du die einzelnen Elemente ( Texte, Grafiken, Linien usw ) codemäßig per x/y-Koordinaten ( das ist einmal mehr oder weniger ne Heidenarbeit, aber anschliessend geht's ratzfatz ).

    Gruß, der Michl



    * * * if you want them to RTFM, make a better FM! * * *


  6. #6
    TP-Specialist Stuck Mojo ist ein richtiges Arbeitstier - DANKE Stuck Mojo ist ein richtiges Arbeitstier - DANKE Stuck Mojo ist ein richtiges Arbeitstier - DANKE Stuck Mojo ist ein richtiges Arbeitstier - DANKE Stuck Mojo ist ein richtiges Arbeitstier - DANKE Stuck Mojo ist ein richtiges Arbeitstier - DANKE Avatar von Stuck Mojo
    Registriert seit
    Feb 2001
    Ort
    Helmstedt/Wolfsburg
    Beiträge
    4.108
    Jo, bei FPDF ists genauso - Jedes Element genau positionieren. Also hat man nicht direkt eine Vorlage, aber man kann das PDF-Objekt auch serialisieren und als "Vorlage" speichern.
    Mit meinen XML-Parser für FPDF beschreibt man das PDF ähnlich einem HTML-File:
    Code:
    <template>
      <!--<pdf orientation="P" unit="pt" format="A4">-->
        <compression value="1" />
        <page orientation="P">
           <image src="../images/bg.png" height="223" x="60" y="240" />
           <text x="250" y="40" width="300" font="Arial" fontsize="18" fontcolor="#000000">
             <span fontcolor="#FFFF00" fontsize="20">III</span><span fontcolor="#FF0000" fontsize="24">I</span>
             <span fontcolor="#00FFFF" fontsize="20">III</span>
               &nbsp; COMPANY NAME
           </text>
           <text x="40" y="90" width="300" font="Arial" fontsize="12" fontcolor="#000000">
             <span fontsize="6">setasign.webdesign &middot; Juliusstraße 12 &middot; D-38350 Helmstedt</span>
             <br />
             {FIRSTNAME} {LASTNAME}<br />
             {COMPANY}
             {STREET}<br />
             <br />
             {PLZ} {CITY}<br />
             {LAND}
           </text>
           <text x="410" width="200">
            <br /><br />
            <br /><br />
            <br />
            Helmstedt, {DATE}
           </text>
           <text x="100" width="300">
             <br /><br /><br />
             <b><u>INVOICE No. {INVOICENUMBER}</u></b>
           </text>
           <text x="60" width="400">
            <br /><br /><br />
            According to our accepted conditions of use, we invoice the following:
           </text>
           <table x="60" y="+20" cellpadding="2" cellspacing="0" border="0" borderwidth="0.5">
             <tr>
               <td align="L" style="B" border="B">Number</td>
               <td align="L" style="B" border="B">Units</td>
               <td align="L" style="B" width="200" border="B">Description</td>
               <td align="C" style="B" border="B">Price per<br />unit (Euro)</td>
               <td align="C" style="B" border="B">Price of all<br />units (Euro)</td>
             </tr>
             <tr class="repeater" datasource="$GLOBALS[testdatas]">
               <td align="C">{NUMBER}</td>
               <td align="C">{UNITS}</td>
               <td align="L" width="250">{DESCRIPTION}</td>
               <td align="C">{UNITPRICE}</td>
               <td align="C">{PRICE}</td>
             </tr>
             <tr>
               <td border="T"></td>
               <td border="T"></td>
               <td align="R" border="T">VAT (16 %)</td>
               <td border="T"></td>
               <td border="TB" align="C">{VAT}</td>
             </tr>
             <tr>
               <td></td>
               <td></td>
               <td align="R" style="B">Total amount</td>
               <td></td>
               <td border="T" style="BU" align="C">{TOTALAMOUNT}</td>
             </tr>
           </table>
           <text x="70" y="580" font="Arial" fontsize="16" fontcolor="#000000" width="300">
             Jan Slabon
           </text>
           <image src="../images/unterschr.png" x="60" y="600" width="197" />
           <image src="../images/noaccess.jpg" x="350" y="580" width="100" if="$_GET[hidden]" />
           <footer align="C" x="40" y="790" width="520" fontsize="6" lineheight="8">
             setasign.webdesign &middot; Juliusstraße 12 &middot; D-38350 Helmstedt<br />
             tel. +49 5351 596652 &middot; fax +49 5351 596652 &middot; e-mail info@setasign-webdesign.de &middot; homepage http://www.setasign-webdesign.de<br/>
             konto-nr. 5057831 - Nord LB Helmstedt (BLZ 250 500 00) &middot; St.-Nr.: 28/139/04044
           </footer>
        </page>
      <!--</pdf>-->
    </template>
    Das ganze ist noch nicht 100% ausgereift, da ich das ganze "nur" für 1-2 Rechnungen gebraucht habe und mir bisher die Zeit gefehlt hat, das Teil fertig zu bauen.

    Gruss
    Jan

  7. #7
    TP-Specialist Dannys ist auf einem guten Weg Avatar von Dannys
    Registriert seit
    Apr 2001
    Ort
    Cologne / Germany
    Beiträge
    2.056
    Danke ! Jungs Ihr habt mir sehr geholfen !! dan
    ----------
    Kennt Ihr schon meine Blogs ?

    Das webTVblog.de
    Das e-commerce-blog.de
    ----------

+ Antworten

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51