Vai al contenuto

API di scripting — panoramica

Imposio include un motore JavaScript (scheda Script). Gli script eseguono le stesse operazioni che fai manualmente — aprire documenti, imporre, modificare, esportare — per automatizzare il lavoro ripetitivo e standardizzare l'output.

Eseguire uno script

Apri la scheda Script, scrivi o apri un file .js, poi Run. Puoi anche registrare le azioni nell'interfaccia: Imposio scrive lo script equivalente (i frammenti in queste pagine sono esattamente le chiamate prodotte dal registratore).

Il modello a oggetti

Tutto parte da un unico oggetto globale, imposio:

imposio.setUnits("mm");
var doc = imposio.open("/path/to/file.pdf");   // → un Document
doc.setImposition({ /* … */ });
var out = doc.generateImposition();            // → un nuovo Document
out.save("/path/to/out.pdf");
  • imposio — il punto di ingresso: aprire/creare documenti, unità, utilità.
  • Document — il contenitore di un PDF: operazioni sulle pagine, esportazione, metadati, sicurezza, ispezione.
  • Imposition — impostazioni setImposition() e generateImposition().
  • Livello di modifica — disegnare e manipolare forme vettoriali, testo e immagini.
  • Esempi — script completi.

Unità

Le lunghezze sono in millimetri per impostazione predefinita. Cambia l'unità per tutte le chiamate successive con imposio.setUnits() ("mm", "cm", "in", "pt").

I valori di lunghezza accettano sia un numero (nell'unità corrente) sia una stringa con suffisso che forza l'unità:

imposio.setUnits("mm");
doc.addBlankPage(-1, 210, 297);           // mm
doc.addBlankPage(-1, "8.5in", "11in");   // unità esplicita per valore

Coordinate

La geometria usa le coordinate PDF: l'origine è l'angolo in basso a sinistra e Y sale verso l'alto. Gli indici di pagina sono base 0. Gli intervalli di pagine sono stringhe: "all", "1-5", "odd", "even", "2,4,7" (stringa vuota = tutte).

Gestione degli errori

I metodi che falliscono lanciano un'eccezione JavaScript (es. valore di enum non valido, o documento mancante). Racchiudi le chiamate rischiose in try { … } catch (e) { … } se devi gestire i fallimenti in modo pulito. I metodi che restituiscono un Document restituiscono null in caso di errore.