SavePages

Dieser Befehl ist für zwei unterschiedliche Szenarien gedacht:

1: Alle Ausgaben innerhalb von SavePages werden intern gespeichert und nicht ins PDF ausgegeben. Sie können später mit InsertPages eingefügt werden. Hilfreich wenn die Ausgabe ggf. verworfen werden soll.

2: Im Modus »Zukünftige Seiten« wurde schon Platz für diese Seiten mit InsertPages reserviert.

Kindelemente

AddSearchpath, AttachFile, Bookmark, ClearPage, Copy-of, DefineColor, DefineFontalias, DefineFontfamily, DefineMatter, DefineTextformat, ForAll, Group, Hyphenation, Include, InsertPages, Layout, LoadDataset, Loop, Message, NextFrame, NextRow, Options, Output, PDFOptions, Pageformat, Pagetype, PlaceObject, ProcessNode, SaveDataset, SavePages, SetGrid, SetVariable, SortSequence, Switch, Until, Value, While

Elternelemente

AtPageCreation, AtPageShipout, Case, Contents, ForAll, Loop, Otherwise, Record, SavePages, Until, While

Attribute

name (Text)

Der Name der Ausgabe, die verworfen (1) oder eingefügt (2) wird. Kann später oder früher mit InsertPages eingefügt werden.

Bemerkungen

Der zweite Modus besteht seit Version 3.7.12.

Beispiel

Erste Variante

<Record element="data">
  <SavePages name="foo">
    <Loop select="100">
      <PlaceObject>
        <Textblock>
          <Paragraph><Value>Hallo Welt</Value></Paragraph>
        </Textblock>
      </PlaceObject>
    </Loop>
  </SavePages>
  <Message select="sd:count-saved-pages('foo')"/>
  <InsertPages name="foo"/>
</Record>

Zweite Variante (»Zukünftige Seiten«)

<Layout xmlns="urn:speedata.de:2009/publisher/en"
    xmlns:sd="urn:speedata:2009/publisher/functions/en">
    <Pageformat height="5cm" width="5cm"/>

    <Record element="data">
        <InsertPages name="firstpage" pages="1"/>
        <Loop select="4" variable="n">
            <PlaceObject>
                <Textblock>
                    <Paragraph>
                        <Value select="$n" />
                    </Paragraph>
                </Textblock>
            </PlaceObject>
            <ClearPage />
        </Loop>
        <SavePages name="firstpage">
            <PlaceObject>
                <Textblock>
                    <Paragraph>
                        <Value>Das wird die erste Seite sein.</Value>
                    </Paragraph>
                </Textblock>
            </PlaceObject>
        </SavePages>
    </Record>
</Layout>

Siehe auch

Den Befehl <InsertPages>, die Abschnitte Virtuelle Seiten und Inhaltsverzeichnis in einem Durchlauf erstellen.