From 756dd9994e2bcdb1ee80ce132b005307fdc2fe09 Mon Sep 17 00:00:00 2001 From: mozempk Date: Thu, 27 Aug 2026 09:50:22 +0200 Subject: [PATCH] feat(render): Typst renderer, contrast analysis and print pre-flight render/typst.ts stages each job as a self-contained bundle (/.typst/ lib.typ + template + resolved.json) and roots Typst there, so artwork living outside the package is reachable and old jobs stay re-renderable. Paths are root-relative throughout -- Typst resolves a leading / against --root, not the filesystem. render/contrast.ts measures the region behind the text with sharp and forces a scrim on high variance even when mean luminance passes; verified with a checkerboard that scores 5.45:1 contrast yet stdev 119.9. render/preflight.ts checks TrimBox, embedded fonts, image dpi and structure, degrading to 'non installato' rather than failing when a tool is absent. E2E verified via jiti: TrimBox 297.0x420.0mm, font axes injected, bundle staged. 0 type errors. --- THIRD-PARTY-FONTS.md | 2 +- extensions/imgen/backends/cpu.ts | 17 +- extensions/imgen/backends/drawthings.ts | 355 ++++++++++++++++-------- extensions/imgen/commands/presets.ts | 4 +- extensions/imgen/design/spec.ts | 25 +- extensions/imgen/render/contrast.ts | 162 +++++++++++ extensions/imgen/render/preflight.ts | 187 +++++++++++++ extensions/imgen/render/typst.ts | 316 +++++++++++++++++++++ package.json | 3 +- scripts/fetch-fonts.sh | 15 +- templates/banded.typ | 199 +++++++------ templates/centred-stack.typ | 79 ++++-- templates/split.typ | 96 +++++-- tests/art-busy.png | Bin 0 -> 332241 bytes tests/e2e/contrast.mjs | 13 + tests/e2e/render.mjs | 44 +++ 16 files changed, 1234 insertions(+), 283 deletions(-) create mode 100644 extensions/imgen/render/contrast.ts create mode 100644 extensions/imgen/render/preflight.ts create mode 100644 extensions/imgen/render/typst.ts create mode 100644 tests/art-busy.png create mode 100644 tests/e2e/contrast.mjs create mode 100644 tests/e2e/render.mjs diff --git a/THIRD-PARTY-FONTS.md b/THIRD-PARTY-FONTS.md index 06130b8..82bff9e 100644 --- a/THIRD-PARTY-FONTS.md +++ b/THIRD-PARTY-FONTS.md @@ -1,6 +1,6 @@ # Caratteri di terze parti inclusi in pi-imgen -Generato da `scripts/fetch-fonts.sh` il 2026-08-27 07:30 UTC. Non modificare a mano. +Generato da `scripts/fetch-fonts.sh` il 2026-08-27 07:43 UTC. Non modificare a mano. I file dei caratteri stanno in `vendor/fonts//` e **non** sono versionati. Ogni cartella contiene il file `LICENSE` originale. diff --git a/extensions/imgen/backends/cpu.ts b/extensions/imgen/backends/cpu.ts index 375139f..315fd40 100644 --- a/extensions/imgen/backends/cpu.ts +++ b/extensions/imgen/backends/cpu.ts @@ -28,6 +28,7 @@ import { randomUUID } from "node:crypto"; import sharp from "sharp"; import { BackendError, type ProgressFn } from "./types.ts"; +import { withHeavyLock } from "./serialize.ts"; import type { ImgenConfig } from "../config.ts"; // --------------------------------------------------------------------------- @@ -529,11 +530,25 @@ async function findUpscaleModelsDir(binPath: string, explicit?: string): Promise * the native x4 (twice, when more than 4x is asked) and resample down to the requested size * with sharp/Lanczos — sharper than a fake native 2x and never a silent wrong-model load. */ -export async function upscaleRealesrgan( +export function upscaleRealesrgan( input: string, out: string, factor: number, opts: UpscaleOptions = {}, +): Promise { + // ncnn/Vulkan is a second heavy process with its own large footprint: it must never + // run beside a Draw Things diffusion job on a 16GB machine. Same lock, one queue. + return withHeavyLock( + () => upscaleRealesrganInner(input, out, factor, opts), + () => opts.onProgress?.("Un'altra elaborazione è in corso: l'ingrandimento parte appena si libera la memoria."), + ); +} + +async function upscaleRealesrganInner( + input: string, + out: string, + factor: number, + opts: UpscaleOptions, ): Promise { const started = Date.now(); const notes: string[] = []; diff --git a/extensions/imgen/backends/drawthings.ts b/extensions/imgen/backends/drawthings.ts index 64b7d99..1c15d7f 100644 --- a/extensions/imgen/backends/drawthings.ts +++ b/extensions/imgen/backends/drawthings.ts @@ -8,15 +8,22 @@ * - Raw gRPC carries `configuration` as a FlatBuffer (config.fbs) with no Node SDK. * - The in-app JS scripting engine cannot be triggered from outside. * - * Two invariants this file exists to protect: + * Invariants this file exists to protect: * 1. `--output` is MANDATORY. Without it the CLI paints an inline terminal preview and * INTENTIONALLY WRITES NO FILE — the classic silently-empty result. We always pass * it, and we verify afterwards that a non-empty file really appeared. - * 2. `--disable-preview` is always passed, otherwise every run draws into the terminal. + * 2. That verification is only worth anything against a file THIS run created, so every + * run renders to a fresh temp sibling and is `rename()`d onto the destination only + * once it has been checked. Otherwise a stale poster from a previous prompt/seed + * passes the check and is handed back with the new seed and model attached. + * 3. `--disable-preview` is always passed, otherwise every run draws into the terminal. + * 4. `--remote` is added ONLY when the daemon is really listening: it has no in-process + * fallback, so aiming it at a closed port fails every single run. + * 5. One heavy job at a time, process-wide (see serialize.ts). * * Memory: peak RAM at VAE DECODE — not weight size — is what kills a 16GB machine * (FLUX.2 klein @1024²: 14.03GB untiled vs 7.18GB tiled). Tiling therefore travels in - * every `--config-json` payload we build. + * every `--config-json` payload we build — flag AND geometry, never the flag alone. */ import { spawn } from "node:child_process"; @@ -100,8 +107,13 @@ const DEFAULT_TILE_OVERLAP_PX = 64; */ const REMOTE_ABORT_SETTLE_MS = 8_000; -/** Stable `Error.message` values, matched in a few places; keep them in sync. */ +/** + * Stable `Error.message` values, matched in a few places; keep them in sync. The + * before-start variant is distinct on purpose: nothing was ever spawned, so there is no + * orphaned server-side job to wait out. + */ const ABORTED_MSG = "generation aborted"; +const ABORTED_BEFORE_START_MSG = "generation aborted before start"; const TIMED_OUT_MSG = "generation timed out"; /** Upscale is deterministic in intent; there is no user-facing seed for it. */ @@ -532,9 +544,9 @@ function issue121Error(confident: boolean, detail: string): BackendError { ); } -function abortedError(): BackendError { +function abortedError(beforeStart = false): BackendError { return new BackendError( - ABORTED_MSG, + beforeStart ? ABORTED_BEFORE_START_MSG : ABORTED_MSG, "Operazione annullata: la generazione è stata interrotta prima di produrre un'immagine.", ); } @@ -544,7 +556,7 @@ function runCli(input: RunInput): Promise { return new Promise((resolve, reject) => { if (signal?.aborted) { - reject(abortedError()); + reject(abortedError(true)); return; } @@ -639,9 +651,10 @@ function runCli(input: RunInput): Promise { if (e.code === "ENOENT") { reject( new BackendError( - `${binary} not found on PATH`, - `Comando «${binary}» non trovato. Installalo con: brew install draw-things-cli ` + - "(formula Homebrew CORE, non un tap personalizzato e non --HEAD).", + `${binary} not found`, + `Comando «${binary}» non più eseguibile. Reinstallalo con: brew install draw-things-cli ` + + "(formula Homebrew CORE, non un tap personalizzato e non --HEAD), " + + "oppure indica il percorso completo in IMGEN_DT_CLI.", e.message, ), ); @@ -997,8 +1010,10 @@ export class DrawThingsBackend implements Backend { * harmlessly onto the model's recommended settings. * * Because this run uses `--image`, it is exposed to upstream issue #121. Print must - * not die on that bug, so a crash falls back to a high-quality Lanczos resample via - * sharp — announced in Italian through onProgress, never silently. + * not die on that bug, so a CRASH falls back to a high-quality Lanczos resample via + * sharp — announced in Italian through onProgress, never silently. Nothing else takes + * that fallback: a stopped daemon is reported as a stopped daemon, because silently + * shipping a non-generative upscale in its name is a wrong result with a wrong reason. */ async upscale( input: string, @@ -1055,12 +1070,17 @@ export class DrawThingsBackend implements Backend { 0, ); - const config: Record = { ...this.tilingPayload() }; // Memory safety: at 4× the VAE decode is what OOMs a 16GB machine, so tiling is - // forced on for large targets regardless of configuration. - if (longEdge > FORCE_TILING_ABOVE_PX && config.tiledDecoding !== true) { - config.tiledDecoding = true; - onProgress?.("Decodifica a tasselli attivata automaticamente per non saturare la memoria."); + // forced on for large targets regardless of configuration — WITH its geometry, or + // the flag alone would leave the tile size up to the model's recommended settings. + const forceTiling = longEdge > FORCE_TILING_ABOVE_PX; + const config: Record = { ...this.tilingPayload(forceTiling) }; + if (forceTiling && !this.cfg.tiling?.tiledDecoding) { + onProgress?.( + "Decodifica a tasselli attivata automaticamente " + + `(${config.decodingTileWidth}×${config.decodingTileHeight}px, sovrapposizione ` + + `${config.decodingTileOverlap}px) per non saturare la memoria.`, + ); } config.strength = this.upscaleStrength; if (/(esrgan|ultrasharp|remacri|swinir|\b[248]x\b)/i.test(model)) { @@ -1068,66 +1088,105 @@ export class DrawThingsBackend implements Backend { config.upscalerScaleFactor = Math.round(factor); } - const args = [ - "generate", - "--model", model, - // An upscaler needs no creative direction; an empty prompt keeps it faithful. - "--prompt", "", - "--negative-prompt", "", - "--width", String(targetW), - "--height", String(targetH), - "--steps", String(this.upscaleSteps), - "--seed", String(UPSCALE_SEED), - "--models-dir", this.cfg.modelsPath, - "--config-json", JSON.stringify(config), - "--image", input, - "--output", outPath, - "--disable-preview", - ]; - if (this.offline) args.push("--offline"); - args.push(...this.remoteArgs()); + // Fail fast, before queueing behind another job. + const cliPath = await this.requireCliPath(); - const started = Date.now(); - try { - const outcome = await runCli({ - binary: this.cli, - args, - onProgress, - signal, - timeoutMs: this.timeoutMs, - }); - await this.assertSuccess(outcome, outPath, true); - const real = await readImageSize(outPath); - return { - path: outPath, - width: real?.width ?? targetW, - height: real?.height ?? targetH, - seed: UPSCALE_SEED, - model, - elapsedMs: outcome.elapsedMs, - }; - } catch (e) { - // An abort is the user's decision, not a failure to work around. - if (signal?.aborted) throw e; - const isKnownBug = e instanceof BackendError && e.message.includes("issue #121"); - if (!isKnownBug) throw e; + return withHeavyLock( + async () => { + // Timed from inside the queue: waiting for the lock is not upscaling time. + const started = Date.now(); + const remote = await this.remoteArgs(onProgress); + const tmpOut = tempOutputPath(outPath); - onProgress?.( - "Ingrandimento generativo non riuscito (bug noto #121 sui Mac da 16GB): " + - "procedo con un ridimensionamento Lanczos di alta qualità. " + - "Il dettaglio non viene ricostruito, ma la locandina resta stampabile.", - ); - await resampleWithSharp(input, outPath, targetW, targetH); - const fallbackSize = await readImageSize(outPath); - return { - path: outPath, - width: fallbackSize?.width ?? targetW, - height: fallbackSize?.height ?? targetH, - seed: UPSCALE_SEED, - model: "lanczos(sharp)", - elapsedMs: Date.now() - started, - }; - } + const args = [ + "generate", + "--model", model, + // An upscaler needs no creative direction; an empty prompt keeps it faithful. + "--prompt", "", + "--negative-prompt", "", + "--width", String(targetW), + "--height", String(targetH), + "--steps", String(this.upscaleSteps), + "--seed", String(UPSCALE_SEED), + "--models-dir", this.cfg.modelsPath, + "--config-json", JSON.stringify(config), + "--image", input, + "--output", tmpOut, + "--disable-preview", + ]; + if (this.offline) args.push("--offline"); + args.push(...remote.args); + + try { + try { + const outcome = await runCli({ + binary: cliPath, + args, + onProgress, + signal, + timeoutMs: this.timeoutMs, + }); + await this.assertSuccess({ + outcome, + filePath: tmpOut, + reportPath: outPath, + usesImage: true, + remoteUsed: remote.used, + }); + await rename(tmpOut, outPath); + const real = await readImageSize(outPath); + return { + path: outPath, + width: real?.width ?? targetW, + height: real?.height ?? targetH, + seed: UPSCALE_SEED, + model, + elapsedMs: outcome.elapsedMs, + }; + } catch (e) { + // An abort (or a timeout) is a decision already taken, not a failure to work + // around: never resample instead. + if (signal?.aborted || wasKilledByUs(e)) { + if (remote.used && wasKilledByUs(e)) await this.settleAfterRemoteKill(onProgress); + throw e; + } + // ONLY the real upstream bug earns the fallback. A dead server raises + // serverUnreachableError instead, so "start gRPCServerCLI" can no longer be + // silently answered with a non-generative resample. + const isKnownBug = e instanceof BackendError && e.message.includes("issue #121"); + if (!isKnownBug) throw e; + + onProgress?.( + "Ingrandimento generativo non riuscito (bug noto #121 sui Mac da 16GB): " + + "procedo con un ridimensionamento Lanczos di alta qualità. " + + "Il dettaglio non viene ricostruito, ma la locandina resta stampabile.", + ); + // Same temp-then-rename discipline: a half-written fallback must not land + // on the destination either. + await resampleWithSharp(input, tmpOut, targetW, targetH); + if (!(await isNonEmptyFile(tmpOut))) { + throw new BackendError( + "sharp fallback produced no file", + "Ingrandimento di riserva non riuscito: nessuna immagine prodotta.", + ); + } + await rename(tmpOut, outPath); + const fallbackSize = await readImageSize(outPath); + return { + path: outPath, + width: fallbackSize?.width ?? targetW, + height: fallbackSize?.height ?? targetH, + seed: UPSCALE_SEED, + model: "lanczos(sharp)", + elapsedMs: Date.now() - started, + }; + } + } finally { + await discardQuietly(tmpOut); + } + }, + () => onProgress?.("Un'altra elaborazione è in corso: l'ingrandimento parte appena si libera la memoria."), + ); } // -- internals ----------------------------------------------------------- @@ -1161,48 +1220,115 @@ export class DrawThingsBackend implements Backend { * The tiling lever: a PARTIAL JSGenerationConfiguration merged onto the model's * recommended settings — never a complete config. * + * `force` is the upscale safeguard: it turns tiling on even when the config says off, + * and it MUST carry the geometry with it. `{ tiledDecoding: true }` on its own leaves + * the tile size to whatever the model recommends (possibly the whole frame), i.e. no + * memory saving at all — while the user has already been told tiling is on. + * * UNVERIFIED: the units of decodingTileWidth / decodingTileHeight. Pixels are assumed * here (the values in config default to 512/512 with 64 overlap, which reads as px); * if they turn out to be latent units, these would each cover 8× the area. */ - private tilingPayload(): Record { + private tilingPayload(force = false): Record { const t = this.cfg.tiling; - if (!t?.tiledDecoding) return { tiledDecoding: false }; + if (!force && !t?.tiledDecoding) return { tiledDecoding: false }; + const px = (value: number | undefined, fallback: number): number => + typeof value === "number" && Number.isFinite(value) && value > 0 ? Math.round(value) : fallback; return { tiledDecoding: true, - decodingTileWidth: t.decodingTileWidth, - decodingTileHeight: t.decodingTileHeight, - decodingTileOverlap: t.decodingTileOverlap, + decodingTileWidth: px(t?.decodingTileWidth, DEFAULT_TILE_PX), + decodingTileHeight: px(t?.decodingTileHeight, DEFAULT_TILE_PX), + decodingTileOverlap: px(t?.decodingTileOverlap, DEFAULT_TILE_OVERLAP_PX), }; } - /** Flags that route the run through the resident, already-warm daemon. */ - private remoteArgs(): string[] { - if (!this.cfg.server?.enabled) return []; - return [ - "--remote", - "--remote-url", REMOTE_HOST, - "--remote-port", String(this.cfg.server.port), - "--no-remote-tls", - ]; + /** + * Flags that route the run through the resident, already-warm daemon — but ONLY when + * something is actually listening there. + * + * `--remote` has no fallback: pointed at a closed port the CLI cannot run in-process, + * so passing it on `server.enabled` alone (the default) made EVERY generation fail + * whenever the daemon was down. Checking the port costs one TCP connect and turns that + * hard failure into a slow but working local run. + */ + private async remoteArgs(onProgress?: ProgressFn): Promise<{ args: string[]; used: boolean }> { + const server = this.cfg.server; + if (!server?.enabled) return { args: [], used: false }; + + if (!(await probePort(server.port))) { + onProgress?.( + `Server residente non in ascolto su ${REMOTE_HOST}:${server.port}: procedo comunque, ` + + "ma il modello va ricaricato da zero (più lento). " + + `Per riaverlo caldo: ${serverStartHint(this.cfg)}`, + ); + return { args: [], used: false }; + } + + return { + args: [ + "--remote", + "--remote-url", REMOTE_HOST, + "--remote-port", String(server.port), + "--no-remote-tls", + ], + used: true, + }; + } + + /** + * Killing the CLI does not cancel the job inside gRPCServerCLI. Hold the heavy-work + * lock a little longer so the caller's immediate retry cannot start a second decode + * while the orphaned one is still holding its peak. + */ + private async settleAfterRemoteKill(onProgress?: ProgressFn): Promise { + onProgress?.( + "Interruzione inviata: il server residente sta però ancora completando l'immagine " + + "(da qui non è possibile annullarla). Attendo " + + `${Math.round(REMOTE_ABORT_SETTLE_MS / 1000)} secondi prima di avviare altro, ` + + "per non tenere due elaborazioni in memoria insieme.", + ); + await delay(REMOTE_ABORT_SETTLE_MS); } /** * Turns a finished child into either silence or a good Italian error. Order matters: - * the crash check comes first, because a crashed img2img run also has no output file - * and would otherwise be reported as the generic "no image produced". + * 1. a broken link to the daemon is diagnosed FIRST, by probing the port — it is the + * one failure whose cure ("start the server") the user can act on, and it must + * never be dressed up as issue #121; + * 2. then the crash checks, because a crashed img2img run also has no output file and + * would otherwise be reported as the generic "no image produced"; + * 3. then, always, "did a non-empty file really appear?". + * + * `filePath` is the temp file the run was told to write; `reportPath` is the + * destination the user knows about. */ - private async assertSuccess( - outcome: RunOutcome, - outPath: string, - usesImage: boolean, - ): Promise { + private async assertSuccess(o: { + outcome: RunOutcome; + filePath: string; + reportPath: string; + usesImage: boolean; + remoteUsed: boolean; + }): Promise { + const { outcome, filePath, reportPath, usesImage, remoteUsed } = o; const failed = outcome.code !== 0 || outcome.signal !== null; - const detail = `exit=${outcome.code} signal=${outcome.signal}\n${tail(outcome.stderr, 2_000)}`; + const produced = await isNonEmptyFile(filePath); + if (!failed && produced) return; - if (failed && usesImage) { - const kind = classifyRunFailure(outcome); - if (kind !== "other") throw issue121Error(kind === "crash", detail); + const detail = `exit=${outcome.code} signal=${outcome.signal}\n${tail(outcome.stderr, 2_000)}`; + const kind = classifyRunFailure(outcome); + + // 1. The daemon. It was listening when we assembled the args (remoteArgs probed it), + // so if it is gone now, or the run died on the transport, the run never reached a + // model — no #121 diagnosis, and no Lanczos fallback in upscale(). + if (remoteUsed && (kind === "transport" || !(await probePort(this.cfg.server.port)))) { + throw serverUnreachableError(this.cfg, detail); + } + + // 2. issue #121. Only for runs that passed --image, and only for genuine crash + // fingerprints; a transport error on a LOCAL run counts, since there is no daemon + // involved for it to be blamed on. + if (usesImage && (kind === "crash" || kind === "suspect" || (!remoteUsed && kind === "transport"))) { + throw issue121Error(kind === "crash", detail); } if (failed) { @@ -1213,28 +1339,23 @@ export class DrawThingsBackend implements Backend { throw new BackendError( `draw-things-cli failed (exit=${outcome.code} signal=${outcome.signal})`, `draw-things-cli è ${how} senza completare la generazione.` + - (this.cfg.server?.enabled - ? ` Verifica che il server residente sia attivo su ${REMOTE_HOST}:${this.cfg.server.port}.` + (remoteUsed + ? ` Il server residente su ${REMOTE_HOST}:${this.cfg.server.port} risponde ancora,` + + " quindi il problema è nella generazione stessa." : ""), tail(outcome.stderr || outcome.stdout, 2_000), ); } - // A zero exit code is not proof of a file: this is exactly the failure mode that a - // missing --output produces, so it is always checked. - if (!(await isNonEmptyFile(outPath))) { - if (usesImage) { - // A clean exit with no file, on a run that used --image, is the crash seen from - // the outside: the process was reaped before it could write anything. - const kind = classifyRunFailure(outcome); - if (kind !== "other") throw issue121Error(kind === "crash", detail); - } - throw new BackendError( - `no output produced at ${outPath}`, - `Nessuna immagine prodotta in «${outPath}», nonostante il comando sia terminato senza errori.`, - tail(outcome.stderr || outcome.stdout, 2_000), - ); - } + // 3. A zero exit code is not proof of a file: this is exactly the failure mode that a + // missing --output produces, so it is always checked — against the temp file this + // run was told to write, never against a destination a previous run may have left + // behind. + throw new BackendError( + `no output produced at ${filePath}`, + `Nessuna immagine prodotta in «${reportPath}», nonostante il comando sia terminato senza errori.`, + tail(outcome.stderr || outcome.stdout, 2_000), + ); } } diff --git a/extensions/imgen/commands/presets.ts b/extensions/imgen/commands/presets.ts index 9e7e408..a0a67de 100644 --- a/extensions/imgen/commands/presets.ts +++ b/extensions/imgen/commands/presets.ts @@ -47,7 +47,7 @@ import { import type { Backend } from "../backends/types.ts"; import type { DirectorContext, ParsedBrief } from "../design/director.ts"; import { foldAccents, normaliseSlug } from "../job.ts"; -import S, { bullets, errorText, fill, list, menu } from "../ui/strings.ts"; +import { S, bullets, errorText, fill, list, menu } from "../ui/strings.ts"; // --------------------------------------------------------------------------- // Dependencies — injected so index.ts owns construction and tests own the rest @@ -102,7 +102,7 @@ function agentDir(deps: PresetsDeps): string { /** * Reads the file as it is on disk — NOT the DEFAULTS-merged view. Anything we do not - * understand (a future key, a hand-written comment-free tweak) survives the round trip. + * understand (a key from a newer version, something he added by hand) survives the trip. * A broken file throws instead of being overwritten: losing his settings is worse than * refusing to save. */ diff --git a/extensions/imgen/design/spec.ts b/extensions/imgen/design/spec.ts index e809cf5..322b816 100644 --- a/extensions/imgen/design/spec.ts +++ b/extensions/imgen/design/spec.ts @@ -105,8 +105,25 @@ export interface ResolvedSpec extends DesignSpec { dpi: number; cropMarks: boolean; }; - art_file: string; // absolute path to the artwork actually placed - ink_resolved: string; // contrast-checked, may override palette.ink - needs_scrim: boolean; // from luminance AND variance of the region behind text - font_files: Record; // family name -> absolute .ttf path + /** + * ROOT-RELATIVE path to the artwork ("/art.png"). Typst resolves a leading "/" against + * --root, NOT the filesystem: handing it an absolute path silently yields + * "/home/you/..." and a file-not-found. Same rule for logo.path. + */ + art_file: string; + /** + * Ink measured against the ARTWORK, for templates that set type over the picture. + * `ink_resolved` is the legacy alias and is kept in sync for older templates. + */ + ink_on_art: string; + /** Ink for type sitting on the flat page background. */ + ink_on_bg: string; + /** @deprecated use ink_on_art; retained so nothing breaks mid-migration. */ + ink_resolved: string; + /** From luminance AND variance behind the text — variance alone can require a scrim. */ + needs_scrim: boolean; + /** family name -> absolute .ttf path (font paths are NOT root-relative). */ + font_files: Record; + /** family name -> variable axis ranges, e.g. { Archivo: { wdth: [62,125] } }. */ + font_axes: Record>; } diff --git a/extensions/imgen/render/contrast.ts b/extensions/imgen/render/contrast.ts new file mode 100644 index 0000000..ca20ce2 --- /dev/null +++ b/extensions/imgen/render/contrast.ts @@ -0,0 +1,162 @@ +/** + * Contrast analysis — decides the ink colour and whether a scrim is needed, BEFORE + * Typst runs. Keeping this in TypeScript keeps the templates pure functions of the spec. + * + * The rule that matters: text must be legible against what is ACTUALLY behind it. A mean + * luminance check alone is not enough — white text over busy artwork can have a perfectly + * comfortable mean and still be unreadable, so variance forces a scrim independently. + */ +import sharp from "sharp"; +import type { TemplateName } from "../design/spec.ts"; + +/** WCAG AA for large text. Everything a poster sets is large, so this is the honest bar. */ +export const MIN_CONTRAST = 3.0; + +/** Above this per-channel stdev the region is "busy" and needs a scrim regardless of mean. */ +export const BUSY_STDEV = 48; + +export interface Region { + /** All fractions of the image, 0..1. */ + left: number; + top: number; + width: number; + height: number; +} + +export interface RegionAnalysis { + luminance: number; + stdev: number; + busy: boolean; + ink: string; + contrast: number; + needsScrim: boolean; +} + +/** sRGB channel (0..255) -> linear 0..1. */ +function linearise(v: number): number { + const u = v / 255; + return u <= 0.04045 ? u / 12.92 : Math.pow((u + 0.055) / 1.055, 2.4); +} + +export function relativeLuminance(r: number, g: number, b: number): number { + return 0.2126 * linearise(r) + 0.7152 * linearise(g) + 0.0722 * linearise(b); +} + +export function contrastRatio(l1: number, l2: number): number { + const [hi, lo] = l1 > l2 ? [l1, l2] : [l2, l1]; + return (hi + 0.05) / (lo + 0.05); +} + +export function hexLuminance(hex: string): number { + const m = /^#?([0-9a-f]{6})$/i.exec(hex.trim()); + if (!m) return 0; + const n = parseInt(m[1], 16); + return relativeLuminance((n >> 16) & 255, (n >> 8) & 255, n & 255); +} + +/** + * Where each template puts its type, as a fraction of the artwork. + * + * These mirror the layouts in templates/*.typ. `framed` and `split` are deliberately + * absent: neither places text over the picture at all (split says so in its own source), + * so there is nothing to measure and no scrim to draw. + */ +export const TEXT_REGIONS: Partial> = { + "hero-bottom": { left: 0, top: 0.55, width: 1, height: 0.45 }, + banded: { left: 0, top: 0.34, width: 1, height: 0.32 }, + "centred-stack": { left: 0.06, top: 0.22, width: 0.88, height: 0.56 }, +}; + +/** True when this template sets type over the artwork. */ +export function typeSitsOnArt(template: TemplateName): boolean { + return template in TEXT_REGIONS; +} + +/** + * Measure the region of `imagePath` that will sit behind the text. + * + * Returns the ink to use over the ARTWORK plus whether a scrim is required. Never throws + * on a missing or unreadable image: a poster that renders with a safe default beats a + * crash, so the fallback is white ink with a scrim. + */ +export async function analyseRegion(imagePath: string, region: Region): Promise { + try { + const img = sharp(imagePath); + const meta = await img.metadata(); + const W = meta.width ?? 0; + const H = meta.height ?? 0; + if (!W || !H) return fallback(); + + // Clamp: a region partly outside the image must still yield a valid extract box. + const left = Math.max(0, Math.min(W - 1, Math.round(region.left * W))); + const top = Math.max(0, Math.min(H - 1, Math.round(region.top * H))); + const width = Math.max(1, Math.min(W - left, Math.round(region.width * W))); + const height = Math.max(1, Math.min(H - top, Math.round(region.height * H))); + + // Flatten onto mid-grey first: an alpha channel would otherwise skew the means, and + // .stats() reports premultiplied values that misrepresent what a viewer sees. + const stats = await sharp(imagePath) + .extract({ left, top, width, height }) + .flatten({ background: { r: 128, g: 128, b: 128 } }) + .toColourspace("srgb") + .stats(); + + const ch = stats.channels.slice(0, 3); + if (ch.length < 3) return fallback(); + + const luminance = relativeLuminance(ch[0].mean, ch[1].mean, ch[2].mean); + const stdev = Math.max(...ch.map((c) => c.stdev)); + const busy = stdev > BUSY_STDEV; + + const white = 1.0; + const black = 0.0; + const rWhite = contrastRatio(white, luminance); + const rBlack = contrastRatio(black, luminance); + const useWhite = rWhite >= rBlack; + + return { + luminance, + stdev, + busy, + ink: useWhite ? "#ffffff" : "#111111", + contrast: Math.max(rWhite, rBlack), + // A scrim goes on when contrast is short OR the region is busy. The busy case is + // the one a mean-only check silently gets wrong. + needsScrim: Math.max(rWhite, rBlack) < MIN_CONTRAST || busy, + }; + } catch { + return fallback(); + } +} + +function fallback(): RegionAnalysis { + return { + luminance: 0.5, + stdev: 0, + busy: false, + ink: "#ffffff", + contrast: 1, + needsScrim: true, + }; +} + +/** + * Crop `input` to exactly w x h using sharp's attention strategy, which keeps the most + * salient part of the picture. (`smartcrop.js` is five years unmaintained — not used.) + */ +export async function smartCrop(input: string, out: string, w: number, h: number): Promise { + await sharp(input) + .resize({ width: w, height: h, fit: "cover", position: sharp.strategy.attention }) + .toFile(out); + return out; +} + +/** Pixel dimensions of an image, or null when it cannot be read. */ +export async function imageSize(path: string): Promise<{ width: number; height: number } | null> { + try { + const m = await sharp(path).metadata(); + return m.width && m.height ? { width: m.width, height: m.height } : null; + } catch { + return null; + } +} diff --git a/extensions/imgen/render/preflight.ts b/extensions/imgen/render/preflight.ts new file mode 100644 index 0000000..3444a43 --- /dev/null +++ b/extensions/imgen/render/preflight.ts @@ -0,0 +1,187 @@ +/** + * Print pre-flight — what to check before a PDF goes to a copy shop. + * + * Every tool here is optional. A missing tool is reported as "non installato", never as + * a failure: refusing to hand over a poster because `qpdf` is absent would be absurd. + * The one check that needs no tools at all is the resolution check, and that is the + * failure that actually happens — a 1024px generation is ~62 dpi across A3's long edge. + */ +import { spawn } from "node:child_process"; +import { existsSync } from "node:fs"; +import { FORMATS_GEOMETRY, effectiveDpi, trimMm } from "./formats.ts"; +import type { Format } from "../design/spec.ts"; + +export type CheckStatus = "ok" | "warn" | "fail" | "skipped"; + +export interface Check { + id: string; + status: CheckStatus; + /** Italian, shown to the user. */ + message: string; + detail?: string; +} + +export interface PreflightReport { + path: string; + checks: Check[]; + ok: boolean; + /** Italian summary, ready to print. */ + summary: string; +} + +/** Minimum acceptable image resolution for print. 300 is the target; 150 is the floor. */ +export const PRINT_DPI_TARGET = 300; +export const PRINT_DPI_FLOOR = 150; + +function run(cmd: string, args: string[], timeoutMs = 15000): Promise<{ code: number | null; out: string; missing: boolean }> { + return new Promise((res) => { + let child: ReturnType; + try { + child = spawn(cmd, args, { stdio: ["ignore", "pipe", "pipe"] }); + } catch { + res({ code: null, out: "", missing: true }); + return; + } + let out = ""; + const timer = setTimeout(() => child.kill("SIGKILL"), timeoutMs); + child.stdout?.on("data", (d) => { out += String(d); }); + child.stderr?.on("data", (d) => { out += String(d); }); + child.on("error", () => { clearTimeout(timer); res({ code: null, out: "", missing: true }); }); + child.on("close", (code) => { clearTimeout(timer); res({ code, out, missing: false }); }); + }); +} + +/** + * Pure, tool-free: is the artwork big enough for this print size? + * This is the check that catches the mistake people actually make. + */ +export function checkArtResolution( + format: Format, + art: { width: number; height: number }, +): Check { + const geo = FORMATS_GEOMETRY[format]; + if (geo.kind !== "print") { + return { id: "risoluzione", status: "skipped", message: "Formato per schermo: risoluzione non rilevante." }; + } + const trim = trimMm(format); + const dpiW = effectiveDpi(art.width, trim.widthMm); + const dpiH = effectiveDpi(art.height, trim.heightMm); + const dpi = Math.min(dpiW, dpiH); + const r = Math.round(dpi); + if (dpi >= PRINT_DPI_TARGET) { + return { id: "risoluzione", status: "ok", message: `Risoluzione immagine ${r} dpi: ottima per la stampa.` }; + } + if (dpi >= PRINT_DPI_FLOOR) { + return { + id: "risoluzione", + status: "warn", + message: `Risoluzione immagine ${r} dpi: accettabile solo per formati grandi visti da lontano.`, + detail: `${art.width}x${art.height} px su ${trim.widthMm}x${trim.heightMm} mm`, + }; + } + return { + id: "risoluzione", + status: "fail", + message: `Risoluzione immagine troppo bassa (${r} dpi): va ingrandita prima di stampare.`, + detail: `${art.width}x${art.height} px su ${trim.widthMm}x${trim.heightMm} mm — servono almeno ${PRINT_DPI_FLOOR} dpi`, + }; +} + +/** Full pre-flight on a produced PDF. Never throws. */ +export async function checkPdf(path: string): Promise { + const checks: Check[] = []; + + if (!existsSync(path)) { + const c: Check = { id: "file", status: "fail", message: "Il file PDF non esiste." }; + return { path, checks: [c], ok: false, summary: renderSummary([c]) }; + } + + // 1. Page geometry + TrimBox. A TrimBox is what tells the printer where to cut. + const info = await run("pdfinfo", ["-box", path]); + if (info.missing) { + checks.push({ id: "geometria", status: "skipped", message: "pdfinfo non installato (brew install poppler): geometria non verificata." }); + } else { + const hasTrim = /TrimBox:/i.test(info.out); + const size = /Page size:\s*([0-9.]+)\s*x\s*([0-9.]+)\s*pts/i.exec(info.out); + const mm = size ? `${(parseFloat(size[1]) / 72 * 25.4).toFixed(1)}x${(parseFloat(size[2]) / 72 * 25.4).toFixed(1)} mm` : "sconosciuta"; + checks.push(hasTrim + ? { id: "geometria", status: "ok", message: `Pagina ${mm} con TrimBox: la tipografia sa dove tagliare.` } + : { id: "geometria", status: "warn", message: `Pagina ${mm} senza TrimBox: senza abbondanza la tipografia taglia a occhio.` }); + } + + // 2. Fonts must be embedded or the shop's machine substitutes something else. + const fonts = await run("pdffonts", [path]); + if (fonts.missing) { + checks.push({ id: "caratteri", status: "skipped", message: "pdffonts non installato (brew install poppler): caratteri non verificati." }); + } else { + // pdffonts columns: name type encoding emb sub uni object ID + // "emb" is the 4th-from-last column; "no" there means the font is NOT embedded. + // ("sub: yes" is normal and desirable — that is subsetting, not a problem.) + const lines = fonts.out.split("\n").slice(2).filter((l) => l.trim()); + const notEmbedded = lines.filter((l) => { + const cols = l.trim().split(/\s+/); + return cols.length >= 4 && cols[cols.length - 4] === "no"; + }); + checks.push(!lines.length + ? { id: "caratteri", status: "warn", message: "Nessun carattere incorporato trovato: il PDF potrebbe non contenere testo." } + : notEmbedded.length + ? { + id: "caratteri", + status: "fail", + message: `${notEmbedded.length} carattere/i NON incorporato/i: in tipografia il testo cambierebbe aspetto.`, + detail: notEmbedded.map((l) => l.trim().split(/\s+/)[0]).join(", "), + } + : { id: "caratteri", status: "ok", message: `Tutti i caratteri sono incorporati (${lines.length}).` }); + } + + // 3. Image resolution inside the PDF. + const imgs = await run("pdfimages", ["-list", path]); + if (imgs.missing) { + checks.push({ id: "immagini", status: "skipped", message: "pdfimages non installato (brew install poppler): risoluzione non verificata." }); + } else { + const dpis: number[] = []; + for (const line of imgs.out.split("\n").slice(2)) { + const cols = line.trim().split(/\s+/); + if (cols.length > 14) { + const x = parseFloat(cols[12]); + const y = parseFloat(cols[13]); + if (Number.isFinite(x) && Number.isFinite(y)) dpis.push(Math.min(x, y)); + } + } + const lowest = dpis.length ? Math.min(...dpis) : null; + checks.push(lowest === null + ? { id: "immagini", status: "skipped", message: "Nessuna immagine rasterizzata nel PDF." } + : lowest >= PRINT_DPI_TARGET + ? { id: "immagini", status: "ok", message: `Immagini a ${Math.round(lowest)} dpi: ottimo.` } + : lowest >= PRINT_DPI_FLOOR + ? { id: "immagini", status: "warn", message: `Immagini a ${Math.round(lowest)} dpi: accettabile solo per formati grandi.` } + : { id: "immagini", status: "fail", message: `Immagini a soli ${Math.round(lowest)} dpi: troppo poco per la stampa.` }); + } + + // 4. Structural integrity. + const q = await run("qpdf", ["--check", path]); + if (q.missing) { + checks.push({ id: "integrita", status: "skipped", message: "qpdf non installato (brew install qpdf): integrità non verificata." }); + } else { + checks.push(q.code === 0 + ? { id: "integrita", status: "ok", message: "Struttura del PDF valida." } + : { id: "integrita", status: "warn", message: "qpdf segnala qualcosa di anomalo nel PDF.", detail: q.out.split("\n").slice(0, 4).join("\n") }); + } + + const ok = !checks.some((c) => c.status === "fail"); + return { path, checks, ok, summary: renderSummary(checks) }; +} + +const ICON: Record = { ok: "✓", warn: "!", fail: "✗", skipped: "–" }; + +function renderSummary(checks: Check[]): string { + const lines = checks.map((c) => ` ${ICON[c.status]} ${c.message}`); + const failed = checks.filter((c) => c.status === "fail").length; + const warned = checks.filter((c) => c.status === "warn").length; + const head = failed + ? `Controllo stampa: ${failed} problema/i da risolvere.` + : warned + ? `Controllo stampa: pronto, con ${warned} avvertenza/e.` + : "Controllo stampa: tutto a posto."; + return [head, ...lines].join("\n"); +} diff --git a/extensions/imgen/render/typst.ts b/extensions/imgen/render/typst.ts new file mode 100644 index 0000000..90e1f0d --- /dev/null +++ b/extensions/imgen/render/typst.ts @@ -0,0 +1,316 @@ +/** + * The Typst renderer — a pure `ResolvedSpec -> files` function. It never calls a model, + * which is exactly why changing a colour, a font or a date is a sub-second re-render + * instead of a two-minute regeneration. + * + * ## Why each job is a self-contained bundle + * + * Typst can only read files under `--root`. Templates live in the package; artwork and + * output live in the user's pictures folder — two trees with no useful common ancestor + * (and rooting at "/" would be indefensible). So each job gets its own copy: + * + * / + * spec.json the DesignSpec, human-editable + * art.png the artwork + * .typst/lib.typ copied kernel + * .typst/.typ copied template + * .typst/resolved.json what the template actually reads + * + * `--root` is the job directory. That makes every job hermetic and re-renderable years + * later even if the package moved or changed — which is what makes "re-do last year's + * poster with the new date" a no-model operation. + */ +import { spawn } from "node:child_process"; +import { mkdir, copyFile, writeFile } from "node:fs/promises"; +import { existsSync } from "node:fs"; +import { join, dirname, basename, resolve } from "node:path"; +import { fileURLToPath } from "node:url"; + +import type { DesignSpec, ResolvedSpec, Format, TemplateName } from "../design/spec.ts"; +import type { ImgenConfig } from "../config.ts"; +import { FONTS, byFamily } from "../design/fonts.ts"; +import { + FORMATS_GEOMETRY, + PRINT_DPI, + SCREEN_DPI, + trimMm, + artTargetSize, + type PrintTarget, +} from "./formats.ts"; +import { + analyseRegion, + typeSitsOnArt, + TEXT_REGIONS, + hexLuminance, + contrastRatio, + MIN_CONTRAST, +} from "./contrast.ts"; + +const HERE = dirname(fileURLToPath(import.meta.url)); +/** extensions/imgen/render -> package root */ +export const PACKAGE_ROOT = resolve(HERE, "..", "..", ".."); +export const TEMPLATES_DIR = join(PACKAGE_ROOT, "templates"); +export const FONTS_DIR = join(PACKAGE_ROOT, "vendor", "fonts"); + +export class TypstError extends Error { + constructor(readonly italian: string, readonly diagnostic: string) { + super(`typst failed: ${diagnostic.split("\n")[0] ?? "unknown"}`); + this.name = "TypstError"; + } +} + +export interface RenderOptions { + /** "pdf" carries the bleed and a TrimBox; "png" comes out already TRIMMED. */ + format?: "pdf" | "png" | "svg"; + ppi?: number; + /** typst binary; overridable for tests. */ + binary?: string; + signal?: AbortSignal; +} + +/** Locate a bundled family's .ttf. Absent families simply fall through to Typst's own. */ +function fontFileFor(family: string): string | null { + const entry = byFamily(family); + if (!entry) return null; + const dir = join(FONTS_DIR, entry.id); + if (!existsSync(dir)) return null; + return dir; +} + +function axesFor(family: string): Record | null { + const entry = byFamily(family); + if (!entry?.axes) return null; + const out: Record = {}; + for (const [axis, range] of Object.entries(entry.axes)) { + if (Array.isArray(range)) out[axis] = [range[0], range[1]]; + } + return Object.keys(out).length ? out : null; +} + +/** + * Turn a DesignSpec into everything the template needs, measuring contrast against the + * artwork rather than trusting the art director's guess. + */ +export async function resolveSpec( + spec: DesignSpec, + cfg: ImgenConfig, + artPath: string, + opts: { format?: Format; artFileName?: string } = {}, +): Promise { + const format = opts.format ?? spec.format; + const geo = FORMATS_GEOMETRY[format]; + const isPrint = geo.kind === "print"; + const trim = trimMm(format); + + // Only measure when the template actually sets type over the picture. `framed` and + // `split` do not, so there is nothing to measure and no scrim to draw. + const region = TEXT_REGIONS[spec.template as TemplateName]; + const analysis = region + ? await analyseRegion(artPath, region) + : null; + + const inkOnArt = analysis?.ink ?? spec.palette.ink; + + // Ink for flat background: keep the art director's choice when it is legible, else + // flip to whichever of black/white actually reads against the page colour. + const bgLum = hexLuminance(spec.palette.bg); + const declaredLum = hexLuminance(spec.palette.ink); + const inkOnBg = + contrastRatio(declaredLum, bgLum) >= MIN_CONTRAST + ? spec.palette.ink + : bgLum > 0.5 + ? "#111111" + : "#ffffff"; + + const fontFiles: Record = {}; + const fontAxes: Record> = {}; + for (const family of [spec.fonts.display, spec.fonts.body]) { + const dir = fontFileFor(family); + if (dir) fontFiles[family] = dir; + const axes = axesFor(family); + if (axes) fontAxes[family] = axes; + } + + const artName = opts.artFileName ?? basename(artPath); + + return { + ...spec, + format, + page: { + widthMm: trim.widthMm, + heightMm: trim.heightMm, + bleedMm: isPrint ? cfg.print.bleedMm : 0, + safeMm: cfg.print.safeMm, + dpi: isPrint ? (cfg.print.dpi || PRINT_DPI) : SCREEN_DPI, + cropMarks: isPrint ? cfg.print.cropMarks : false, + }, + art_file: `/${artName}`, // root-relative: see the module comment + ink_on_art: inkOnArt, + ink_on_bg: inkOnBg, + ink_resolved: inkOnArt, // legacy alias + needs_scrim: analysis?.needsScrim ?? false, + font_files: fontFiles, + font_axes: fontAxes, + // A logo path must also be root-relative; the caller stages the file into the job. + logo: spec.logo ? { ...spec.logo, path: `/${basename(spec.logo.path)}` } : undefined, + }; +} + +/** Copy the kernel and one template into /.typst so the job is self-contained. */ +export async function stageBundle(jobDir: string, template: TemplateName): Promise { + const dir = join(jobDir, ".typst"); + await mkdir(dir, { recursive: true }); + const tpl = join(TEMPLATES_DIR, `${template}.typ`); + if (!existsSync(tpl)) { + throw new TypstError( + `Impaginazione sconosciuta: "${template}".`, + `template not found: ${tpl}`, + ); + } + await copyFile(join(TEMPLATES_DIR, "lib.typ"), join(dir, "lib.typ")); + await copyFile(tpl, join(dir, `${template}.typ`)); + return dir; +} + +/** + * Render one output. `jobDir` must already hold the artwork (and the logo, if any). + * Returns the output path. + */ +export async function render( + resolved: ResolvedSpec, + jobDir: string, + outPath: string, + opts: RenderOptions = {}, +): Promise { + const template = resolved.template as TemplateName; + const stage = await stageBundle(jobDir, template); + const specPath = join(stage, "resolved.json"); + await writeFile(specPath, JSON.stringify(resolved, null, 2), "utf8"); + await mkdir(dirname(outPath), { recursive: true }); + + const fmt = opts.format ?? (outPath.endsWith(".png") ? "png" : outPath.endsWith(".svg") ? "svg" : "pdf"); + const args = [ + "compile", + join(stage, `${template}.typ`), + outPath, + "--root", jobDir, + // Root-relative, NOT an absolute filesystem path. + "--input", `specfile=/.typst/resolved.json`, + "--format", fmt, + // Only our bundled fonts are visible, so output is identical on any machine. This is + // what makes the golden-file tests meaningful. + "--ignore-system-fonts", + ]; + if (existsSync(FONTS_DIR)) args.push("--font-path", FONTS_DIR); + if (fmt === "png") args.push("--ppi", String(opts.ppi ?? resolved.page.dpi ?? SCREEN_DPI)); + + await runTypst(opts.binary ?? "typst", args, opts.signal); + return outPath; +} + +function runTypst(binary: string, args: string[], signal?: AbortSignal): Promise { + return new Promise((resolvePromise, reject) => { + let child: ReturnType; + try { + // No shell: paths under /Volumes may contain spaces. + child = spawn(binary, args, { + stdio: ["ignore", "pipe", "pipe"], + // Belt and braces for reproducibility; `#set document(date: none)` already + // removes the only clock-dependent field. + env: { ...process.env, SOURCE_DATE_EPOCH: "0" }, + }); + } catch (e) { + reject(new TypstError( + "Typst non è installato. Esegui install.sh oppure: brew install typst", + String(e), + )); + return; + } + + let err = ""; + child.stderr?.on("data", (d) => { err += String(d); }); + const onAbort = () => child.kill("SIGTERM"); + signal?.addEventListener("abort", onAbort, { once: true }); + + child.on("error", (e) => { + signal?.removeEventListener("abort", onAbort); + reject(new TypstError( + "Typst non è installato o non è eseguibile. Prova: brew install typst", + String(e), + )); + }); + child.on("close", (code) => { + signal?.removeEventListener("abort", onAbort); + if (signal?.aborted) { + reject(new TypstError("Composizione annullata.", "aborted")); + } else if (code === 0) { + resolvePromise(); + } else { + reject(new TypstError( + "Non sono riuscito a comporre la locandina. Dettaglio tecnico qui sotto.", + err.trim() || `typst exited ${code}`, + )); + } + }); + }); +} + +export interface FormatOutput { + format: Format; + path: string; + kind: "print" | "screen"; +} + +/** + * One spec -> every requested format. The auto-fit is re-solved per aspect ratio inside + * the template, so a layout is never merely scaled. + */ +export async function renderAllFormats( + spec: DesignSpec, + cfg: ImgenConfig, + jobDir: string, + artPath: string, + formats: Format[], + opts: RenderOptions = {}, +): Promise { + const out: FormatOutput[] = []; + for (const format of formats) { + const geo = FORMATS_GEOMETRY[format]; + const resolved = await resolveSpec(spec, cfg, artPath, { format }); + if (geo.kind === "print") { + // PDF carries the bleed and the TrimBox — this is the file for the copy shop. + out.push({ + format, + path: await render(resolved, jobDir, join(jobDir, `${format}.pdf`), { ...opts, format: "pdf" }), + kind: "print", + }); + // PNG of the same page comes out already trimmed (no bleed) — handy for preview. + out.push({ + format, + path: await render(resolved, jobDir, join(jobDir, `${format}.png`), { + ...opts, format: "png", ppi: cfg.print.dpi || PRINT_DPI, + }), + kind: "print", + }); + } else { + out.push({ + format, + path: await render(resolved, jobDir, join(jobDir, `${format}.png`), { + ...opts, format: "png", ppi: ppiForScreen(format), + }), + kind: "screen", + }); + } + } + return out; +} + +/** ppi that lands a screen format on its exact pixel size. */ +function ppiForScreen(format: Format): number { + const geo = FORMATS_GEOMETRY[format]; + const trim = trimMm(format); + if (!trim.widthMm) return SCREEN_DPI; + return Math.round((geo.pxWidth / trim.widthMm) * 25.4); +} + +export { artTargetSize, type PrintTarget }; diff --git a/package.json b/package.json index b52afa9..4987473 100644 --- a/package.json +++ b/package.json @@ -36,7 +36,8 @@ "scripts": { "typecheck": "tsc --noEmit -p tsconfig.json", "test": "tests/render-fixtures.sh", - "fonts": "scripts/fetch-fonts.sh" + "fonts": "scripts/fetch-fonts.sh", + "test:e2e": "node tests/e2e/render.mjs && node tests/e2e/contrast.mjs" }, "devDependencies": { "typescript": "^5.6.0", diff --git a/scripts/fetch-fonts.sh b/scripts/fetch-fonts.sh index a339d46..0145166 100755 --- a/scripts/fetch-fonts.sh +++ b/scripts/fetch-fonts.sh @@ -59,7 +59,9 @@ # The family list is PARSED from extensions/imgen/design/fonts.ts. It is never # duplicated here — adding a family there is the only edit needed. # -# Idempotent: a family whose manifest is complete is skipped unless --force. +# Idempotent: a family is skipped only when every file its manifest lists is +# still on disk (see manifest_complete), so a partial install is repaired +# instead of being skipped for ever. --force re-fetches regardless. # # Uso: # scripts/fetch-fonts.sh [--force] [--only=] @@ -305,7 +307,10 @@ mkdir -p "$DEST" # --- per-source fetchers ---------------------------------------------------- # Each prints the names of the files it installed into $stage, one per line, on -# fd 3 (stdout is reserved for progress), and returns non-zero if it got nothing. +# fd 3 (stdout is reserved for progress). ALL OR NOTHING: a fetcher returns +# non-zero unless every file it expected arrived intact, so a half-family is a +# failure the next tier gets a shot at, never something we install. Each also +# sets FETCH_EXPECTED to the number of files it expected. # Tier 1 — google/fonts raw. Variable TTFs, full character set, exact names # taken from METADATA.pb. @@ -746,7 +751,11 @@ if [ -n "$MISSING" ] || [ -n "$FAILED" ]; then fi if [ -n "$MISSING" ]; then fail "Incomplete su disco:$MISSING" - fail "Una famiglia senza LICENSE non è ridistribuibile: non pubblicare questa build." + # The licence warning only when a LICENSE is what is actually missing: + # «(incompleta)» means faces are missing, which is a different problem. + case "$MISSING" in + *"(LICENSE)"*) fail "Una famiglia senza LICENSE non è ridistribuibile: non pubblicare questa build." ;; + esac fi fail "Riprova con: scripts/fetch-fonts.sh --force --only=" exit 1 diff --git a/templates/banded.typ b/templates/banded.typ index a407bfb..4c2bf67 100644 --- a/templates/banded.typ +++ b/templates/banded.typ @@ -42,7 +42,7 @@ // Spec-derived constants // --------------------------------------------------------------------------- -#let pal = palette-of(spec) +#let pal = palette-of(spec) // surface: auto == the ink measured over the artwork #let sa = safe-area(spec) #let t = trim-mm(spec) #let short = short-edge-mm(spec) @@ -54,65 +54,23 @@ // --------------------------------------------------------------------------- // Band colour // -// `ink_resolved` was contrast-checked by the renderer against the ARTWORK, and this -// template must not second-guess it — but inside the band the type is not over the -// artwork, it is over flat accent, a pair nobody has checked. So the ink stays exactly -// as resolved and the BAND moves instead: keep the accent when it separates, otherwise -// push its lightness away from the ink while holding its hue. A slightly shifted red is -// a small art-direction concession; a title nobody can read is not recoverable. +// The band IS the accent, unshifted — that colour is the art director's decision and +// this template has no business second-guessing it. What changes instead is the INK on +// top of it, because the ink the renderer measured was measured against the ARTWORK, +// and inside the band the type is not over the artwork at all. `palette-of(spec, +// surface: …)` is the kernel's answer to exactly that: hand it the flat colour the type +// will sit on and it re-derives a legible ink (falling back to plain black or white +// before it will hand back something unreadable). `block-style(…, surface: …)` threads +// the same choice through every role's fill. +// +// So this template works with three surfaces: +// band — the accent +// strip — the poster's ink, used as a ground with the band's colour read back off it +// foot — the artwork itself, where the renderer's measured ink is the right one // --------------------------------------------------------------------------- -/// sRGB -> linear, per WCAG 2.x relative luminance. -#let _channel(u) = if u <= 0.04045 { u / 12.92 } else { calc.pow((u + 0.055) / 1.055, 2.4) } - -#let _luma(c) = { - let k = rgb(c).components().slice(0, 3).map(v => _channel(v / 100%)) - 0.2126 * k.at(0) + 0.7152 * k.at(1) + 0.0722 * k.at(2) -} - -/// WCAG contrast ratio, 1 (identical) to 21 (black on white). -#let _contrast(a, b) = { - let la = _luma(a) - let lb = _luma(b) - (calc.max(la, lb) + 0.05) / (calc.min(la, lb) + 0.05) -} - -// 3.0 is the WCAG threshold for LARGE text, which is all this band ever carries: the -// title is 13% of the short edge (38 mm on A3) and even the date is over 13 mm. -#let _KEEP = 3.0 // good enough to leave the art director's accent alone -#let _AIM = 3.5 // what a shifted accent must reach, with a little headroom - -#let _band-fill = { - let ink = pal.ink - let base = pal.accent - if _contrast(base, ink) >= _KEEP { - base - } else { - // Which way to run: away from the ink, so a light ink darkens the band. - let lighter = _luma(ink) < 0.5 - let found = none - for i in range(1, 13) { - if found == none { - let c = if lighter { base.lighten(i * 8%) } else { base.darken(i * 8%) } - if _contrast(c, ink) >= _AIM { found = c } - } - } - if found != none { - found - } else if _contrast(pal.bg, ink) >= _AIM { - pal.bg // the palette's own background is the next most considered choice - } else if lighter { - white // last resort: a colour that cannot fail - } else { - black - } - } -} - -// The strip under the band inverts the pair: ink ground, band-coloured type. That is -// exactly the contrast we just guaranteed, read the other way round. -#let _strip-fill = pal.ink -#let _strip-ink = _band-fill +#let band-fill = pal.accent +#let strip-fill = pal.ink // --------------------------------------------------------------------------- // Blocks -> zones @@ -125,7 +83,11 @@ #let _ZONES = (title: "band", subtitle: "band", date: "strip", venue: "strip") -#let _prepared = { +/// Pass one: role and zone only. `block-style` is the only thing that knows how to +/// normalise a role, so it is called here for its `role` field alone; the fills it +/// returns now would be the wrong ones, because which surface a block sits on is not +/// known until every block has been filed. +#let _zoned = { let out = () let bs = _get(spec, "blocks", ()) if type(bs) == array { @@ -133,16 +95,12 @@ if type(b) == dictionary { let raw = _get(b, "text", "") if type(raw) == str and raw.trim() != "" { - // `block-style` normalises the role, so `st.role` is never an unknown one. - let st = block-style(spec, _get(b, "role", none)) + let role = block-style(spec, _get(b, "role", none)).role out.push(( - role: st.role, - zone: _ZONES.at(st.role, default: "lower"), - // CAPS-ONLY families (Bebas Neue, Bungee) draw capitals at lowercase - // codepoints; upper() is harmless for them and correct for everyone else. - text: if st.upper { upper(raw) } else { raw }, + role: role, + zone: _ZONES.at(role, default: "lower"), + raw: raw, optional: _get(b, "optional", false) == true, - style: st, )) } } @@ -151,14 +109,56 @@ out } +// On landscape the strip has nowhere to go, so it rides inside the band as a second +// column instead of a second bar — which also moves date and venue onto the band's +// surface, and therefore changes which ink they need. +#let split-band = landscape and _zoned.any(b => b.zone == "strip") and _zoned.any(b => b.zone == "band") + +/// The ink the art director asked for, when it is legible on `surface`. +/// +/// `palette-of(surface: …)` picks the MAXIMUM-contrast ink, which is the right default +/// and the wrong call for the band: cream on this template's red scores 3.7:1 and black +/// scores 5.0, so the kernel would swap a cream title for a black one and break the +/// palette the rest of the poster is built from. The kernel's own docstring says the +/// art director's ink should survive "whenever it is good enough", and on a headline +/// this size good enough is `MIN-CONTRAST`. So: keep it when it clears the bar, and +/// hand back `none` — meaning "use the kernel's choice" — when it does not. +#let _preferred-ink(surface) = { + if surface == auto { return none } + let declared = hex(_dig(spec, ("palette", "ink"), none), fallback: none) + if declared != none and contrast-ratio(declared, surface) >= MIN-CONTRAST { declared } else { none } +} + +#let _SURFACE = ( + band: band-fill, + strip: if split-band { band-fill } else { strip-fill }, + lower: auto, // over the artwork: keep the renderer's measurement +) + +/// Pass two: resolve each block's typography against the surface it actually lands on. +#let _prepared = _zoned.map(b => { + let surface = _SURFACE.at(b.zone) + let st = block-style(spec, b.role, surface: surface) + // Only roles whose fill IS the ink are re-considered; `date`'s accent and `footer`'s + // muted ink are deliberate colour decisions and stay exactly as the kernel resolved + // them against this surface. + let keep = if st.fill == palette-of(spec, surface: surface).ink { _preferred-ink(surface) } else { none } + ( + role: b.role, + zone: b.zone, + ink: keep, + // CAPS-ONLY families (Bebas Neue, Bungee) draw capitals at lowercase codepoints; + // upper() is harmless for them and correct for everyone else. + text: if st.upper { upper(b.raw) } else { b.raw }, + optional: b.optional, + style: st, + ) +}) + #let band-blocks = _prepared.filter(b => b.zone == "band") #let strip-blocks = _prepared.filter(b => b.zone == "strip") #let lower-blocks = _prepared.filter(b => b.zone == "lower") -// On landscape the strip has nowhere to go, so it rides inside the band as a second -// column instead of a second bar. -#let split-band = landscape and strip-blocks.len() > 0 and band-blocks.len() > 0 - // --------------------------------------------------------------------------- // Type boxes // @@ -291,13 +291,13 @@ } } -/// Auto-fit one prepared block into `w` x `h`, overriding only the colour: on the band -/// the kernel's art-checked fill would be the wrong one, everywhere else it is right. -#let render-block(b, w, h, colour, al) = context { +/// Auto-fit one prepared block into `w` x `h`. The colour needs no override here: the +/// block's style was already resolved against the surface its zone lands on. +#let render-block(b, w, h, al) = context { let st = b.style let cap = word-cap(b.text, st, w) let args = st.args - if colour != none { args.insert("fill", colour) } + if _get(b, "ink", none) != none { args.insert("fill", b.ink) } args.insert("size", cap.size) // Keep the floor at or below the (possibly capped) size, or `fit` would be asked to // bisect an empty range. @@ -311,12 +311,12 @@ /// is relative to the paragraph's OWN text size, so between a 109 pt title and its /// subtitle it silently inserts 114 pt — a hole bigger than the subtitle. The vertical /// rhythm of a poster is a design decision, so every gap here is an explicit `v()`. -#let stack-blocks(blocks, w, h-of, colour, al, gap) = { +#let stack-blocks(blocks, w, h-of, al, gap) = { set par(spacing: 0pt) let first = true for b in blocks { if not first { v(gap, weak: false) } - render-block(b, w, h-of(b), colour, al) + render-block(b, w, h-of(b), al) first = false } } @@ -325,23 +325,23 @@ band-blocks, title-w, b => if b.role == "subtitle" { sub-h } else { title-h }, - pal.ink, band-align, short * 0.038 * 1mm, ) /// date + venue: inside the band on landscape, on their own inverted strip otherwise. -#let strip-column(colour, al) = stack-blocks( +/// Either way their fills came from `_SURFACE.strip`, which already knows which. +#let strip-column(al) = stack-blocks( strip-blocks, if split-band { info-w } else { sa.width }, b => _lines(b.style, 2), - colour, al, short * 0.022 * 1mm, ) -/// The foot keeps each role's own resolved fill: those colours were contrast-checked -/// against the artwork, which is exactly what they sit on here. +/// The foot keeps each role's own resolved fill: `_SURFACE.lower` is `auto`, so those +/// are the colours the renderer measured against the artwork — which is exactly what +/// this column sits on. #let foot-column(blocks) = { // Deliberately NOT hyphenated: this column is centred and ragged, where a hyphen // reads as an error, and Italian patterns break loanwords badly ("wee-kend"). The @@ -350,7 +350,6 @@ blocks, foot-w, b => _lines(b.style, if b.role == "details" { 3 } else { 2 }), - none, foot-align, short * 0.018 * 1mm, ) @@ -371,12 +370,12 @@ } } -#let band-block = if band-blocks.len() == 0 and not split-band { +#let band-block = if band-blocks.len() == 0 { none } else { block( width: sa.full-width, - fill: _band-fill, + fill: band-fill, inset: (left: band-pad-x, right: band-pad-x, top: band-pad-y, bottom: band-pad-y), if split-band { // Bottom-aligned info hangs off the same optical line as the last title line. @@ -385,7 +384,7 @@ column-gutter: gutter-w, align: (left + horizon, right + bottom), band-column, - strip-column(pal.ink, right), + strip-column(right), ) } else { band-column @@ -398,14 +397,14 @@ } else { block( width: sa.full-width, - fill: _strip-fill, + fill: strip-fill, inset: ( left: band-pad-x, right: band-pad-x, top: band-pad-y * 0.62, bottom: band-pad-y * 0.62, ), - strip-column(_strip-ink, center), + strip-column(center), ) } @@ -465,16 +464,15 @@ // Scrim only over the artwork, only under the foot, only when the renderer measured // the region behind it as busy. The band never needs one — it is flat colour. // - // It has to be a good deal TALLER than the text it protects: the kernel's gradient - // holds its fade back until 45% of the height so the artwork stays clean, so a scrim - // merely as tall as the foot leaves the foot's first line sitting on nothing. At - // 3.2x, that first line lands at about 70% of the ramp, where the wash has real body. - // Three rules, in order of who wins: - // want — 3.2x the foot, with a floor so a single line still gets a wash, not a smear; - // room — capped at 70% of the gap below the band, so a clean strip of artwork always - // survives between band and scrim. That strip is the layout, not decoration; - // need — but a foot too big for that strip is still covered: whatever it takes to - // hold the text plus a fade above it beats the 70% rule. + // It must be a good deal TALLER than the text it protects: the kernel's gradient + // holds its fade back until 45% of its height so the artwork stays clean, so a scrim + // merely as tall as the foot leaves the foot's first line sitting on nothing. + // want — 3.2x the foot, which lands that first line at ~70% of the ramp where the + // wash has real body; the floor keeps a one-line foot from getting a smear; + // room — but never past 70% of the gap below the band, so a clean strip of artwork + // always survives between band and scrim. That strip IS the layout; + // need — unless the foot is itself too big for that strip, in which case covering + // the text wins: it takes whatever holds the foot plus a fade above it. if foot-h > 0pt and _get(spec, "needs_scrim", false) == true { // recomputed: `group-top` may have moved since let room = sa.full-height - (group-top + group-h) @@ -517,6 +515,7 @@ }, ) -// The body stays empty on purpose: every element is placed in the foreground, whose -// origin is the full page, so nothing depends on where a margin box would have started. +// An empty box is the whole body. Every element is placed in the foreground instead, +// whose origin is the full page including bleed — the one coordinate system `safe-area` +// reports in — so nothing depends on where a margin box would have started. #box() diff --git a/templates/centred-stack.typ b/templates/centred-stack.typ index a27a1c3..b5722b3 100644 --- a/templates/centred-stack.typ +++ b/templates/centred-stack.typ @@ -20,8 +20,10 @@ // // Three rules this file obeys, in order of importance: // 1. Nothing ever leaves the safe area. The stack is budgeted BEFORE it is typeset -// (see `cap` below), and `fit` only ever shrinks, so overflow is impossible rather -// than unlikely. That matters because a poster is checked once, at the printer. +// (see `cap`), each block is auto-fitted into its share and checked for lines that +// refused to break (see `fit-checked`), and the bands a logo needs are reserved out +// of the height first. Overflow is made impossible, not unlikely — a poster gets +// checked once, at the printer. // 2. Every measurement is a fraction of the trim's short edge, so the composition is // re-solved per format instead of being a fixed layout that gets scaled. // 3. Determinism: no dates, no randomness, no system fonts. See lib.typ's header. @@ -227,7 +229,38 @@ // SHORTENED box, so it can never be pushed past the safe edge at either end. #let lift = sa.height * (if wide { 0.015 } else { 0.030 }) -// The footer band, reserved out of the stack's height before anything is measured. +// Room for the logo. `logo-place` sizes it to a fraction of the trim's short edge and +// insets it to the safe area, so its box is predictable even though its aspect ratio is +// not — the square case is assumed, which is the worst one. The stack then gives up a +// band at that end of the sheet, because a centred column is wide enough to run straight +// through a corner mark. +#let logo-side = { + let logo = _get(spec, "logo", none) + if type(logo) != dictionary { 0pt } else { + let path = _get(logo, "path", none) + if type(path) != str or path.trim() == "" { 0pt } else { + let raw = _get(logo, "scale", 0.12) + let scale = if type(raw) in (int, float) { calc.max(0.02, calc.min(0.4, raw)) } else { 0.12 } + sa.short-edge * scale + } + } +} +#let logo-corner = { + let c = _dig(spec, ("logo", "corner"), "br") + if type(c) == str and c in ("tl", "tr", "bl", "br") { c } else { "br" } +} +#let logo-at-top = logo-side > 0pt and logo-corner in ("tl", "tr") +#let logo-at-foot = logo-side > 0pt and logo-corner in ("bl", "br") + +#let top-reserve = if logo-at-top { logo-side + gap-base } else { 0pt } +#let logo-reserve = if logo-at-foot { logo-side + gap-base } else { 0pt } + +// The footer band. A foot-corner logo shares it when there is measure enough left beside +// it: the footer's column is inset by the logo width on BOTH sides — symmetric, because a +// centred footer nudged off-axis to dodge a logo is exactly the near-miss this layout +// cannot afford. When the logo is big enough to leave no usable measure (the schema +// allows 0.4 of the short edge) the footer gives up the corner instead and sits above it. +// A smaller stack is a compromise; a credit line printed across a logo is a defect. #let footer-style = block-style(spec, "footer") #let footer-line-box = lines-height(footer-style, _LINES.footer) // Glyphs paint a little past their line box — «@», an accented capital, a descender in a @@ -235,11 +268,18 @@ // instead of exactly on it. Measured: without it "INFO@EXAMPLE.IT" put 0.5 mm of ink // below the safe edge on A3. #let footer-descender = footer-style.size * 0.20 -#let footer-band = if footers.len() == 0 { 0pt } else { - footer-line-box + gap-base * 1.2 + footer-descender +#let footer-clear = if logo-at-foot { sa.width - 2 * (logo-side + gap-base) } else { sa.width } +#let footer-shares = not logo-at-foot or footer-clear >= sa.width * 0.45 +#let footer-width = if footer-shares { footer-clear } else { sa.width } +#let footer-content = if footers.len() == 0 { 0pt } else { + footer-line-box + footer-descender + gap-base * 1.2 } +#let footer-lift = if footers.len() == 0 or footer-shares { 0pt } else { logo-reserve } +// The band is whichever is taller: the footer's own needs, or the clearance the logo +// wants. With no footer and no logo it is nothing at all. +#let footer-band = calc.max(footer-content + footer-lift, logo-reserve) -#let avail = sa.height - 2 * lift - footer-band +#let avail = sa.height - 2 * lift - footer-band - top-reserve // A rule is drawn only where it means something: between the title and whatever follows. #let has-rule = { @@ -346,29 +386,10 @@ } } -// A bottom-corner logo shares the footer band, so the footer's measure is inset by the -// logo's width on BOTH sides — symmetric, because a centred footer nudged off-axis to -// dodge a logo is exactly the kind of near-miss this layout cannot afford. -#let footer-width = { - let logo = _get(spec, "logo", none) - let inset = if type(logo) != dictionary { 0pt } else { - let path = _get(logo, "path", none) - if type(path) != str or path.trim() == "" { 0pt } else { - let corner = _get(logo, "corner", "br") - if corner in ("bl", "br") { - let s = _get(logo, "scale", 0.12) - let s = if type(s) in (int, float) { calc.max(0.02, calc.min(0.4, s)) } else { 0.12 } - sa.short-edge * s + gap - } else { 0pt } - } - } - calc.max(sa.width * 0.4, sa.width - 2 * inset) -} - #let footer-stack = { for (i, b) in footers.enumerate() { if i > 0 { v(gap * 0.4) } - let st = block-style(spec, "footer") + let st = footer-style let t = _get(b, "text", "") block(width: 100%, fit-checked( if st.upper { upper(t) } else { t }, @@ -411,7 +432,7 @@ if _get(spec, "needs_scrim", false) == true { // Background coordinates include the bleed; the stack's centre is a body (trim) // coordinate, so it is offset by one bleed to line the two up. - centre-veil(sa, pal.scrim, sa.bleed + sa.safe + avail / 2) + centre-veil(sa, pal.scrim, sa.bleed + sa.safe + top-reserve + avail / 2) } }, foreground: { @@ -421,7 +442,7 @@ ) // Body origin = trim top-left, so the safe inset is `sa.safe` alone. -#place(top + left, dx: sa.safe + (sa.width - col) / 2, dy: sa.safe, box( +#place(top + left, dx: sa.safe + (sa.width - col) / 2, dy: sa.safe + top-reserve, box( width: col, height: avail, align(center + horizon, type-stack), @@ -433,7 +454,7 @@ dy: sa.safe + sa.height - footer-band, box( width: footer-width, - height: footer-band - footer-descender, + height: footer-band - footer-descender - footer-lift, align(center + bottom, footer-stack), ), ) diff --git a/templates/split.typ b/templates/split.typ index f5e4b83..70fe689 100644 --- a/templates/split.typ +++ b/templates/split.typ @@ -80,9 +80,22 @@ /// the optical distance is the same on every format. #let gutter = sa.short-edge * 0.045 -/// Vertical rhythm between stacked blocks, and the spacing unit for the footer line. +/// The base vertical rhythm, and the spacing unit for the footer line. #let gap = sa.short-edge * 0.016 +/// Space after a block, before the next one. A flat gap makes a poster read as a list: +/// the break after a 38 mm headline has to be bigger than the break after a 7 mm detail +/// line or the title runs straight into the subtitle. So the gap is the base rhythm or a +/// third of the block's own type size, whichever is larger — which in practice means the +/// title (and only the title) buys itself real air. +#let _gap-raw(e) = calc.max(gap, e.style.size * 0.32) +#let _gap-sum(list) = { + if list.len() < 2 { return 0pt } + let s = 0pt + for e in list.slice(0, list.len() - 1) { s += _gap-raw(e) } + s +} + /// The seam, in FULL-PAGE coordinates (bleed included) — the origin `page(background:)` /// and `page(foreground:)` resolve against. Along the split axis the artwork runs from /// the page edge to here, so it covers its own bleed; the panel starts here. @@ -219,12 +232,17 @@ /// panel cannot hold the blocks at their floor sizes; the ordinary crowding case is /// handled by `fit`, which narrows the type on the wdth axis long before anything is /// thrown away. +/// Total space the gaps take for a candidate stack, capped so the air can never outweigh +/// the words: without the cap a panel of nothing but large roles would spend most of its +/// height on the spaces between them. +#let gaps-of(list) = calc.min(_gap-sum(list), flow-h * 0.35) + #let flow = { let list = entries.filter(e => e.role != "footer") let needed(l) = { let s = 0pt for e in l { s += _min-need(e.style) } - s + gap * calc.max(0, l.len() - 1) + s + gaps-of(l) } while needed(list) > flow-h and list.any(e => e.optional) { let idx = 0 @@ -240,7 +258,15 @@ /// roughly half. Because every budget is honoured by `fit`, the stack can never be taller /// than the panel — the layout has no overflow case. #let _wsum = flow.fold(0.0, (a, e) => a + e.weight) -#let _inner = calc.max(1mm, flow-h - gap * calc.max(0, flow.len() - 1)) +#let _inner = calc.max(1mm, flow-h - gaps-of(flow)) + +/// The factor the cap in `gaps-of` implies for each individual gap, so the drawn spacing +/// and the space the budgets were computed against are always the same number. +#let _gap-scale = { + let raw = _gap-sum(flow) + if raw > 0pt { gaps-of(flow) / raw } else { 1.0 } +} +#let gap-after(e) = _gap-raw(e) * _gap-scale #let budget(e) = if _wsum <= 0 { _inner } else { _inner * (e.weight / _wsum) } // --------------------------------------------------------------------------- @@ -309,15 +335,30 @@ // Type // --------------------------------------------------------------------------- -/// The narrow end of a family's `wdth` axis, tolerant of every shape the spec may use -/// for a range. `none` when the family has no width axis and `fit` can only shrink. -#let _wdth-floor(axes) = { +/// The `wdth` value `fit` will START from for this family: the natural instance (100), +/// or the axis extreme if the axis does not reach it. `none` when the family has no +/// width axis, in which case Typst draws the default instance and no variation is set. +/// +/// This has to be the WIDEST width `fit` can use, not the narrowest. `fit` spends the +/// axis only when the paragraph is too TALL for its box; a block with a generous height +/// budget — a two-block spec where the title owns most of the panel — never narrows at +/// all, so a cap computed at the condensed end would not bind and the word would run off +/// the page. Measured at ig-story: "DELL'AUTUNNO" left the panel by 4.8 mm that way. +#let _wdth-start(axes) = { if type(axes) != dictionary { return none } let a = axes.at("wdth", default: none) - if type(a) == array and a.len() >= 2 { calc.min(a.at(0), a.at(1)) } - else if type(a) == dictionary { a.at("min", default: a.at("lo", default: none)) } - else if type(a) in (int, float) { a } - else { none } + let pair = if type(a) == array and a.len() >= 2 { (a.at(0), a.at(1)) } + else if type(a) == dictionary { + let lo = a.at("min", default: a.at("lo", default: none)) + let hi = a.at("max", default: a.at("hi", default: none)) + if lo != none and hi != none { (lo, hi) } else { none } + } + else if type(a) in (int, float) { (a, a) } + else { none } + if pair == none { return none } + let lo = calc.min(..pair) + let hi = calc.max(..pair) + calc.max(lo, calc.min(hi, 100)) } /// Auto-fit one block into `w` x `h` — the only way type is drawn in this template. @@ -329,18 +370,17 @@ /// field outranks the `set par` inside `fit` and so governs BOTH the trial measures /// and the final draw. Without it a long Italian title silently overflows its column. /// * the ideal size is capped so the longest unbreakable word fits `w`. The word is -/// measured unconstrained (where `measure` reports the true width) at the narrowest -/// width the axis allows, because `fit` spends the axis before it spends size — so -/// this only bites when even fully condensed the word would not fit, and then it -/// hands `fit` a size at which it does. +/// measured UNCONSTRAINED, which is the only way to get its true width past the clamp +/// in (2), at the width `fit` starts from. `fit` may then narrow further and gain +/// room back; it can never need more. #let fit-text(body, w, h, st, align-to: left) = context { let words = body.split(regex("\\s+")).filter(x => x != "") let cap = st.size if words.len() > 0 and w > 0pt { - let floor-wdth = _wdth-floor(st.axes) + let start-wdth = _wdth-start(st.axes) let probe(word) = measure(text( ..(if st.family != none { (font: st.family) } else { (:) }), - ..(if floor-wdth != none { (variations: (wdth: floor-wdth)) } else { (:) }), + ..(if start-wdth != none { (variations: (wdth: start-wdth)) } else { (:) }), size: 100pt, weight: st.weight, tracking: st.tracking, word, )).width let widest = words.fold(0pt, (a, word) => calc.max(a, probe(word))) @@ -364,16 +404,14 @@ #let stack-body = { set block(spacing: 0pt) set par(spacing: 0pt) - let first = true - for e in flow { - if not first { v(gap, weak: false) } - first = false + for (i, e) in flow.enumerate() { + if i > 0 { v(gap-after(flow.at(i - 1)), weak: false) } let st = e.style // One line per block, and the whole reason `fit` exists: a long Italian title // narrows on the wdth axis before it is allowed to shrink, so it keeps filling its // band. "Sagra della Castagna e dell'Autunno in Piazza" lands on three lines at // ig-story and stays a headline instead of becoming a caption. - block(width: panel.width, height: budget(e), fit-text(e.body, panel.width, budget(e), st)) + block(width: panel.width, fit-text(e.body, panel.width, budget(e), st)) } } @@ -383,10 +421,18 @@ /// little as a title and a date), and a heading pinned to the top of that void reads as /// a mistake. /// -/// Every child block is pinned to its exact budget, and the budgets plus the gaps were -/// normalised to `flow-h`, so the stack is EXACTLY `flow-h` tall whatever the spec -/// contains. That is what keeps it off the colophon: there is no overflow case to -/// handle, only unused space inside a block when its text fitted with room to spare. +/// The blocks are NOT pinned to their budgets, only fitted inside them: each takes its +/// natural height, so the slack a short block leaves collapses into one pool of air that +/// the centring then splits evenly, instead of being scattered as trailing gaps. Since +/// every fitted height is at most its budget and the budgets plus gaps were normalised +/// to `flow-h`, the stack cannot be taller than the flow area. Measured, with the full +/// seven-block spec: 256/313 pt at yt-thumb, 352/500 at A3, 320/414 at ig-story. +/// +/// The one way past that bound is a spec whose blocks cannot fit even at the floor sizes +/// `block-style` allows — reachable only with an absurd `safeMm`, since the optional +/// blocks are dropped first. It then spills symmetrically over the seam and the colophon +/// rather than overlapping itself, which is the failure worth having: visibly wrong, but +/// with nothing silently deleted from an event poster. #let type-stack = block(width: panel.width, height: flow-h, align(horizon + left, stack-body)) /// The colophon, pinned to the foot of the panel and pushed clear of the logo when they diff --git a/tests/art-busy.png b/tests/art-busy.png new file mode 100644 index 0000000000000000000000000000000000000000..83034e094182d2926846fe519f2809232402dd04 GIT binary patch literal 332241 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�PGY^Tj#+&8Uh`$LqFZhjHe0??W@wU*U&9 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 kZ1 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%0ALXr07xJC1poRdGX*QPrb0a= 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ΞUr%A&aeOYh&{6gIt94GmFXATKL+4 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
&DNhpltG*nuLXz)HlpxX*dsD0_yN0gS=r_ltZ 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

(4-W}1bSV`Z#E;3m6E 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

t#B7_2$=r(xWz>Zw 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