Kihagyás

Szerkesztési réteg (alakzatok)

Rajzolj és kezelj vektoros alakzatokat, szöveget és képeket egy oldal szerkesztési rétegén. A koordináták az aktuális egységben vannak, PDF-koordinátákban (origó bal alsó sarokban, Y felfelé). A színek "#rrggbb" vagy "none".

Az add* metódusok egész alakzat-ID-t adnak vissza, amelyet az alábbi ID-alapú műveletek használnak.

Közös alakzat-opciók

A legtöbb add* metódus opcionális opts objektumot fogad:

Kulcs Típus Megjegyzések
stroke string "#rrggbb" vagy "none"
fill string "#rrggbb" vagy "none"
widthPt number Vonalvastagság pontban
opacity number 01
rotation number Fok

Alakzatok hozzáadása

Metódus Paraméterek Visszaad
addLine(page, x1, y1, x2, y2, opts?) vonalvégpontok id
addRect(page, x, y, w, h, opts?) bal alsó sarok + méret id
addCircle(page, x, y, w, h, opts?) határoló doboz id
addCheckbox(page, x, y, w, h, opts?) jelölőnégyzet (keret + pipa) id
addPolygon(page, points, opts?) points = [x1,y1, x2,y2, …] id
addText(page, x, y, w, h, text, opts?) szöveg egy keretben id
addImage(page, x, y, w, h, source, opts?) kép egy keretben id
addWatermark(page, x, y, w, h, text, opts?) kétszínű olvasható kód id

addCheckbox extra opts: checked (bool, alapérték true).

addText kiegészítő opciók: fontFamily, fontSizePt, bold, italic, align ("left"/"center"/"right").

addImage source: fájl elérési út (PNG/JPEG/…) vagy base64 karakterlánc (esetleg data:image/…;base64, előtaggal).

addWatermark beágyazza a text-et kétszínű, hibajavított mintaként, amely túléli a nyomtatást és a szkennelést. opts:

Kulcs Jelentés
shape "block" (tömör mozaik) vagy "frame" (színes vonalkód a szegély mentén, kereső-négyzetekkel a sarkokban)
ec hibajavítás "L"/"M"/"Q"/"H"
colorA háttérszín
colorB vonalak színe
barWidth vonal-/modulméret mm-ben (pl. 0.8)
wallMm szegélysáv vastagsága, csak frame

A colorA/colorB az alakzat kitöltése/körvonala, így a setShapeFill / setShapeStroke is módosítja. Watermarkot a readWatermark(page) (logikai) vagy az imposio.readWatermarkImage(path, opts) (renderelt/szkennelt képből) olvas vissza.

Metódus Leírás
clearLayer(page) Eltávolítja az összes alakzatot az oldalról.
shapeCount(page) Alakzatok száma az oldalon.
var id = doc.addRect(0, 20, 20, 50, 30, { stroke: "#0066ff", fill: "none", widthPt: 1 });
doc.addText(0, 20, 60, 80, 10, "Imposio", { fontSizePt: 12, align: "center" });

Alakzatok ellenőrzése

Metódus Visszaad
shapeIds(page) Az alakzat-ID-k tömbje rajzolási sorrendben.
shapeProps(page, id) { id, type, x, y, w, h, rotation, skew, opacity, stroke, fill, widthPt, filled, locked, hidden, flipX, flipY, text } (x,y = a határoló doboz bal alsó sarka; színek "#aarrggbb" vagy "none").
shapeVisualBBox(page, id) Szoros határoló doboz forgatást/nyírást figyelembe véve { x, y, w, h }.

Alakzatok módosítása (ID alapján)

Mindegyik false-t ad vissza, ha az alakzat nem létezik.

Metódus Leírás
setShapeRotation(page, id, deg) Abszolút forgatás beállítása.
rotateShape(page, id, deltaDeg) Hozzáad a forgatáshoz.
moveShape(page, id, dx, dy) Eltolással mozgat.
setShapePos(page, id, x, y) Bal alsó sarok pozíciójának beállítása.
setShapeSize(page, id, w, h) Méret beállítása.
setShapeStroke(page, id, color, widthPt?) Vonalszín beállítása (és opcionálisan a vastagság).
setShapeFill(page, id, color) Kitöltési szín beállítása.
setShapeOpacity(page, id, opacity) 01.
setShapeChecked(page, id, checked) Bejelölés/törlés (csak jelölőnégyzet-alakzatok).
flipShape(page, id, axis) "h" vagy "v".
setShapeLocked(page, id, locked) Zárolja/feloldja.
setShapeHidden(page, id, hidden) Megmutatja/elrejti.
removeShape(page, id) Törli az alakzatot.

Csoportos műveletek

Egyszerre több alakzaton hatnak. Az ids JavaScript-tömb (vagy egyetlen szám).

Metódus Leírás
rotateShapes(page, ids, deltaDeg) A csoportot a közös középpontja körül forgatja.
alignShapes(page, ids, mode, opts?) mode: left, hcenter, right, top, middle, bottom. opts.toPage az oldalhoz igazít (alapértelmezett: a kombinált határoló dobozhoz, ≥2 alakzat szükséges).
distributeShapes(page, ids, axis) axis "h"/"v" (≥3 alakzat szükséges).
flipShapes(page, ids, axis) "h"/"v".

Rétegek mentése és betöltése

Metódus Leírás
saveLayer(page, path) Az oldal szerkesztési rétegét .imv fájlba menti (ugyanolyan JSON, mint a felületen).
loadLayer(page, path, opts?) .imv fájlt tölt be az oldalba. opts.mode: "replace" (alapértelmezett) vagy "append".