Dirk: Zeilenumbruch bei der Wandlung nach pdf

Hallo,

ich habe ein kleines Problem, aber wer hat das nicht.
Ich benutze eine XML, die ich mit einem XSL Stylesheet und FOP zu einer PDF - Datei wandle, dabei geht mir leider die Formatierung der XML- Datei verloren.
Was natürlich auch ganz im Sinne des Erfinders ist, was soll ich mit (Ascii) Steuerzeichen in einer XML- Datei.
Aber nichts desto trotz hat irgendjemand eine Ahnung wie ich für FOP Fließtext formatieren kann, ohne einen <Tag> zu definieren und dann mit XSLT und in fo:blöcken zu verarbeiten.
Ansonsten muß ich nämlich in den sauren Apfel beissen und die Schemata anpassen.....und jeden Absatz in ein <Tag> legen.

bis dann dirk

PS. Notation im HTML Stil <br> <p> laufen irgendwie nicht (Obwohl in vielen Beispielen so zu sehen).
xsl:text läuft auch nicht :-(

  1. Hi,

    Ich benutze eine XML, die ich mit einem XSL Stylesheet und FOP zu einer PDF - Datei wandle, dabei geht mir leider die Formatierung der XML- Datei verloren.
    Was natürlich auch ganz im Sinne des Erfinders ist, was soll ich mit (Ascii) Steuerzeichen in einer XML- Datei.
    Aber nichts desto trotz hat irgendjemand eine Ahnung wie ich für FOP Fließtext formatieren kann, ohne einen <Tag> zu definieren und dann mit XSLT und in fo:blöcken zu verarbeiten.
    Ansonsten muß ich nämlich in den sauren Apfel beissen und die Schemata anpassen.....und jeden Absatz in ein <Tag> legen.

    soweit ich weiß, kannst Du keinen Fließtext einfach so in die XML-Datei schreiben.
    Der sollte schon in einem Blockelement stehen, und dann sollte auch <br/> klappen.
    Ansonsten poste doch vielleicht mal ein Codebeispiel.

    Gruß aus Bilk

    Rainer

    1. Moin,

      Ansonsten poste doch vielleicht mal ein Codebeispiel.

      Gruß aus Bilk

      Rainer

      <Leistungsbeschreibung>
      <BausteinMitU>
      <BausteinUeberschrift>Top-Modell</BausteinUeberschrift>
      <Baustein>

      • Kurbeihilfe und Rehabilitation
      • Verdoppelung des Krankenhaustagegeldes bei Auslandsaufenthalten nach einem Unfall
      • Doppelte Todesfalleistung bei Unfalltod beider Elternteile
      • Besondere Leistungen bei Nutzung öffentlicher Verkehrsmittel
      • Leistung nach ambulanten Operationen
      • Verlängerung des Anspruchs auf Krankenhaustagegeld
      • Zahlung der Invaliditätsleistung bis zum 75. Lebensjahr
      • Schulausfallgeld
        </Baustein>
        </BausteinMitU>
        </Leistungsbeschreibung>

      So sieht in etwa so eine XML- Datei aus.
      Nun wäre es natürlich schön wenn die Formatierung beibehalten werden könnte.
      Wie schon gesagt man kann sich einen <Tag> definieren und auf diesen Mappen, ist aber ganz schön aufwendig...:-(

      gruss dirk

      1. Hi,

        <Leistungsbeschreibung>
        <BausteinMitU>
        <BausteinUeberschrift>Top-Modell</BausteinUeberschrift>
        <Baustein>

        • Kurbeihilfe und Rehabilitation
        • Verdoppelung des Krankenhaustagegeldes bei Auslandsaufenthalten nach einem Unfall
        • Doppelte Todesfalleistung bei Unfalltod beider Elternteile
        • Besondere Leistungen bei Nutzung öffentlicher Verkehrsmittel
        • Leistung nach ambulanten Operationen
        • Verlängerung des Anspruchs auf Krankenhaustagegeld
        • Zahlung der Invaliditätsleistung bis zum 75. Lebensjahr
        • Schulausfallgeld
          </Baustein>
          </BausteinMitU>
          </Leistungsbeschreibung>

        Von der logischen Sicht her ist das eine (Aufzählungs)liste, deren Elemente jeweils in ein eigenes Tag eingeschlossen werden und dann mit fo:list-item formatiert werden sollten.
        Ist nur dummerweise - wie Du schon erkannt hast - eine Menge Arbeit.
        Ich glaube, ich würde sowas dann mit awk zu lösen versuchen, da geht's dann bei bekannter Struktur relativ einfach.
        Zur Struktur: Vielleicht BausteinMitU weglassen, dafür dann BausteinUeberschrift in Baustein packen und danach mehrere Elemente Bausteinhighlight o.ä. mit den einzelnen Listenpunkten definieren (nur so'n Vorschlag)...

        Gruß aus Bilk

        Rainer

  2. HALLO Dirk,

    Aber nichts desto trotz hat irgendjemand eine Ahnung wie ich für FOP Fließtext formatieren kann, ohne einen <Tag> zu definieren und dann mit XSLT und in fo:blöcken zu verarbeiten.
    Ansonsten muß ich nämlich in den sauren Apfel beissen und die Schemata anpassen.....und jeden Absatz in ein <Tag> legen.

    versuche es mit:

    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:preserve-space elements="Baustein" />

    <!-- andere xsl-elemente etc. -->
    <xsl:template match="Baustein">
     <fo:block linefeed-treatment="preserve">
      <xsl:value-of select="" />
     </fo:block>
    </xsl:template>
    </xsl:stylesheet>

    grüße
    thomas