
generated-scripts.dtbook-to-pef.xpl Maven / Gradle / Ivy
DTBook to PEF (Celia)
Transforms a DTBook (DAISY 3 XML) document into a PEF.
Input DTBook
Include plain text file (BRF)
Whether or not to include a plain text ASCII version of the PEF.
Include preview
Whether or not to include a preview of the PEF in HTML.
PEF
Output directory for the PEF
BRF
Output directory for the BRF
Preview
Output directory for the HTML preview
Temporary directory
Directory for storing temporary files during conversion.
Style sheets
XSLT or CSS/SASS style sheets to apply. A space separated list of URIs, absolute or relative to source.
Style sheets can also be associated with the source in other ways: linked (using an 'xml-stylesheet'
processing instruction or a 'link' element), embedded (using a 'style' element) and/or inlined
(using 'style' attributes).
Style sheets are applied to the document in the following way: XSLT style sheets are applied before
CSS/SASS style sheets. XSLT style sheets are applied one by one, first the ones specified through
this option, then the ones associated with the source document, in the order in which they are
specified.
All CSS/SASS style sheets are applied at once, but the order in which they are specified (first the
ones specified through this option, then the ones associated with the source document) has an
influence on the cascading order.
Page layout: Page width
The number of columns available for printing.
Makes the variable `$page-width` available in style sheets and includes the following rule by default:
```
@page {
size: $page-width $page-height;
}
```
Page layout: Page height
The number of rows available for printing.
Makes the variable `$page-height` available in style sheets and includes the following rule by default:
```
@page {
size: $page-width $page-height;
}
```
Page layout: Duplex
When enabled, will print on both sides of the paper.
Volumes: Maximum number of sheets
The maximum number of sheets in a volume.
Makes the variable `$maximum-number-of-sheets` available in style sheets and includes the following
rule by default:
```
@volume {
max-length: $maximum-number-of-sheets;
}
```
Volumes: Minimum number of sheets
The minimum number of sheets in a volume. **Not implemented**
Block elements: Include image groups
**Not implemented**
Block elements: Include images
When enabled, will include the alt text of the images. When disabled, the images will be completely removed.
Makes the variable `$include-images` available in style sheets and includes the following rule by
default:
```
@if $include-images {
img::after {
content: attr(alt);
}
}
```
Block elements: Include captions
When enabled, will include captions for images, tables, and so on.
Makes the variable `$include-captions` available in style sheets and includes the following rule by
default:
```
caption {
display: if($include-captions, block, none);
}
```
Inline elements: Include production notes
When enabled, production notes are included in the content.
Makes the variable `$include-production-notes` available in style sheets and includes the following
rule by default:
```
prodnote {
display: if($include-production-notes, block, none);
}
```
Inline elements: Include note references
**Not implemented**
Process noterefs
When enabled, will insert square brackets around noteref elements.
Process notes
When enabled, will insert the ID of the noteref and a colon before note elements.
Page numbers: Show braille page numbers
Makes the variable `$show-braille-page-numbers` available in style
sheets. In order to use the variable include a rule like the following in your custom
style sheet:
```
@if $show-braille-page-numbers {
@page {
@top-right {
content: counter(page);
}
}
}
```
Page numbers: Show print page numbers
Makes the variable `$show-print-page-numbers` available in style
sheets and includes the following rule by default:
```
@if $show-print-page-numbers {
pagenum {
string-set: print-page content();
}
}
```
In order to use the `print-page` string include a rule like the following in your custom style
sheet:
```
@page {
@bottom-right {
content: string(print-page);
}
}
```
Line spacing
Possible values: 'single' or 'double'.
Letter spacing
When set to 1, braille cells have empty spaces between them according to the Finnish braille specification. Furthermore, words are separated by 3 empty cells.
Translation/formatting of text: Hyphenation
When enabled, will automatically hyphenate text.
Makes the variable `$hyphenation` available in style sheets and includes the following rule by
default:
```
@if $hyphenation {
:root {
hyphens: auto;
}
}
```
Insert title page
When enabled, will insert the title page. The content of the title page is generated from the metadata of the book.
Preprocess tables
When enabled, will translate the tables containing slashes differently to braille. The cells of the tables containing slashes will be separated by two dashes instead of slashes.
Pad volume endings
When enabled, will ensure that there is at least one empty braille sheet at the end of the volume to protect the physical print. Note: This may cause some volumes be up to two pages longer than what's set in Maximum number of sheets.
Make volumes divisible by four
When enabled, will ensure that the number of pages in each volume is divisible by four, thus avoiding empty pages in the middle of the printed book. Works by appending empty pages at the end of each volumes. If Pad volume endings is set to true, then may cause some volumes to be slightly longer than what's set in Maximum number of sheets.
Text-level formatting
When disabled, will skip text-level typography markers, such as em and strong.
Table of contents: Table of contents depth
The depth of the table of contents hierarchy to include. '0' means no table of contents.
A table of contents will be generated from the heading elements present in the document: from `h1`
elements if the specified value for "depth" is 1, from `h1` and `h2` elements if the specified value
is 2, etc. The resulting table of contents has the following nested structure:
```
<list id="generated-document-toc">
<li>
<a href="#ch_1">Chapter 1</a>
<list>
<li>
<a href="#ch_1_1">1.1</a>
...
</li>
<li>
<a href="#ch_1_2">1.2</a>
...
</li>
...
</list>
</li>
...
</list>
```
Another one of these is generated but with ID `generated-volume-toc`. `ch_1`, `ch_1_2` etc. are the
IDs of the heading elements from which the list was constructed, and the content of the links are
exact copies of the content of the heading elements. By default the list is not rendered. The list
should be styled and positioned with CSS. The following rules are included by default:
```
#generated-document-toc {
flow: document-toc;
display: -obfl-toc;
-obfl-toc-range: document;
}
#generated-volume-toc {
flow: volume-toc;
display: -obfl-toc;
-obfl-toc-range: volume;
}
```
This means that a document range table of contents is added to the named flow called "document-toc",
and a volume range table of contents is added to the named flow called "volume-toc". In order to
consume these named flows use the function `flow()`. For example, to position the document range
table of contents at the beginning of the first volume, and to repeat the volume range table of
content at the beginning of every other volume, include the following additional rules:
```
@volume {
@begin {
content: flow(volume-toc);
}
}
@volume:first {
@begin {
content: flow(document-toc);
}
}
```
Include document TOC in first volume
When enabled, includes document-level table of contents at the beginning of the first volume. The depth of the document-level table of contents is the same as that of volume-level TOCs.