Learning in public — this documentation is written in the open and updated as the engine moves.
paged.Paged Docs
Command line (paged)

Command line (paged)

The `paged` binary — open, author, render, export and verify documents from a shell, driving the same typed engine door the editor's worker uses. Generated from the binary's own parser.

Tier: IntermediateIntermediateIIreference

In short One binary that opens IDML or .paged, authors through the script bridge, renders what the editor renders, exports IDML / .paged / PDF, reads back everything the engine knows about a document, and verifies the result.

cargo build --release -p paged-cli      # → target/release/paged
  • paged new — Mint a blank document
  • paged script — Author a document by running a `.js` file against it
  • paged gen — Emit the built-in corpus fixtures
  • paged inspect — Report what the engine made of a document
  • paged read — Ask the engine one of its diagnostic questions
  • paged parts — List, read and write a `.paged` container's content parts
  • paged describe — Print the capability catalog — what this engine can be asked to do
  • paged render — Rasterise a page to PNG
  • paged export — Write the document out as IDML, `.paged`, or PDF
  • paged digest — Print the document's verification digests
  • paged diff — Compare two PNGs — ΔE2000 and SSIM. Exits 1 when they differ beyond the budget
  • paged session — Speak the headless NDJSON engine protocol on stdin/stdout
  • paged package — Collect the document, its linked files and its fonts into one folder (InDesign's File ▸ Package)
  • paged place — Put an image file into a graphic frame
  • paged set — Set one property of any object (ADR 132, `Mutation::Set`)
  • paged get — Read one property of any object, as its wire value JSON (`RequestGet`, the read twin of `set`)
  • paged invoke — Apply one wire operation to a document (`Mutation`, by its tag)
  • paged ops — List every wire operation and whether `paged invoke` sends it
  • paged query — List the objects a selector names, one canonical address per line

Why it is the same engine

paged drives WorkerCore::dispatch — the typed door the editor's worker uses, the same match arms and the same model calls, with no JSON in between. So the CLI cannot apply a mutation the editor cannot, or load a document with options the editor cannot express, and it inherits fonts, colour management, PDF export, the container-parts door, scripting and undo without reimplementing any of them.

That is the parity contract, and it has a matching limit worth stating: paged cannot resolve an external Links/photo.jpg off the filesystem. Neither can the editor's canvas — images reach it as bytes already in the container. The older paged-inspect binary can, which is why it still exists.

Fonts and colour: the ordering rule

Fonts are registered before the document is loaded, because the registry seeds shaping at load and a later registration cannot retroactively shape anything. A colour profile is registered and then made the working space after the load, because the model binds its profile at load time. Getting either backwards produces a document that looks right in the log and wrong on the page.

Two flags that read alike and are not:

  • --fonts <dir|file> registers families. This is what makes a face available to text that names it, and what paged read font-face serves back.
  • --font <file> is only the fallback face, for text that names no family at all.

Core ships no fallback face of its own. Text whose family nothing answers for is not shaped, and an unshaped page renders white — so the CLI says so on stderr rather than letting a blank PNG look like a renderer bug.

The command reference

Every command below, every flag, and every default is read out of the binary's parser at build time. If a flag is here, the binary has it.

19 commands · 26 subcommands · generated from the parser

Author

Make a document, or change one.

paged new

Mint a blank document

  • --size <SIZE> — letter | legal | tabloid | a3 | a4 | a5, or WxH in points Default letter.
  • --format <FORMAT> — idml | paged Default paged.
  • -o, --out <OUT> — Output file
paged script

Author a document by running a `.js` file against it

  • <doc> — IDML or `.paged` document to author into
  • <script> — The script
  • --timeout <TIMEOUT> — Wall-clock ceiling in milliseconds, or "none" to disable the deadline (the loop, recursion and stack guards still apply) Default 60000.
  • --max-loop-iterations <MAX_LOOP_ITERATIONS> — Loop-iteration ceiling Default 10000000.
  • -o, --out <OUT> — Write the authored document here. The format follows the extension: .paged, .idml or .pdf. Without it the script's changes are not saved (the run warns when there were any)
  • --render <FILE.png> — Also rasterise a page of the result here
  • --page <PAGE> — Which page `--render` takes (1-based, or a page id) Default 1.
  • --dpi <DPI> — Render resolution Default 144.
  • --standard <STANDARD> — "pdf17" (default) or "pdfx4". X-4 needs a resolvable output intent — give one here or let the document's profile serve Default pdf17.
  • --output-intent <OUTPUT_INTENT> — Output-intent profile NAME, resolved against what this run registered. Defaults to the working space
  • --output-condition <OUTPUT_CONDITION> — Human-readable output condition for the OutputIntent dict
  • --marks — Crop marks, registration marks, colour bars, page info
  • --pages <FROM-TO> — 0-based inclusive page range, e.g. `0-9`
  • --bookmarks — Write the document's bookmarks as the PDF outline
  • --tagged — Create Tagged PDF: a structure tree of stories and paragraphs, as InDesign's "Create Tagged PDF" writes it
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
paged gen

Emit the built-in corpus fixtures

paged gen emit

Emit one built-in fixture

  • --sample <SAMPLE> — Fixture name; an unknown one lists them all
  • --out <OUT> — Output directory; the file lands at `<out>/<sample>.idml` Default corpus/generated.
paged gen emit-all

Emit every built-in fixture. Prefer this over a copied name list

  • --out <OUT> — Output directory for the whole set Default corpus/generated.

Read

Ask the engine what a document holds — the same questions the editor’s Inspector asks.

paged inspect

Report what the engine made of a document

  • <doc> — IDML or `.paged` document
  • --json — Emit JSON instead of a table
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
paged read

Ask the engine one of its diagnostic questions

paged read layers

Every `<Layer>`, with its visible / locked / printable flags

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
paged read collection

One typed document collection

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
  • <name> — Collection name, in the wire spelling
paged read frame-chain

The frames a story flows through, in order

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
  • <story_id> — Story `Self` id (from `paged read collection <doc> stories`)
paged read story-content

A story's text content

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
  • <story_id> — Story `Self` id
paged read style-properties

Every settable property of one style definition, in the shapes `SetStyleProperty` takes

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
  • <collection> — paragraph | character | object | cell | table
  • <style_id> — Style `Self` id, e.g. `ParagraphStyle/Body`
paged read placeholders

Plugin placeholder fields the document carries

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
paged read color-preview

A swatch resolved to screen RGB through the colour settings

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
  • <swatch_id> — Swatch `Self` id, e.g. `Color/Black`
paged read color-compute

Resolve arbitrary channel values through the document's profiles

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
  • <space> — CMYK | RGB | LAB | Gray
  • --value <VALUE> (repeatable) — Channel values, repeatable and in `space` order
  • --tint <TINT> — Tint percentage, 0..100
  • --model <MODEL> — Process | Spot
paged read gradient-detail

A gradient's stops, resolved

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
  • <gradient_id> — Gradient `Self` id
paged read element-properties

Every property of one element — the Inspector's own read

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
  • <id> — `kind:id` address, e.g. `textFrame:u12`
paged read element-geometry

Bounds and transform of one or more elements

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
  • <ids> (repeatable) — `kind:id` addresses
paged read group-leaves

The leaf page items inside a group, recursively

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
  • <group_id> — Group `Self` id (bare, not an address)
paged read path-anchors

A path element's anchors, with their control handles

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
  • <id> — `kind:id` address of a path-carrying element
paged read text-outlines

A text frame's composed glyphs as outlines in page space, one run per fill colour (what "Create Outlines" inserts)

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
  • <id> — `textFrame:<id>` address
paged read snap-point

Snap a page point to the anchors, alignment lines, guides and outlines around it — what the Pen or a dragged anchor would land on

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
  • <page> — The page's `Self` id
  • [point] (repeatable) — The point, page-local pt
  • --camera-scale <CAMERA_SCALE> — Screen px per pt (the tolerance is 4 screen px). Default 1
  • --exclude <EXCLUDE> (repeatable) — `kind:id` addresses to leave out of the targets
  • --grid — Also snap to the document grid (off by default, as in InDesign)
paged read planar-regions

The planar arrangement of overlapping paths — the faces the pathfinder region verbs address

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
  • <ids> (repeatable) — `kind:id` addresses, front to back
  • --point <X> <Y> (repeatable) — Answer only the face under this page point
paged read measure-text

Measure a string in a registered face

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
  • <family> — Registered family name (see `--fonts`)
  • <text> — The string to measure
  • --size-pt <SIZE_PT> — Point size to measure at Default 12.
  • --style <STYLE> — Style within the family, e.g. `Bold`
paged read placed-asset

The bytes of a placed image, as the engine holds them

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
  • <element_id> — Element `Self` id of the frame holding the image
  • -o, --out <OUT> — Write the bytes here (the reply's metadata still prints)
paged read font-face

The bytes of a registered font face

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
  • <family> — Registered family name (see `--fonts`)
  • --style <STYLE> — Style within the family, e.g. `Bold`
  • -o, --out <OUT> — Write the bytes here
paged read swatch-library

Export the swatches as an Adobe `.ase` library

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
  • --group <GROUP> — Limit to one colour group
  • -o, --out <OUT> — Write the `.ase` here
paged parts

List, read and write a `.paged` container's content parts

paged parts list

List the parts under a path prefix

  • <doc> — `.paged` container (an IDML package carries no parts)
  • [prefix] — Prefix to list; empty lists everything Default .
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
paged parts read

Read one part's bytes

  • <doc> — `.paged` container
  • <path> — Part path inside the container
  • -o, --out <OUT> — Write the bytes here instead of stdout
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
paged parts write

Write one part and save the container back

  • <doc> — `.paged` container
  • <path> — Part path inside the container
  • <from> — File whose bytes become the part
  • --caller <CALLER> — Name the writing caller, as a bundle adapter does
  • --save <SAVE> — Save the container back to this path (or `--save` alone to overwrite the input)
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
paged parts delete

Delete one part and save the container back

  • <doc> — `.paged` container
  • <path> — Part path inside the container
  • --caller <CALLER> — Name the deleting caller, as a bundle adapter does
  • --save <SAVE> — Save the container back to this path (or `--save` alone to overwrite the input)
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
paged describe

Print the capability catalog — what this engine can be asked to do

  • --compact — One JSON line instead of an indented block

Render and export

Produce the artefact.

paged render

Rasterise a page to PNG

  • <doc> — IDML or `.paged` document
  • --page <PAGE> — Page to render: a 1-based number or a page id. Default: 1
  • --all — Render every page; `-o` must then be a directory
  • --dpi <DPI> — Resolution. 72 makes one pixel one point Default 144.
  • -o, --out <OUT> — Output PNG (or directory, with `--all`)
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
paged export

Write the document out as IDML, `.paged`, or PDF

  • <doc> — IDML or `.paged` document
  • --format <FORMAT> — idml | paged | pdf Default pdf.
  • -o, --out <OUT> — Output file
  • --standard <STANDARD> — "pdf17" (default) or "pdfx4". X-4 needs a resolvable output intent — give one here or let the document's profile serve Default pdf17.
  • --output-intent <OUTPUT_INTENT> — Output-intent profile NAME, resolved against what this run registered. Defaults to the working space
  • --output-condition <OUTPUT_CONDITION> — Human-readable output condition for the OutputIntent dict
  • --marks — Crop marks, registration marks, colour bars, page info
  • --pages <FROM-TO> — 0-based inclusive page range, e.g. `0-9`
  • --bookmarks — Write the document's bookmarks as the PDF outline
  • --tagged — Create Tagged PDF: a structure tree of stories and paragraphs, as InDesign's "Create Tagged PDF" writes it
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")

Verify

Compare a result against a reference, deterministically.

paged digest

Print the document's verification digests

  • <doc> — IDML or `.paged` document
  • --compact — One JSON line instead of an indented block
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
paged diff

Compare two PNGs — ΔE2000 and SSIM. Exits 1 when they differ beyond the budget

  • <reference> — The reference, first — the order is load-bearing
  • <candidate> — The candidate
  • --json — Emit the verdict as JSON instead of a line of prose
  • --heatmap <HEATMAP> — Also write a ΔE heatmap PNG here
  • --heatmap-scale <HEATMAP_SCALE> — ΔE mapped to peak heatmap intensity Default 5.

Protocol

Speak the engine’s wire protocol directly.

paged session

Speak the headless NDJSON engine protocol on stdin/stdout

Other

Commands this page has not been taught to group yet.

paged package

Collect the document, its linked files and its fonts into one folder (InDesign's File ▸ Package)

  • <doc> — IDML or `.paged` document
  • -o, --out <OUT> — The package folder
  • --instructions <INSTRUCTIONS> — Text for `Instructions.txt`, instead of the default note
  • --json — Print the report as JSON instead of text
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
paged place

Put an image file into a graphic frame

  • <doc> — IDML or `.paged` document
  • <frame> — The graphic frame, as `rectangle:<id>` (also oval:/polygon:)
  • <image> — Image file. PNG / JPEG / WebP / TIFF / GIF / BMP — the formats the engine decodes
  • --fit <FIT> — `<FrameFittingOption>` fitting mode, e.g. FillProportionally
  • --transform <A,B,C,D,TX,TY> — The placed image's own transform, `a,b,c,d,tx,ty` — how a crop is expressed exactly rather than approximated by a fit
  • -o, --out <OUT> — Write the result here. The format follows the extension
  • --standard <STANDARD> — "pdf17" (default) or "pdfx4". X-4 needs a resolvable output intent — give one here or let the document's profile serve Default pdf17.
  • --output-intent <OUTPUT_INTENT> — Output-intent profile NAME, resolved against what this run registered. Defaults to the working space
  • --output-condition <OUTPUT_CONDITION> — Human-readable output condition for the OutputIntent dict
  • --marks — Crop marks, registration marks, colour bars, page info
  • --pages <FROM-TO> — 0-based inclusive page range, e.g. `0-9`
  • --bookmarks — Write the document's bookmarks as the PDF outline
  • --tagged — Create Tagged PDF: a structure tree of stories and paragraphs, as InDesign's "Create Tagged PDF" writes it
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
paged set

Set one property of any object (ADR 132, `Mutation::Set`)

  • <doc> — IDML or `.paged` document
  • <target> — An address: `doc`, `rectangle:<id>`, `swatch:<id>`, `layer:<id>`, …
  • <path> — A `propertySchemas` path for the target's kind
  • <value> — JSON (`12`, `true`, `[0,0,100,100]`) or a plain string (`3mm`)
  • -o, --out <OUT> — Write the result here. The format follows the extension
  • --standard <STANDARD> — "pdf17" (default) or "pdfx4". X-4 needs a resolvable output intent — give one here or let the document's profile serve Default pdf17.
  • --output-intent <OUTPUT_INTENT> — Output-intent profile NAME, resolved against what this run registered. Defaults to the working space
  • --output-condition <OUTPUT_CONDITION> — Human-readable output condition for the OutputIntent dict
  • --marks — Crop marks, registration marks, colour bars, page info
  • --pages <FROM-TO> — 0-based inclusive page range, e.g. `0-9`
  • --bookmarks — Write the document's bookmarks as the PDF outline
  • --tagged — Create Tagged PDF: a structure tree of stories and paragraphs, as InDesign's "Create Tagged PDF" writes it
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
paged get

Read one property of any object, as its wire value JSON (`RequestGet`, the read twin of `set`)

  • <doc> — IDML or `.paged` document
  • <target> — An address: `doc`, `rectangle:<id>`, `swatch:<id>`, `layer:<id>`, …
  • <path> — A `propertySchemas` path for the target's kind
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
paged invoke

Apply one wire operation to a document (`Mutation`, by its tag)

  • <doc> — IDML or `.paged` document
  • <op> — The operation's wire tag (`insertTextFrame`, `linkFrames`, …)
  • [args] — The arguments: inline JSON, `-` for stdin, or a JSON file
  • -o, --out <OUT> — Write the result here. The format follows the extension
  • --standard <STANDARD> — "pdf17" (default) or "pdfx4". X-4 needs a resolvable output intent — give one here or let the document's profile serve Default pdf17.
  • --output-intent <OUTPUT_INTENT> — Output-intent profile NAME, resolved against what this run registered. Defaults to the working space
  • --output-condition <OUTPUT_CONDITION> — Human-readable output condition for the OutputIntent dict
  • --marks — Crop marks, registration marks, colour bars, page info
  • --pages <FROM-TO> — 0-based inclusive page range, e.g. `0-9`
  • --bookmarks — Write the document's bookmarks as the PDF outline
  • --tagged — Create Tagged PDF: a structure tree of stories and paragraphs, as InDesign's "Create Tagged PDF" writes it
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")
paged ops

List every wire operation and whether `paged invoke` sends it

  • --json — Emit JSON (`[{op, invokable, reason?}]`) instead of one per line
paged query

List the objects a selector names, one canonical address per line

  • <doc> — IDML or `.paged` document
  • <selector> — The selector
  • --json — Print the engine's reply envelope as JSON
  • --fonts <DIR|FILE> (repeatable) — Font file or directory to make available, repeatable
  • --font-family <NAME[/STYLE]=PATH> (repeatable) — Bind one family (and optionally a style) to a file, repeatable: `--font-family "Fraunces/Italic=/path/Fraunces-Italic.ttf"`
  • --font <FILE> — Fallback face for text no registered family answers for. Absent, the face the CLI bundles (Inter) stands in
  • --no-default-font — No fallback face: text no registered family answers for is not set, and the run says so (to see what a document is missing)
  • --cmyk-profile <NAME|FILE> — CMYK profile: a file path, or a name to resolve against the host's installed profiles (e.g. "Coated FOGRA39")

Addressing an element

The read commands that take an element accept the same kind:id address paged.set takes — one grammar, shared by the command line and the scripting bridge:

textFrame:u12   rectangle:u3   oval:u7   polygon:u4   graphicLine:u9   group:u2
storyRange:Story/u1@0..6

A malformed address is refused with the list of forms, not a stack trace.

On this page