SavePages
This command is used for two different but similar purposes.
1: Everything enclosed in
SavePages is saved internally and not placed into the PDF. Useful if the output might be discarded.
2: “Future mode”: Create pages that have been previously reserved by
InsertPages.
Child elements
AddSearchpath
,
AttachFile
,
Bookmark
,
DefineColor
,
DefineFontalias
,
DefineFontfamily
,
DefineTextformat
,
ForAll
,
Group
,
Hyphenation
,
Include
,
InsertPages
,
Layout
,
LoadDataset
,
Loop
,
Message
,
NewPage
,
NextFrame
,
NextRow
,
Options
,
Output
,
PDFOptions
,
Pageformat
,
Pagetype
,
PlaceObject
,
ProcessNode
,
SaveDataset
,
SavePages
,
SetVariable
,
SortSequence
,
Switch
,
Until
,
While
Parent elements
AtPageCreation
,
AtPageShipout
,
Case
,
Contents
,
ForAll
,
Loop
,
Otherwise
,
Record
,
SavePages
,
Until
,
While
Attributes
name
(text)
-
The name of the discarded output (1) or for the reserved pages (2). For later/earlier retrieval with InsertPages.
The second mode has been introduced in version 3.7.12.
Example
First mode:
<Record element="data">
<SavePages name="foo">
<Loop select="100">
<PlaceObject>
<Textblock>
<Paragraph><Value>Hello world</Value></Paragraph>
</Textblock>
</PlaceObject>
</Loop>
</SavePages>
<Message select="sd:count-saved-pages('foo')"/>
<InsertPages name="foo"/>
</Record>
“Future mode”
<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>
<NewPage/>
</Loop>
<SavePages name="firstpage">
<PlaceObject>
<Textblock>
<Paragraph>
<Value>This will be the first page</Value>
</Paragraph>
</Textblock>
</PlaceObject>
</SavePages>
</Record>
</Layout>
See also
The command
<InsertPages>
, the section
Virtual pages and
Create table of contents in one go.