L'oggetto imposio¶
Il punto di ingresso globale. Apre e crea documenti e controlla le unità.
Aprire e creare documenti¶
imposio.open(path, opts?)¶
Apre un file dal disco. In base all'estensione: PDF (direttamente), immagini
(PNG/JPEG/BMP/GIF/TIFF/WebP → una pagina), SVG, PostScript (PS/EPS, via Ghostscript), EPUB o
testo/Markdown. Restituisce un Documento, o null (e lancia un'eccezione) in
caso di errore.
| Parametro | Tipo | Descrizione |
|---|---|---|
path |
string | Percorso assoluto del file. |
opts |
oggetto | Opzioni di importazione (sotto); lunghezze nell'unità corrente. |
opts immagine: { size: [w, h] | dpi: N, bleed: { size, rgb: [r,g,b] (0–255) | cmyk:
[c,m,y,k] (0–100), backPage: true } } — size/dpi impostano dimensione pagina /
risoluzione di stampa; bleed aggiunge una cornice di abbondanza in colore pieno (la pagina
cresce di size su ogni bordo, box di rifilo = l'immagine, il CMYK entra nel PDF come
DeviceCMYK non convertito) e backPage: true accoda una seconda pagina riempita dello
stesso colore.
opts testo/EPUB: { pageSize: [w, h], margin, font, fontSize, wrap, encoding, markdown }.
var doc = imposio.open("/Users/me/jobs/booklet.pdf");
var card = imposio.open("card.png",
{ size: [90, 50], bleed: { size: 3, cmyk: [0, 100, 100, 0], backPage: true } });
imposio.newDocument(width, height)¶
Crea un nuovo documento vuoto con una pagina. Le dimensioni sono nell'unità corrente. Restituisce un Document.
| Parametro | Tipo | Descrizione |
|---|---|---|
width |
number|string | Larghezza della pagina (unità corrente, o stringa come "210mm"). |
height |
number|string | Altezza della pagina. |
imposio.activeDocument()¶
Restituisce la scheda PDF attualmente attiva nell'interfaccia come Document borrowed
(le modifiche influenzano il documento live; lo script non lo elimina). Restituisce null
in modalità headless/CLI o senza documenti aperti.
imposio.activePage()¶
Restituisce l'indice base 0 della pagina visualizzata nella scheda attiva, o -1 se
nessuna.
Unità¶
imposio.setUnits(units)¶
Imposta l'unità per tutti i valori di lunghezza successivi e i getter. Restituisce
true; un'unità sconosciuta lancia un'eccezione.
| Valore | Unità |
|---|---|
"mm" |
millimetri (predefinito) |
"cm" |
centimetri |
"in" / "inch" |
pollici |
"pt" / "point" |
punti PostScript |
imposio.units()¶
Restituisce l'unità corrente come stringa.
Utilità di unità¶
| Metodo | Restituisce |
|---|---|
imposio.toPt(v) |
v (unità corrente) → punti |
imposio.fromPt(pt) |
punti → unità corrente |
imposio.mmToPt(mm) |
millimetri → punti (sempre mm) |
imposio.ptToMm(pt) |
punti → millimetri (sempre mm) |
imposio.setUnits("in");
var pts = imposio.toPt(8.5); // 612
File di dati¶
imposio.loadData(path, opts?)¶
Carica un file tabellare per l'unione di dati variabili.
Supporta CSV / TSV / TXT / XLSX / ODS / JSON. Restituisce
{ columns: […], rows: [[…]], format }; lancia un'eccezione in caso di errore.
Chiave opts |
Descrizione | Default |
|---|---|---|
encoding |
ad es. "windows-1250" |
"Auto" |
firstRowHeaders |
La prima riga contiene i nomi delle colonne | true |
delimiter |
ad es. ";" (CSV) |
auto |
imposio.combineData(tables, opts?)¶
Combina più tabelle (da loadData o costruite nello script) in una sola
{ columns, rows }. tables è un array.
Chiave opts |
Valori | Significato |
|---|---|---|
modes |
["append"\|"parallel", …] |
Come tables[i] si unisce al risultato (modes[0] è ignorato): append = righe sotto, parallel = colonne affiancate. |
mismatch |
"pad" (default), "cycle", "truncate" |
Tabelle parallel con numero di righe diverso. |
Watermark¶
imposio.readWatermarkImage(path, opts?)¶
Legge un watermark Imposio da un'immagine renderizzata o scansionata e restituisce
{ ok, text }. opts { seedX, seedY } sono le coordinate in pixel di un clic sul
motivo (per un watermark frame, ovunque sul bordo) — questo rende la lettura
affidabile anche su sfondi movimentati. Per l'inserimento vedi
addWatermark.
var r = imposio.readWatermarkImage("scan.png", { seedX: 620, seedY: 18 });
if (r.ok) console.log("watermark:", r.text);