Skip to content
Snippets Groups Projects
Name Last commit Last update
tests
wpd
.bumpversion.cfg
.gitlab-ci.yml
.hgignore
.hgtags
LICENSE
MANIFEST.in
README.md
pyproject.toml
setup.cfg
setup.py

WeasyPrint Daemon

Protocol

start header

On startup, wpd sends a header to stdout, always on a single line:

{"wpd": "<implementation name>", "version": "<version>", "protocol": "1"}\n

job submission

job submission, to stdin:

{"id": "xxx", "css": "css content", "size": <html content size>}\n
html content\n

The json header must be on one line.

cancel job

{"id": "xxx", "action": "cancel"}\n

The job may be canceled by the renderer, but may also be rendered and returned.

get results

result retrieval, from stdout:

{"id": "xxx", "size": <file size>}\n
PDF content\n

The json header will always be on one line.

Any error will be reported as following:

{"id": "xxx", "error": ""}

stopping

To stop the daemon, just close stdin