Aller au contenu

L'objet imposio

Le point d'entrée global. Il ouvre et crée des documents et contrôle les unités.

Ouvrir et créer des documents

imposio.open(path, opts?)

Ouvre un fichier depuis le disque. Selon l'extension : PDF (directement), images (PNG/JPEG/BMP/GIF/TIFF/WebP → une page), SVG, PostScript (PS/EPS, via Ghostscript), EPUB ou texte/Markdown. Retourne un Document, ou null (et lève une exception) en cas d'échec.

Paramètre Type Description
path string Chemin absolu du fichier.
opts objet Options d'import (ci-dessous) ; longueurs dans l'unité courante.

opts image : { size: [w, h] | dpi: N, bleed: { size, rgb: [r,g,b] (0–255) | cmyk: [c,m,y,k] (0–100), backPage: true } }size/dpi fixent la taille de page / la résolution d'impression ; bleed ajoute un cadre de fond perdu en couleur unie (la page grandit de size sur chaque bord, boîte de rognage = l'image, le CMJN entre dans le PDF en DeviceCMYK non converti) et backPage: true ajoute une seconde page remplie de la même couleur.

opts texte/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)

Crée un nouveau document vide d'une page. Dimensions dans l'unité courante. Renvoie un Document.

Paramètre Type Description
width number|string Largeur de page (unité courante, ou chaîne comme "210mm").
height number|string Hauteur de page.

imposio.activeDocument()

Renvoie l'onglet PDF actuellement actif de l'interface comme Document emprunté (borrowed) (les changements affectent le document vivant ; le script ne le supprime pas). Renvoie null en mode headless/CLI ou sans document ouvert.

imposio.activePage()

Renvoie l'index base 0 de la page affichée dans l'onglet actif, ou -1 si aucune.

Unités

imposio.setUnits(units)

Définit l'unité pour toutes les valeurs suivantes de longueur et les getters. Renvoie true ; une unité inconnue lève une exception.

Valeur Unité
"mm" millimètres (défaut)
"cm" centimètres
"in" / "inch" pouces
"pt" / "point" points PostScript

imposio.units()

Renvoie l'unité courante en chaîne.

Utilitaires d'unités

Méthode Renvoie
imposio.toPt(v) v (unité courante) → points
imposio.fromPt(pt) points → unité courante
imposio.mmToPt(mm) millimètres → points (toujours mm)
imposio.ptToMm(pt) points → millimètres (toujours mm)
imposio.setUnits("in");
var pts = imposio.toPt(8.5);   // 612

Fichiers de données

imposio.loadData(path, opts?)

Charge un fichier tabulaire pour la fusion de données variables. Prend en charge CSV / TSV / TXT / XLSX / ODS / JSON. Retourne { columns: […], rows: [[…]], format } ; lève une exception en cas d'erreur.

Clé opts Description Défaut
encoding p. ex. "windows-1250" "Auto"
firstRowHeaders La première ligne contient les noms de colonnes true
delimiter p. ex. ";" (CSV) auto

imposio.combineData(tables, opts?)

Combine plusieurs tables (de loadData ou construites dans le script) en une seule { columns, rows }. tables est un tableau.

Clé opts Valeurs Signification
modes ["append"\|"parallel", …] Comment tables[i] rejoint le résultat (modes[0] est ignoré) : append = lignes en dessous, parallel = colonnes côte à côte.
mismatch "pad" (défaut), "cycle", "truncate" Tables parallèles avec un nombre de lignes différent.

Watermarks

imposio.readWatermarkImage(path, opts?)

Lit un watermark Imposio depuis une image rendue ou scannée et renvoie { ok, text }. opts { seedX, seedY } sont les coordonnées en pixels d'un clic sur le motif (pour un watermark frame, n'importe où sur le bord) — ce qui rend la lecture fiable même sur un fond chargé. Pour l'intégration, voir addWatermark.

var r = imposio.readWatermarkImage("scan.png", { seedX: 620, seedY: 18 });
if (r.ok) console.log("watermark:", r.text);