All Downloads are FREE. Search and download functionalities are using the official Maven repository.

generated-scripts.dtbook-to-pef.xpl Maven / Gradle / Ivy

There is a newer version: 1.5.0
Show newest version


    
        

DTBook to PEF (Celia)

Transforms a DTBook (DAISY 3 XML) document into a PEF.

Input DTBook

Include BRF

Whether or not to include an 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.

Transformer query

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); } ```

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); } } ```

Translation/formatting of text: Line spacing

'single' or 'double' line spacing. Makes the variable `$line-spacing` available in style sheets and includes the following rule by default: ``` @if $line-spacing == double { :root { line-height: 2; } } ```

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; } } ```

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); } } ```





© 2015 - 2025 Weber Informatics LLC | Privacy Policy