No description
Find a file
2025-01-08 15:50:34 +01:00
src Add braces 2024-12-24 20:11:08 +01:00
.gitignore Clean up after switching to Nix 2024-12-24 16:45:54 +01:00
.gitlab-ci.yml Fix pipeline 2024-12-24 20:15:03 +01:00
CMakeLists.txt Build with nix works! 2024-12-24 13:35:51 +01:00
dockerhub-overview.md Fix dockerhub version notice 2024-12-24 16:51:06 +01:00
flake.lock Add automatic path increment, updated flake.lock 2024-12-24 16:58:29 +01:00
flake.nix Add Qt Sandbox env var for docker and some readme changes 2025-01-08 15:50:34 +01:00
LICENSE Separate include directory, removed cmake files 2024-04-26 13:02:51 +02:00
README.md Add Qt Sandbox env var for docker and some readme changes 2025-01-08 15:50:34 +01:00

Japr - Just-Another-PDF-Renderer

Japr is an HTML-To-PDF-Converter. It stems from the lack of up-to-date Converters, that do no rely on a complete Chromium for rendering and printing (like Puppeteer). As wkhtmltopdf is discontinued and now archived, Japr was created as a new alternative for an easy-to-use Converter, that uses the modern Browser Standards for HTML-Rendering. It uses the Qt WebEngine, so the rendering is based on the Chromium project, and therefore has the newest Browser Standard for HTML/CSS as well as even JavaScript.

Installation

Nix Flake

To get a binary run

nix build gitlab:nihklas/japr

To build the docker image locally run

nix build gitlab:nihklas/japr#docker

Docker Image

To use the docker image, refer to the Usage part of this README.

Building from Source

Using Nix is preferred, but if you don't use Nix or Docker, or are on a different System Architecture, you need to build it yourself. This requires you to install Qt on your system. Then, you can follow these instructions:

For the best compatibility, use Qt with version 6.8.0.

  1. Clone the Repository
  2. cmake -S . -B build
  3. cmake --build build
  4. cmake --install build

Usage

Directly with Nix

nix run gitlab:nihklas/japr

Native build

After building, you can use Japr like this:

japr <INPUT-PATH> <OUTPUT-PATH>  
  • INPUT-PATH can either be a File, or a Directory. If it's a Directory, OUTPUT-PATH also has to be Directory. It then converts all Files with a .html Extension into corresponding PDF-Files.
  • OUTPUT-PATH can either be a File, or a Directory. If it's a Directory, the resulting PDF-files will use the source-files names, changing the extension from .htmlto .pdf.

You can get more Information about the different options with japr -h.

Docker image

You can use the docker image with this command:

docker run --rm -v <input-folder>:/in -v <output-folder>:/out nihklas/japr

You need to provide these two volumes:

  • Input folder
  • Output folder

The input folder should contain your .html-Files to be converted. They will be put into the output folder.

Support

If you have any issues or ideas, feel free to open up an Issue on GitLab

Contributing

Any help and Contributions are generally welcome, just follow the standard way of Fork -> Branch -> Merge Request of Open-Source Development.

License

Japr follows the LGPL v3 License