title Titolo principale | string | si | — es. Catalogo Prodotti 2026 | Comparira\` in alto su ogni pagina (intestazione) + come prima riga in grande sulla prima pagina. Supporta {{espressioni}}. |
subtitle Sottotitolo (opzionale) | string | no | — es. Listino aggiornato al {{$today}} | Riga in piccolo sotto il titolo nella prima pagina. Vuoto = nessun sottotitolo. |
sectionsJson Sezioni di testo (JSON array) | expression | no | — [{"heading":"Descrizione","body":"Testo lungo..."},{"heading":"Termini","body":"..."}] | Array JSON di oggetti `{heading, body}`. heading = titolo sezione (bold), body = paragrafo. Le sezioni vengono renderizzate in ordine. Lascia vuoto per saltare. Tipico: si compone con `{{$node.X.json}}` o `{{vars.descrizione}}`. |
tableJson Tabella dati (JSON array di righe) | expression | no | — [{"Prodotto":"Olio","Prezzo":"12.00"},{"Prodotto":"Pasta","Prezzo":"3.50"}] | Array JSON di oggetti. Le chiavi del primo oggetto diventano intestazioni della tabella. Tutte le righe devono avere le stesse chiavi (le mancanti rendono cella vuota). Numeri sono formattati a destra, testo a sinistra. Per cataloghi/listini, ideale insieme a `action_xlsx_parse` upstream che ti dà il JSON da un .xlsx. |
footer Testo piè di pagina | string | no | — © 2026 La tua Azienda — Pagina {page} di {total} | Riga in fondo a ogni pagina. Placeholder `{page}` e `{total}` vengono sostituiti automaticamente. Vuoto = nessun footer. |
pageSize Formato pagina | enumA4A5LETTERLEGAL
| no | A4 | A4 standard EU. LETTER standard US. A5 mezza-pagina per ricevute compatte. |
orientation Orientamento | enumportraitlandscape
| no | portrait | portrait = verticale (default). landscape = orizzontale (utile per tabelle larghe). |
filename Nome file proposto | string | no | — catalogo-{{$today}}.pdf | Nome file restituito in output (per allegato email o salvataggio). Default: "document.pdf". Estensione .pdf aggiunta se manca. |