von Patrick Gundlach |

Feature der Woche: Textformatierung

Diese Woche geht es ganz allgemein um Textformatierung.

Es gibt zahlreiche Möglichkeiten, die Formatierung der Texte zu beeinflussen. Die Schalter für die Schriftschnitte (<Fontface fontface="...">) wurden in Feature der Woche: Schriftarten einbinden vorgestellt.

Mit einer ähnlichen Funktionalität gibt es die folgenden Befehle:

<Sub> und <Sup>
Tiefgestellter und hochgestellter Text.
<Fontface>
Schaltet vorübergehend auf eine andere Schriftart um.
<Color>
Gibt den eingeschlossenen Text in einer anderen Farbe aus.
<A>
Erzeugt ein Hyperlink.
<HSpace>
Fügt einen dehnbaren Leerraum (mit oder ohne Punkte) ein.
<U>
Unterstreichen.

Es folgt ein Beispiel, das die Auszeichnungen enthält.

<PlaceObject>
  <Textblock>
    <Paragraph>
      <Value>Text</Value>
      <Sub><Value>Tiefergestellt</Value></Sub>
      <Value> </Value>
      <Sup><Value>Hochgestellt</Value></Sup>
      <Value> </Value>
      <U><Value>Unterstrichen</Value></U>
      <Value> </Value>
      <Color name="green"><Value>Grün</Value></Color>
      <Value> </Value>
      <A href="https://www.speedata.de">
        <Value>Link zur Homepage</Value>
      </A>
      <HSpace leader=" . "/>
      <Value>rechter Rand.</Value>
    </Paragraph>
  </Textblock>
</PlaceObject>

Verschiedene Textauszeichnungen

Aufzählungslisten

Anstelle eines Absatzes kann auch eine Aufzählungsliste erscheinen. Diese wird mit <Ol> bzw. <Ul> für eine Liste mit Nummerierung (ordered list) und eine Liste mit Punkten (unordered list) angegeben. Die einzelnen Punkte müssen mit <Li> ausgezeichnet werden.

<PlaceObject>
  <Textblock>
    <Ol>
      <Li><Value>Eins</Value></Li>
      <Li><Value>Zwei</Value></Li>
    </Ol>
    <Ul>
      <Li><Value>Eins</Value></Li>
      <Li><Value>Zwei</Value></Li>
    </Ul>
  </Textblock>
</PlaceObject>

Listen

TIPP: Dieses Feature ist noch nicht wirklich robust. Die Listen können (derzeit) nicht geschachtelt werden. Es empfiehlt sich zu schauen, ob die Listen auch korrekt ausgegeben werden.

Verhindern von Textumbruch

Manche Überschriften und Eigennamen sollen nicht umbrochen werden. Dafür gibt es den Befehl <NoBreak>, der auf verschiedene Weisen einen Umbruch unterdrückt. Ein etwas übertriebenes Beispiel ist:

<PlaceObject>
  <Textblock>
    <Paragraph>
      <Value>Ein langer Text, der nur zur Illustration dient, </Value>
      <NoBreak><Value>während dies nicht umbrochen werden darf.</Value></NoBreak>
    </Paragraph>
  </Textblock>
</PlaceObject>

Die Voreinstellung bei NoBreak ist, dass der Teil zusammen hängen muss.

Alternativ kann man durch eine Vorgabe der maximalen Breite die Schriftgröße verringern oder den Text mit Auslassungspunkten kürzen.

<Textblock>
  <Paragraph>
    <Value>Ein langer Text, der nur zur Illustration dient, </Value>
    <NoBreak maxwidth="6" reduce="cut" text="...">
      <Value>während dies nicht umbrochen werden darf.</Value>
    </NoBreak>
  </Paragraph>
</Textblock>

Hier wird per cut der Text abgeschnitten und mit dem angegebenen Text aufgefüllt.

Umbrechen von URLs

Der Befehl <URL> dient zum leichteren Umbrechen von URLs. Es darf vornehmlich an Schrägstrichen (/) umbrochen werden, außerdem werden keine Trennstriche eingefügt. Es wird kein Hyperlink erzeugt, dafür ist der Befehl <A> zuständig.

<Layout
  xmlns="urn:speedata.de:2009/publisher/en"
  xmlns:sd="urn:speedata:2009/publisher/functions/en">

  <SetGrid nx="40" ny="10"/>
  <Trace grid="yes"/>
  <Pageformat width="90mm" height="5cm"/>
  <Record element="data">
    <PlaceObject>
      <Textblock>
        <Paragraph>
          <URL><Value>https://download.speedata.de/publisher/development/</Value></URL>
        </Paragraph>
      </Textblock>
    </PlaceObject>
  </Record>
</Layout>

ergibt

URLs dürfen nicht wie normaler Text behandelt werden.

Dieser Artikel bezieht sich auf den speedata Publisher in der Version 2.9.8. Andere Versionen haben womöglich andere Befehle oder die genannten Befehle zeigen ein anderes Verhalten. Bitte schau im Zweifelsfall in der Anleitung nach.

In der Serie »Feature der Woche« beschreibe ich einmal in der Woche mehr oder weniger nützliche Eigenschaften des Publishers. Kommentare gerne an mich per E-Mail oder einfach im Kommentarfeld.