Handbuch durchsuchen:

- Startseite
- Einleitung
- Hallo Welt!
- Grundlagen
  - Erstellen eines Layoutregelwerks
  - Aufbau der Datendatei und des Layoutregelwerks
  - Objekte ausgeben
  - Raster
  - Bereiche auf der Seite (PositioningArea)
  - Dateiorganisation
  - Silbentrennung / Spracheinstellungen
  - Einbinden von Schriftarten
  - Textformate
  - Textformatierung
  - Farben
- Programmierung
- Bilder einbinden
- Tabellen
- Fortgeschrittene Themen
  - Lesezeichen (Bookmarks)
  - Erzeugen von XML-Strukturen
  - Druckausgabe / Schnittmarken
  - CSS
  - Gruppen (virtuelle Objekte)
  - Virtuelle Seiten
  - Rotieren von Inhalten
  - Sortieren von Daten
  - Umfließen von Bildern
  - Seitentypen
  - Starten des Publishers über den Hotfolder
  - Lua-Filter / Datenvorverarbeitung
  - Schemavalidierung
  - Qualitätssicherung (PDF-Vergleich)
  - Fehlersuche / Debugging
  - Servermodus
  - Steuerung des Layouts beim Aufruf des Publishers
  - Bilder mit MetaPost erstellen und einbinden
- Kochbuch
  - Daumenregister
  - Mehrseitige PDF-Dateien einbinden
  - Layoutoptimierung mithilfe von Gruppen
  - Aufzählungslisten nachahmen
  - Verzeichnisse erstellen
  - Inhaltsverzeichnis in einem Durchlauf erstellen
  - Seitenzahlen: Seite x von y
- Installationsanleitung
- Dateinamen im Publisher
- Voreinstellungen im speedata Publisher
- Starten des Publishers über die Kommandozeile
- Konfiguration des Publishers
- Längenangaben und Maßeinheiten
- XPath- und Layoutfunktionen
- Interne Variablen
- XML Editor mit Schema verbinden
  - Visual Studio Code
  - OxygenXML
  - Atom
- Liste der Änderungen
- Glossar
- Kompatibilität mit anderer Software
- Befehlsreferenz
  - A
  - Action
  - AddSearchpath
  - AtPageCreation
  - AtPageShipout
  - AttachFile
  - Attribute
  - B
  - Barcode
  - Bold
  - BoldItalic
  - Bookmark
  - Box
  - Br
  - Case
  - Circle
  - ClearPage
  - Color
  - Column
  - Columns
  - Compatibility
  - Contents
  - Copy-of
  - DefineColor
  - DefineColorprofile
  - DefineFontalias
  - DefineFontfamily
  - DefineGraphic
  - DefineMatter
  - DefineTextformat
  - Element
  - Fallback
  - Fontface
  - ForAll
  - Frame
  - Grid
  - Group
  - Groupcontents
  - HSpace
  - Hyphenation
  - I
  - Image
  - Include
  - Initial
  - InsertPages
  - Italic
  - Layout
  - Li
  - LoadDataset
  - LoadFontfile
  - Loop
  - Makeindex
  - Margin
  - Mark
  - Message
  - NewPage
  - NextFrame
  - NextRow
  - NoBreak
  - Ol
  - Options
  - Otherwise
  - Output
  - Overlay
  - Pageformat
  - Pagetype
  - Paragraph
  - PDFOptions
  - PlaceObject
  - Position
  - PositioningArea
  - PositioningFrame
  - ProcessNode
  - Record
  - Regular
  - Rule
  - SaveDataset
  - SavePages
  - SetGrid
  - SetVariable
  - SortSequence
  - Stylesheet
  - Span
  - Sub
  - Sup
  - Switch
  - Table
  - TableNewPage
  - Tablefoot
  - Tablehead
  - Tablerule
  - Td
  - Text
  - Textblock
  - Tr
  - Trace
  - Transformation
  - U
  - Ul
  - Until
  - URL
  - Value
  - VSpace
  - While

Version 4.8.0
Handbuch durchsuchen

- Startseite
- Einleitung
- Hallo Welt!
- Grundlagen
  - Erstellen eines Layoutregelwerks
  - Aufbau der Datendatei und des Layoutregelwerks
  - Objekte ausgeben
  - Raster
  - Bereiche auf der Seite (PositioningArea)
  - Dateiorganisation
  - Silbentrennung / Spracheinstellungen
  - Einbinden von Schriftarten
  - Textformate
  - Textformatierung
  - Farben
- Programmierung
- Bilder einbinden
- Tabellen
- Fortgeschrittene Themen
  - Lesezeichen (Bookmarks)
  - Erzeugen von XML-Strukturen
  - Druckausgabe / Schnittmarken
  - CSS
  - Gruppen (virtuelle Objekte)
  - Virtuelle Seiten
  - Rotieren von Inhalten
  - Sortieren von Daten
  - Umfließen von Bildern
  - Seitentypen
  - Starten des Publishers über den Hotfolder
  - Lua-Filter / Datenvorverarbeitung
  - Schemavalidierung
  - Qualitätssicherung (PDF-Vergleich)
  - Fehlersuche / Debugging
  - Servermodus
  - Steuerung des Layouts beim Aufruf des Publishers
  - Bilder mit MetaPost erstellen und einbinden
- Kochbuch
  - Daumenregister
  - Mehrseitige PDF-Dateien einbinden
  - Layoutoptimierung mithilfe von Gruppen
  - Aufzählungslisten nachahmen
  - Verzeichnisse erstellen
  - Inhaltsverzeichnis in einem Durchlauf erstellen
  - Seitenzahlen: Seite x von y
- Installationsanleitung
- Dateinamen im Publisher
- Voreinstellungen im speedata Publisher
- Starten des Publishers über die Kommandozeile
- Konfiguration des Publishers
- Längenangaben und Maßeinheiten
- XPath- und Layoutfunktionen
- Interne Variablen
- XML Editor mit Schema verbinden
  - Visual Studio Code
  - OxygenXML
  - Atom
- Liste der Änderungen
- Glossar
- Kompatibilität mit anderer Software
- Befehlsreferenz
  - A
  - Action
  - AddSearchpath
  - AtPageCreation
  - AtPageShipout
  - AttachFile
  - Attribute
  - B
  - Barcode
  - Bold
  - BoldItalic
  - Bookmark
  - Box
  - Br
  - Case
  - Circle
  - ClearPage
  - Color
  - Column
  - Columns
  - Compatibility
  - Contents
  - Copy-of
  - DefineColor
  - DefineColorprofile
  - DefineFontalias
  - DefineFontfamily
  - DefineGraphic
  - DefineMatter
  - DefineTextformat
  - Element
  - Fallback
  - Fontface
  - ForAll
  - Frame
  - Grid
  - Group
  - Groupcontents
  - HSpace
  - Hyphenation
  - I
  - Image
  - Include
  - Initial
  - InsertPages
  - Italic
  - Layout
  - Li
  - LoadDataset
  - LoadFontfile
  - Loop
  - Makeindex
  - Margin
  - Mark
  - Message
  - NewPage
  - NextFrame
  - NextRow
  - NoBreak
  - Ol
  - Options
  - Otherwise
  - Output
  - Overlay
  - Pageformat
  - Pagetype
  - Paragraph
  - PDFOptions
  - PlaceObject
  - Position
  - PositioningArea
  - PositioningFrame
  - ProcessNode
  - Record
  - Regular
  - Rule
  - SaveDataset
  - SavePages
  - SetGrid
  - SetVariable
  - SortSequence
  - Stylesheet
  - Span
  - Sub
  - Sup
  - Switch
  - Table
  - TableNewPage
  - Tablefoot
  - Tablehead
  - Tablerule
  - Td
  - Text
  - Textblock
  - Tr
  - Trace
  - Transformation
  - U
  - Ul
  - Until
  - URL
  - Value
  - VSpace
  - While

- This manual in English

# Textformatierung

`<Textblock>` und `<Text>` enthalten einen oder mehrere Absätze (Befehl `<Paragraph>`). Die eigentlichen Texte werden dort innerhalb von `<Value>` gekapselt. Es gibt zahlreiche Möglichkeiten, die Formatierung der Texte zu beeinflussen. Die Schalter für die Schriftschnitte wurden in Einbinden von Schriftarten 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.

    <PlaceObject>
      <Textblock width="11">
        <Paragraph>
          <Value>Text</Value>
          <Sub><Value>sub</Value></Sub>
          <Value> </Value>
          <Sup><Value>sup</Value></Sup>
          <Value> </Value>
          <U><Value>underline</Value></U>
          <Value> </Value>
          <Color name="green"><Value>green</Value></Color>
          <Value> </Value>
          <A href="https://www.speedata.de">
            <Value>link to the homepage</Value>
          </A>
          <HSpace leader=" . "/>
          <Value>right margin.</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>One</Value></Li>
          <Li><Value>Two</Value></Li>
        </Ol>
        <Ul>
          <Li><Value>One</Value></Li>
          <Li><Value>Two</Value></Li>
        </Ul>
      </Textblock>
    </PlaceObject>

| 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 width="10cm">
        <Paragraph>
          <Value>A wonderful serenity has taken possession </Value>
          <NoBreak><Value>of my entire soul, like these sweet mornings...</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 width="10cm">
      <Paragraph>
        <NoBreak maxwidth="10" reduce="cut" text="...">
          <Value>A wonderful serenity has taken possession of my entire soul, like these sweet mornings...</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 width="35">
            <Paragraph>
              <URL><Value>https://github.com/speedata/publisher/issues</Value></URL>
            </Paragraph>
          </Textblock>
        </PlaceObject>
      </Record>
    </Layout>

ergibt

(Siehe auch https://github.com/speedata/publisher/issues/173)

- Textformate
- Farben