Sandra: Texttabelle mit XSL generieren

Hallo zusammen,

ich versuche gerade mit einem XSL-Stylesheet aus einem XML eine reine Textausgabe (kein html; xsl:output method="text") zu generieren.

Gibt es eine Möglichkeit so eine Art Tabelle zu erzeugen, damit der Text in ordentlichen Spalten dasteht und ich die ganze Einrückerei nicht "von Hand" mit Tabulatoren machen muss?

Ich hab es schon mit den html-Tags versucht, aber die werden bei der Ausgabe ignoriert.

Bin bloody-beginner, vielleicht kann mir ja jemand helfen...

Danke schonmal,
Sandra

  1. Hi,

    ich versuche gerade mit einem XSL-Stylesheet aus einem XML eine reine Textausgabe (kein html; xsl:output method="text") zu generieren.

    also "die richtige Zahl von Leerzeichen". Du benötigst die maximale Länge innerhalb der Spalte, die Zahl der Leerzeichen für den Abstand, und dann eigentlich nur noch die aktuelle Länge. Ein paar XPath-Ausdrücke also, sinnvolle Verwendung von position(), vielleicht die eine oder andere Variable, und String-Funktionen - das war's. Das größte Problem wird wohl sein, einen aus $n Leerzeichen bestehenden String zu erzeugen; hier tut eine kleine Rekursion Wunder.

    Ich hab es schon mit den html-Tags versucht, aber die werden bei der Ausgabe ignoriert.

    Natürlich, schließlich hat Text nichts mit HTML zu tun.

    Bin bloody-beginner,

    Dann hast Du umso mehr Spaß beim Lernen ;-)

    Cheatah

    --
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hi,

      Das größte Problem wird wohl sein, einen aus $n Leerzeichen bestehenden String zu erzeugen; hier tut eine kleine Rekursion Wunder.

      Wenn es eine Obergrenze gibt:
      Eine Variable mit einem konstanten String belegen, der mindestens so lang wie diese Obergrenze ist.
      Und davon kann man dann mit substring entsprechende Teile abschneiden...

      cu,
      Andreas

      --
      MudGuard? Siehe http://www.mud-guard.de/
      1. Hi,

        Eine Variable mit einem konstanten String belegen, der mindestens so lang wie diese Obergrenze ist.

        phhh! So einfach habe ich es mir früher auch mal gemacht ;-)

        Cheatah

        --
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
  2. Hallo,

    ich versuche gerade mit einem XSL-Stylesheet aus einem XML eine reine Textausgabe (kein html; xsl:output method="text") zu generieren.

    Gibt es eine Möglichkeit so eine Art Tabelle zu erzeugen, damit der Text in ordentlichen Spalten dasteht und ich die ganze Einrückerei nicht "von Hand" mit Tabulatoren machen muss?

    Die Idee mit der Variable ist gut , aber du könntest ruhig das Tabulatorzeichen verwenden: 	
    Also falls du mehrere Tabs brauchst: <xsl:variable name="tabulator" select="'&#x9;&#x9;'" />

    <xsl:value-of select="$tabulator" /><xsl:value-of select="wort" />

    Grüße
    Thomas