Announcement

Collapse
No announcement yet.

XML:Fo Anfänger

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • XML:Fo Anfänger

    Hallo,

    Ich muss im laufe meines Projektes Daten die ich aus einem XML bekomme
    mithilfe von XML:FO in ein PDF wandeln.
    Nur leider hab ich keine ahnung wie ich anfangen soll Ich les mich zwar grad in einiges ein aber ein paar Anregungen wären vllt nicht schlecht.
    Z.b. paar beispiele wie man Tabellen macht usw

    Vielen dank schon mal im vorraus

  • #2
    Als Link-Einstieg ist Wikipedia immer ganz gut zu gebrauchen.

    Comment


    • #3
      ja des is klar aber ich bräucht vllt so ein kleines praktisches beispiel, denn ich find mit sowas lernt man 10mal mehr als sich theoretisch da durch zuarbeiten ^^

      trotzdem für die antwort

      mfg

      Comment


      • #4
        Originally posted by koala View Post
        ja des is klar aber ich bräucht vllt so ein kleines praktisches beispiel, denn ich find mit sowas lernt man 10mal mehr als sich theoretisch da durch zuarbeiten ^^
        Und? Ein Link in diesem Wikipedia-Artikel führt dich auf eine Tutorial-Seite

        Comment


        • #5
          so ich hab mir zwar nicht dein tutorial durchgearbeitet aber dafür einige andere,
          So ich hab au schon wunderbar einige PDF`s erzeugt aber nun möchte ich gern
          FO mit "normalen" XSL verknüpfen nur leider will mir das irgendwie nicht gelingen ....
          hät jemand vllt ein code schnipsel damit ich mir anschauen kann wie das genau funktioniert`?

          Comment


          • #6
            Wenn FO mit "normalem XSL verknüpfen" meint, dass aus XML-Daten mittels Transformation ein FO-Dokument erzeugt werden soll, dann betrachte diesen Ansatz:

            XML-Struktur:
            Code:
            <?xml version="1.0" encoding="UTF-8"?>
            <texte>
              <text>Hallo Welt!</text>
              <text>Noch ein Text ...</text>
            </texte>
            XSLT-Stylesheet:
            Code:
            <?xml version="1.0" encoding="UTF-8"?>
            <xsl:stylesheet version="1.0"
              xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
              xmlns:fo="http://www.w3.org/1999/XSL/Format">
            
              <xsl:output method="xml" version="1.0" encoding="UTF-8"/>
            
              <xsl:template match="texte">
                <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
            
                  <fo:layout-master-set>
                    <fo:simple-page-master master-name="A4-hoch"
                     page-height="29.7cm" page-width="21cm" margin-top="2cm"
                     margin-bottom="2cm" margin-left="3cm" margin-right="2cm">
                      <fo:region-body/>
                    </fo:simple-page-master>
                  </fo:layout-master-set>
            
                  <fo:page-sequence master-reference="A4-hoch">
                    <fo:flow flow-name="xsl-region-body">
                      <xsl:apply-templates select="text"/>
                    </fo:flow>
                  </fo:page-sequence>
            
                </fo:root>
              </xsl:template>
            
              <xsl:template match="text">
                <fo:block font-family="sans-serif" font-size="14pt">
                  <xsl:value-of select="."/>
                </fo:block>
              </xsl:template>
            
            </xsl:stylesheet>
            FO-Ergebnis:
            Code:
            <?xml version="1.0" encoding="UTF-8"?>
            <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
            
              <fo:layout-master-set>
                <fo:simple-page-master master-name="A4-hoch"
                 page-height="29.7cm" page-width="21cm" margin-top="2cm"
                 margin-bottom="2cm" margin-left="3cm" margin-right="2cm">
                  <fo:region-body/>
                </fo:simple-page-master>
              </fo:layout-master-set>
            
              <fo:page-sequence master-reference="A4-hoch">
                <fo:flow flow-name="xsl-region-body">
                  <fo:block font-family="sans-serif" font-size="14pt">Hallo Welt!</fo:block>
                  <fo:block font-family="sans-serif" font-size="14pt">Noch ein Text ...</fo:block>
                </fo:flow>
              </fo:page-sequence>
            
            </fo:root>

            Comment


            • #7
              Vielen dank für das Code beispiel
              eine frage hab ich noch dazu, was hat der punkt hier zu bedeuten?

              Code:
              <xsl:value-of select="."/>
              heisst des einfach das alle Elemente von "text" genommen werden sollen?

              mfg
              Zuletzt editiert von koala; 14.02.2008, 09:50.

              Comment


              • #8
                Der Punkt bezieht sich auf den jeweiligen Kontextknoten, das sind im Beispiel die Textknoten der text-Elemente.

                Comment


                • #9
                  vielen dank

                  Comment

                  Working...
                  X