/printed

Generate PDF/SVG/HTML with D, with a Canvas-style API. Now with a flow document emitter.

Primary LanguageD

printed

A simple Canvas API to generate self-contained PDF/SVG/HTML documents suitable for print.

printed provides an immediate graphical context API for drawing vectorial content inside a multi-page PDF, HTML or SVG. It is intended to provide a barebones API, and need text-aware APIs on top of it.

Its API is similar to the HTML5 Canvas 2D API.

The ultimate goal would be to generate technical documentation or user manuals with it, but for that you would need a text layout library.

Features

  • TrueType and OpenType font embedding in order to have fully reproducible vectors
  • PDF 1.4 output
  • SVG 1.1 output
  • HTML5 output through SVG embedding

See features of the 2D renderer...

Goals

  • Simplicity
  • Reproducibility
  • Common denominator API, support many vectorial formats before being a rich API.

How to add as DUB dependency

With dub.sdl:

dependency "printed:canvas" version="~>1.0"

With dub.json:

     "dependencies": { "printed:canvas": "~>1.0" }