Difference between revisions of "Epub"

From Wiki
Jump to navigation Jump to search
m (→‎Current Issues: - more issues)
m (→‎Current Issues: - epubreader regression?)
Line 119: Line 119:
 
               <td><code>test.xhtml</code>:<br /><code>document xmlns</code></td>
 
               <td><code>test.xhtml</code>:<br /><code>document xmlns</code></td>
 
               <td>elements from namespace "" are not allowed</td>
 
               <td>elements from namespace "" are not allowed</td>
 +
        </tr>
 +
        <tr>
 +
              <td>epubreader</td>
 +
              <td><code>test.epub</code></td>
 +
              <td>This XML file does not appear to have any style information associated with it.</td>
 
         </tr>
 
         </tr>
 
         <tr>
 
         <tr>

Revision as of 00:47, 19 May 2011

ConTeXt has preliminary epub support starting from current 2011.05.18.


In order to make an epub (archive) from your ConTeXt source files, you need to:

  1. enable the export backend in your .tex file or environment file (see Project structure)
  2. call the appropriate mtxrun command (with the epub script) shown in the output of a context run or in the log file


Note: There is no support for graphics yet, that will be included in a later version.

Export

To enable the export backend, depending on your needs, one of the following lines has to be included at the beginning of the document (before \starttext).

\setupbackend[export=yes]
\setupbackend[export=yes,xhtml=yes]
\setupbackend[export=yes,xhtml=whatever.xhtml]
\setupbackend[export=yes,css={whatever.css,somemore.css}]

The backend can export into:

  • xml
  • xhtml
  • xhtml+css


For making an epub, you need an xhtml export.

cld-mkvi

It is also possible to hook css into the output, see thread: ntg-context.

Example:

\setupbackend
   [export=cld-mkiv-export.xml,
    xhtml=cld-mkiv-export.xhtml,
    css={cld-mkiv-export.css,mathml.css}]

Mtxrun

The actual generation of the epub can be triggered with the mtxrun command shown in the output.


Example log entry:

...
backend         > export > saving xml data in 'oeps.export
backend         > export > saving css template in 'oeps.template
backend         > export > saving xhtml variant in 'oeps.xhtml
backend         > export > saving specification in 'oeps.specification' (mtxrun --script epub --make oeps.specification)
...

The "oeps" will be replaced with the appropriate name given to the export backend.


Therefore, execute:

mtxrun --script epub --make oeps.specification

This will create an oeps.tree folder with an oeps.epub inside it.


More on this on the mailing list, thread starts at: ntg-context.

Example

\setupbackend[export=yes,xhtml=test.xhtml]
\starttext
Hello world!
\stoptext

Tools

Viewer:

Editor:

Validation:

Specification:

Current Issues

As of 19:00, 18 May 2011 (CEST):

tool description error
epubcheck-1.2 test.epub extra field length for first filename must be 0, but was 28
epubcheck-1.2 test.opf:
<spine toc="ncx">
item with id 'ncx' not found
epubcheck-1.2 test.xhtml:
document xmlns
elements from namespace "" are not allowed
epubreader test.epub This XML file does not appear to have any style information associated with it.
kindlegen test.xhtml No BODY tag found in content file.