Skip to content
This repository was archived by the owner on Sep 3, 2026. It is now read-only.

pdfce v0.14.0 - the ceiling on print-colour blending is yours to set

Choose a tag to compare

@KenM76 KenM76 released this 26 Aug 20:25
· 380 commits to main since this release

The ceiling on print-colour blending is yours to set

A page that specifies print colours is blended in ink rather than on
screen. That costs 20 bytes per pixel, so it grows with the square of the
zoom — and above a memory ceiling pdfce fell back to blending on screen
instead. The result: the same page could come out with slightly different
colours at different zoom levels
, with nothing able to say where the
boundary was. The ceiling was a fixed 256 MB that nothing outside the
renderer could read and nobody could move.

Now it is yours.

  • In the settings window (Colour group) and in settings.txt, as
    max_cmyk_buffer_bytes. No upper limit — raise it to keep exact
    colours further in. It costs that memory, and about 50% more time on the
    pages it applies to.
  • A value your machine cannot supply is not a crash. pdfce attempts the
    allocation, falls back, and tells you.
  • pdfce-cli render-page --max-cmyk-buffer-bytes <SIZE> — 1gib,
    512mb, 268435456, default, or 0. The refusal note now names the
    ceiling in force, the pixels it permits and the pixels the raster wanted.

For anything built against pdfce-core / pdfce-render

Four new public items let a caller decide before rastering whether the
raster will have exact colours — will_composite_in_cmyk(w, h, max_bytes)
is the one to use. pdfce-core::settings gains max_cmyk_buffer_bytes,
parse_byte_size, format_byte_size and ByteSizeError. Documented in
docs/core-api/03-capabilities.md §7.3a, including the part the API alone
does not answer: the ceiling bounds one buffer, and a page with nested
transparency can hold up to about four page-sized ones at once.

Pass 132.0, decision 089.

Also

A correction to the numbers shipped with that Pass: every "A4" percentage in
its operator-facing prose had been computed on a page that is not A4. The
mechanism was right; the sheet was wrong. The default ceiling reaches
518% zoom on real A4, not 534%.


Portable, single folder, no installer. Unzip anywhere and run
pdfce-gui.exe or pdfce-cli.exe. Your settings live in userdata/ beside
them — keep that folder when you update.