epub 1.2.0

An epub generator

To use this package, run the following command in your project's root directory:

Manual usage
Put the following dependency into your project's dependences section:

epub: make epubs in D

This is a little library to create ebooks in epub format in D.

Getting it

Add "epub": "~>1.0.1" to your dub.json.

Using it

To create an epub, you first assemble your book, then call toEpub on it.

A quick example:

import epub;
void main()
    auto book = new Book;
    book.title = "Grunthos the Flatulent";
    book.author = "Ode to a Small Lump of Green Putty";

    book.coverImage = Attachment(
        // file ID
        // filename
        // MIME type
        // content

    book.chapters ~= Chapter(
        // title
        "The Putty",
        // show in table of contents?
        // body as XHTML document

If you don't want to emit directly to a file, you can call toEpub with a ZipArchive from std.zip instead of a filename.

Cover images

If you link gtk-d (for libcairo), you can generate a cover.

First, create a Cover object:

import epub.cover;
Cover cover = {
    book: myAwesomeBook,
    generator: "lovely-epub-gen-2.0.7",
    width: 1600,
    height: 2560,
    fontPreferences: ["Brioso Pro", "Garamond"],
    format: Cover.Format.png

Then render it:

book.coverImage = cover.render;


This project is licensed under the Microsoft Public License. If you wish to include this in a project you are working on and its license is incompatible, please file an issue detailing your project and what license you need.

  • dhasenan
1.2.0 2021-Jun-02
1.1.2 2018-Oct-25
1.1.0 2018-Apr-01
1.0.1 2018-Mar-30
1.0.0 2017-Apr-27
Show all 7 versions
Download Stats:
  • 0 downloads today

  • 0 downloads this week

  • 0 downloads this month

  • 45 downloads total

Short URL: