Repository navigation
About
What Platemaker is, who it is for, and how its pieces fit together.
Platemaker is a desktop tool for the technical half of publishing a vertical-scroll comic — everything that happens after the drawing is finished and before the episode goes live.
At its simplest it takes your exported pages in the order you put them in, joins them into a single continuous strip, scales that strip to the output width and cuts it into fixed-height panels ready to upload. That much needs no configuration beyond choosing where the output goes.
Canvas profiles are the layer above. You describe each page size you work at — an absolute canvas size, and optionally margins to be cropped off it — and from then on every incoming page is matched to a profile by its exact pixel dimensions and trimmed before it joins the strip. They are optional, but they are what makes the result deterministic and what tells you which canvas size to set up in your drawing app.
For profiles that use margins there is one more piece: Platemaker generates a template from the profile — a transparent PNG at the canvas's absolute size with the margins filled in semi-transparently. Import it into your drawing canvas and you can see where the margins begin, so nothing you care about ends up inside the crop.
Independent artists publishing their own work, and anyone making a comic without technical support behind them.
Platemaker started as a personal tool and grew past that, so it is now maintained as a public one. Studios generally have their own pipelines already; this is aimed at the person who is doing the drawing, the lettering, the exporting and the uploading themselves.
If you work in Clip Studio Paint there is a route already: build one very long project and export it as slices at a set size. Everywhere else — Procreate included — there is not.
The usual workaround is a chain of manual steps. Draw several long pages. Resize each one by hand in an image editor so its height divides cleanly. Feed them one at a time to an online slicer. And because each page is sliced on its own, plan its length in advance so that after resizing it yields a whole number of equal panels. Get the arithmetic wrong and you are back at the start.
Platemaker asks for one thing instead: a canvas profile for each page size you work at. After that the routine is keep to those sizes while drawing, check the input order is what you expect, and render. There is no arithmetic, no manual resizing and no slicer, because the pages are joined before they are cut — a panel is free to span the boundary between two pages, which is exactly what the manual route cannot do.
Changing your mind afterwards is cheap. Swap a page for a newer version, or insert a new one in the middle or at the very front, and Platemaker detects the change and re-renders what it has to; at worst it redoes the whole chapter.
One constraint follows from how matching works. Two canvas profiles cannot share the same absolute size. This is most likely to bite when you create one profile with margins and one without at the same canvas size — nothing in the image itself tells Platemaker whether the margins are present, so it would simply take the first profile that fits. See Canvas profiles.
It does not draw, letter, colour, or manage your script, and it does not upload anything for you. It is not an image editor: your source files are read and never modified.
I am a programmer and an illustrator, so when I finally started making my own comic I was not short of either skill. What I had not budgeted for was how long publishing a chapter takes. The drawing was finished and the work was not — resizing, slicing, renaming, checking each file against the platform's size limits. It turned out to be a second craft with nothing to do with making art.
The first answer was Clip2l, a Python script that eventually grew a GUI. It did roughly what Platemaker does, only worse: it knew nothing about which files had changed since the last run, it handled large chapters badly, and every chapter started again from zero.
Platemaker is the rebuild — a tool that manages the whole project rather than performing one batch conversion.
Platemaker is split across two repositories:
| Component | Repository | Role |
|---|---|---|
| Platemaker GUI | Platemaker-qt | The Qt 6 desktop application — this wiki documents it |
libplatemaker |
PlateMaker | The processing library: pipeline, data models, serialisation |
platemaker-cli |
PlateMaker | Command-line front end to the same library |
The application holds no domain logic of its own. Everything that decides what an image becomes — matching, cropping, scaling, slicing, encoding — lives in the library, which is why the GUI and the CLI cannot drift apart and why the two can be versioned separately.
The library and the CLI have their own documentation in the PlateMaker repository. This wiki covers the desktop application only.
Platemaker is free software, released under the GPL-3.0.
| Component | Licence | Linkage |
|---|---|---|
| Platemaker GUI | GPL-3.0 | — |
libplatemaker |
LGPL-3.0-or-later | Dynamic |
| Qt 6 | LGPL-3.0 | Dynamic |
| libvips | LGPL-2.1-or-later | Dynamic, via libplatemaker |
| nlohmann/json | MIT | Compiled into libplatemaker |
The same table, with the exact versions you are running, is in the application under
Help → Version. Since 1.2.0 those versions and licences are reported by libplatemaker
itself at runtime — libvips shows the version of the DLL actually loaded — rather than being
hardcoded in the GUI, so they cannot go stale when a dependency is swapped. Each licence opens
the full text in a viewer, and each component name links to its project on GitHub.
The five rows above are the headline components. The Windows build also bundles the whole libvips
runtime — around thirty more DLLs (glib, libpng, libjpeg/mozjpeg, freetype, harfbuzz, cairo,
pango, webp, …). Since 1.4.0 the About dialog links to the full third-party notices, and the
installer ships them in credits/: THIRD-PARTY-NOTICES.txt, each component's licence text, and a
machine-readable Software Bill of Materials (an SPDX inventory of all ~32 components with
versions and licences).
The bundled libvips is effectively GPL-3.0, because it is built with libimagequant (GPL-3.0) — which is compatible with Platemaker's own GPL-3.0.
WEBTOON is a trademark of WEBTOON Entertainment Inc. Platemaker is an independent tool and is not affiliated with, sponsored by, or endorsed by any publishing platform.
Platform names appear in this wiki and in the application for one reason only: to identify whose published specifications a given preset targets. The built-in Webtoon Standard output profile is named that way because it encodes the dimensions that platform accepts — it is a statement of intended purpose, not a claim of association. Platemaker does not guarantee that any platform will accept a given file.
Procreate is a trademark of Savage Interactive Pty Ltd. It is the drawing app the author uses, and is named only where a detail is specific to it; Platemaker works with any drawing app that can export images at the right size, and is not affiliated with or endorsed by it.
Issues go to the issue tracker. Please include:
- The versions from Help → Version
- Your operating system
- Your workspace file — it is plain JSON and holds no image data
- The pixel dimensions of the input images involved
Source artwork is not needed and should not be attached; the dimensions alone are usually enough to reproduce a problem.
See also: Home · Manual · Troubleshooting · Contributing
Platemaker GUI 1.4.3 · GPL-3.0 · Application repository · libplatemaker · Report an issue
Development pages synced to code commit 1331e01 (2026-10-04).
Overview
Manual
- Manual overview
- Installation
- Quick start
- Concepts
- Main window
- Workspaces
- Projects
- Canvas profiles
- Templates
- Output profiles
- Rendering
- File statuses
- Menu reference
- Troubleshooting
Comic production
Development
- Overview
- Environment
- Building
- Architecture
- Main window
- Workflows
- Releasing
- Contributing
- Windows hardening
Strip editor