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 | 0–1 |
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) |
0–1. |
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". |