Page flow
Page breaks and orientation
General
Page breaks can be given a page orientation, which applies from that point forward until the next page break with a page orientation [added in https://github.com/metanorma/metanorma-standoc/releases/tag/v1.3.17].
Page orientation only appears in paged output, such as in Word.
To set content to landscape mode, the syntax is:
[%landscape]
<<<
To set content to portrait mode, the syntax is:
[%portrait]
<<<
If no orientation option is given, the text after the page break remains in the same orientation as that before. In Word, page breaks changing orientation are realised as distinct sections.
In Metanorma, documents are split into three sections by default:
-
a cover page,
-
a preface, and
-
the main document body (including annexes and bibliography)
-
(some documents also have a colophon)
The page orientation is reset at the start of the main document body to portrait
.
// Content following this directive will be shown in landscape mode
[%landscape]
<<<
...
// Content following this directive will return to portrait mode
[%portrait]
<<<
...
Avoiding page breaks
The “keep with next” feature is useful if you want to indicate that a document element must belong on the same page with another element, on a paginated medium [added in https://github.com/metanorma/metanorma-standoc/releases/tag/v1.4.1].
Note
|
“Keep with next” is often considered as the opposite of a forced “page break”, i.e. a “page unbreak”. |
Metanorma supports the following boolean attributes for the avoidance of page breaks:
keep-with-next
-
The block with this attribute specified will be rendered on the same page with the next document element.
keep-lines-together
-
The block with this attribute specified will force the paragraph to render all its content on the same page.
The syntax is as follows:
[keep-with-next=true]
{Paragraph or block}
and
[keep-lines-together=true]
{Paragraph}
The following syntax indicates that these two paragraphs will always be presented on the same page, even if the textual layout allows them to be split into two pages.
[keep-with-next=true]
This is a paragraph.
This is a paragraph that will be on the same page as the
immediately previous one.
Columns
Metanorma has limited support for rendering text in multiple columns.
Note
|
As of this writing, it is limited to BSI, and PDF output only. |
Where text is rendered in multiple columns, it is possible to override the
rendering of individual blocks, with a columns
attribute, setting the count of
columns that they should be rendered with
instead [added in https://github.com/metanorma/metanorma-standoc/releases/tag/v2.4.0]:
[columns=1]
____
This blockquote spans all columns of the text
____
Column breaks
Some Metanorma flavours apply column formatting to document texts.
Note
|
As of this writing, this applies to BSI in PDF. |
For such texts, it can be useful to specify a column break to be observed in rendering, rather than let the end of the column by determined automatically.
To that end, Metanorma supports a "column break" directive [added in https://github.com/metanorma/metanorma-standoc/releases/tag/v2.6.2].
This directive needs to appear on a separate paragraph on its own (note the empty space before and after):
columnbreak::[]