Objekt imposio¶
Globálny vstupný bod. Otvára a vytvára dokumenty a riadi jednotky.
Otváranie a vytváranie dokumentov¶
imposio.open(path, opts?)¶
Otvorí súbor z disku. Podľa prípony: PDF (priamo), obrázky (PNG/JPEG/BMP/GIF/TIFF/WebP →
jedna strana), SVG, PostScript (PS/EPS, cez Ghostscript), EPUB alebo text/Markdown. Vracia
Dokument, pri zlyhaní null (+ výnimka).
| Parameter | Typ | Popis |
|---|---|---|
path |
string | Absolútna cesta k súboru. |
opts |
objekt | Možnosti importu (nižšie); rozmery v aktuálnych jednotkách. |
opts pre obrázky: { size: [w, h] | dpi: N, bleed: { size, rgb: [r,g,b] (0–255) |
cmyk: [c,m,y,k] (0–100), backPage: true } } — size/dpi určia veľkosť strany / tlačové
rozlíšenie; bleed pridá spadávku z plnej farby (strana narastie o size na každej hrane,
trim box = obrázok, CMYK ide do PDF ako DeviceCMYK bez konverzie) a backPage: true pridá
druhú stranu vyplnenú rovnakou farbou.
opts pre text/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)¶
Vytvorí nový prázdny jednostranový dokument. Rozmery sú v aktuálnej jednotke. Vracia Dokument.
| Parameter | Typ | Popis |
|---|---|---|
width |
number|string | Šírka strany (aktuálna jednotka, alebo string ako "210mm"). |
height |
number|string | Výška strany. |
imposio.activeDocument()¶
Vracia aktuálne aktívny PDF tab v GUI ako požičaný (borrowed) Dokument (zmeny ovplyvňujú
živý dokument; skript ho nemaže). Vracia null pri behu headless/CLI alebo bez otvoreného
dokumentu.
imposio.activePage()¶
Vracia 0-based index aktuálne zobrazenej strany v aktívnom tabe, alebo -1 ak žiadna.
Jednotky¶
imposio.setUnits(units)¶
Nastaví jednotku pre všetky nasledujúce dĺžkové hodnoty a gettery. Vracia true; neznáma
jednotka vyhodí výnimku.
| Hodnota | Jednotka |
|---|---|
"mm" |
milimetre (predvolené) |
"cm" |
centimetre |
"in" / "inch" |
palce |
"pt" / "point" |
PostScript body |
imposio.units()¶
Vracia aktuálnu jednotku ako string.
Jednotkové helpery¶
| Metóda | Vracia |
|---|---|
imposio.toPt(v) |
v (aktuálna jednotka) → body |
imposio.fromPt(pt) |
body → aktuálna jednotka |
imposio.mmToPt(mm) |
milimetre → body (vždy mm) |
imposio.ptToMm(pt) |
body → milimetre (vždy mm) |
imposio.setUnits("in");
var pts = imposio.toPt(8.5); // 612
Dátové súbory¶
imposio.loadData(path, opts?)¶
Načíta tabuľkový súbor pre merge variabilných dát. Podporuje
CSV / TSV / TXT / XLSX / ODS / JSON. Vracia { columns: […], rows: [[…]], format };
pri chybe vyhodí výnimku.
Kľúč opts |
Popis | Default |
|---|---|---|
encoding |
napr. "windows-1250" |
"Auto" |
firstRowHeaders |
Prvý riadok obsahuje názvy stĺpcov | true |
delimiter |
napr. ";" (CSV) |
auto |
imposio.combineData(tables, opts?)¶
Spojí viac tabuliek (z loadData alebo poskladaných skriptom) do jednej
{ columns, rows }. tables je pole.
Kľúč opts |
Hodnoty | Význam |
|---|---|---|
modes |
["append"\|"parallel", …] |
Ako sa tables[i] pripája k výsledku (modes[0] sa ignoruje): append = riadky pod seba, parallel = stĺpce vedľa seba. |
mismatch |
"pad" (default), "cycle", "truncate" |
Parallel tabuľky s rôznym počtom riadkov. |
Watermarky¶
imposio.readWatermarkImage(path, opts?)¶
Prečíta Imposio watermark z vyrenderovaného alebo naskenovaného obrázka a vráti
{ ok, text }. opts { seedX, seedY } sú pixelové súradnice kliku na vzor (pri
frame watermarku kdekoľvek na obvode) — vďaka tomu je čítanie spoľahlivé aj nad
pestrým pozadím. Vkladanie viď addWatermark.
var r = imposio.readWatermarkImage("scan.png", { seedX: 620, seedY: 18 });
if (r.ok) console.log("watermark:", r.text);