PLAKATIV(1)
π PLAKATIV π
okay bestie, welcome to the plakativ(1) era β it lives in User Commands and it is literally about to change your whole wall-decor situation. β¨
πΈ NAME πΈ
plakativ β create posters and banners πΌοΈβ¨
π¦ DESCRIPTION π¦
so here's the vibe, the usage line goes a lil something like this:
usage: plakativ [-h] [-v] [-V] [--gui | --nogui] [--size LxL |
--factor MULT | --maxpages NUM] [-o OUTPUT] [--pagenum PAGENUM]
[--pagesize LxL] [--border L[:L[:L[:L]]]] [--layouter
{simple,complex}] [--remove-alpha] [--cover-page]
[--cutting-guides] [--page-numbers] [--poster-border] [input]
Create large posters by printing and gluing together smaller pages.
fr fr, this program is for those moments when you want a huge poster or banner but your printer is giving "I only do normal-sized paper" π. Plakativ lets you enlarge and split a PDF across multiple pages, spitting out another PDF with pages of the printable size you actually want. Then you print, cut, and glue, and boom β big poster. π
The features though?? iconic:
- lossless operation β no pixel artifacts when upscaling if the PDF contains vector graphics π
- GUI with preview functionality β¨
- complex layouter to save paper π±
- optimize by number of pages, output poster size or multiple of input area π―
- support for raster images as input if
img2pdfis available πΌοΈ
π OPTIONS π
π positional arguments:
inputβ input filename (default: stdin) π₯
π options:
-h,--helpβ show this help message and exit. classic.-v,--verboseβ makes the program operate in verbose mode, printing messages on standard error. she's chatty now π¬-V,--versionβ prints version information and exits.--guiβ run tkinter gui (default on Windows) πͺ--noguiβ don't run tkinter gui (default elsewhere)--size LxLβ poster width/height either as width times height or one of the known paper sizes (see below). Cannot be used together with--factoror--maxpages. β οΈ--factor MULTβ poster size as multiple of input page area. Cannot be used together with--sizeor--maxpages. β οΈ--maxpages NUMβ maximum possible poster size with the given number of pages. Cannot be used together with--sizeor--factor. β οΈ-o,--output OUTPUTβ output filename (default: stdout) π€--pagenum PAGENUMβ page number of input PDF to turn into a poster (default:1)--pagesize LxLβ width and height of the output pages or one of the known paper sizes (see below). This is the paper size that you are printing on with your printer (default:A4) π¨οΈ--border L[:L[:L[:L]]]β the borders on each output page for gluing. This specifies how much the pages overlap each other. If your printer cannot print borderless, then this value should also be larger than the border up to which your printer is able to print. The default unit ismm. Other possible units arecm,inandpt. One value sets the border on all four sides. Multiple values are separated by a colon. With two values, the first value sets top and bottom border and the second value sets left and right border. With three values, the first value sets the top border, the second value the left and right border and the third value the bottom border. Four values set top, right, bottom and left borders in that order. π--layouter {simple,complex}β the algorithm arranging the individual pages making the poster. The simple layout has all pages in the same orientation. The complex layout is able to sometimes require less pages for the same poster size and is allowed to rotate pages. π--remove-alphaβ when the input is a raster image instead of a PDF document, plakativ can remove the alpha channel for you. The resulting PDF poster might not be lossless anymore. π--cover-pageβ add a cover page as the first page which shows the resulting layout. This is especially interesting for the complex layouter unless you like puzzles. π§©--cutting-guidesβ print light-gray dashed lines that surround the visible part of each page and can help with easier cutting and gluing of the pages. This is generally only needed if the poster does not contain enough detail for accurate gluing. βοΈ--page-numbersβ print a small number of each page to uniquely identify each sheet. This is especially useful in combination with--cover-pagebecause the numbers on the cover page correspond to the page numbers. π’--poster-borderβ if the poster itself has a white background and it is important that the final result has precisely the desired poster size, then this option will print a light-gray dashed border around the whole poster, so that it can be accurately cut to the correct overall size. π
π Poster size:
there are three ways to set the size of the final poster. The desired method is selected using the mutually exclusive options --size, --factor and --maxpages.
- The
--sizeoption allows one to specify a width and height into which the input will be fitted, swapping width and height as necessary, to create the largest possible poster with those dimensions while keeping the aspect ratio of the input. - The
--factoroption scales the area of the input by the given multiplier. If the input is a DIN A4 page, then a factor of2will create a DIN A3 poster. - The
--maxpagesoption allows one to specify a maximum number of pages one is willing to print out and creates the largest possible poster that can possibly be created with the given number of pages.
For example, printing a DIN A1 poster on DIN A4 pages with a border of 15 mm will require 15 pages with the simple layouter engine. With --maxpages=15 a slightly larger poster will be generated but will make better use of the available number of pages of paper. Using the complex layouter, an even bigger poster can be generated with just 15 pages of paper by changing the orientation of some of them. π€―
πΈ Paper sizes:
you can specify the short hand paper size names shown in the first column in the table below as arguments to the --pagesize and --imgsize options. The width and height they are mapping to is shown in the second column. Giving the value in the second column has the same effect as giving the short hand in the first column. The values are case insensitive. π«Ά
A0β841mmx1189mmA1β594mmx841mmA2β420mmx594mmA3β297mmx420mmA4β210mmx297mmA5β148mmx210mmA6β105mmx148mmLegalβ8.5inx14inLetterβ8.5inx11inTabloidβ11inx17in
β¨ Borders, cutting and gluing:
the border on each page set using the --border option has two purposes. Firstly, the border is useful for printers that do not support borderless printing. Secondly, the border is the area where the individual pages overlap and can be glued together. π«Ά
before gluing, cut away the border area where the printer was unable to print on. As long as you stay within the distance set by the --border option, you don't need precision tools to do the cutting but can cut freehand using a pair of scissors. βοΈ You only need to cut the borders from those edges that will end up being glued onto another piece of paper. By keeping even the area at the border your printer could not print on from the paper at the bottom you maintain a larger area for the glue. π
π EXAMPLES π
to run the tkinter GUI execute either:
$ plakativ-gui
$ plakativ --gui
to use plakativ without GUI from the command line you can run:
$ plakativ --size A1 --output=poster.pdf input.pdf
this will create a file poster.pdf with multiple DIN A4 pages which, after being cut and glued together will form a DIN A1 poster of the content on the first page of input.pdf. π
if img2pdf is available as a Python module, then plakativ can also use raster images as input. Since img2pdf refuses to work on images with an alpha channel, you can instruct plakativ to remove the alpha channel for you with the --remove-alpha flag:
$ plakativ --size A1 --output=poster.pdf --remove-alpha input.png
π§ AUTHOR π§
written by Johannes Schauer Marin Rodrigues <josch@mister-muffin.de> π
π REPORTING BUGS π
report bugs at https://gitlab.mister-muffin.de/josch/plakativ/issues π
and that's the whole page bestie!! slay. π β¨
this has been plakativ version 0.5.3, from January 2026 π go forth and make the biggest poster your wall has ever seen, periodt. ππ
π¦ where this page comes from
- ubuntu resolute: plakativ 0.5.3-1build1 Β· GPL-3.0-only AND PSF
- ubuntu stonking: plakativ 0.5.3-1build1 Β· GPL-3.0-only AND PSF
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms