Calque d'édition (formes)¶
Dessinez et manipulez formes vectorielles, texte et images sur le calque d'édition d'une page.
Les coordonnées sont dans l'unité courante, en coordonnées PDF (origine en bas à gauche, Y
vers le haut). Les couleurs sont "#rrggbb" ou "none".
Les méthodes add* renvoient un ID de forme entier utilisé par les opérations par ID
ci-dessous.
Options de forme communes¶
La plupart des méthodes add* prennent un objet opts optionnel :
| Clé | Type | Notes |
|---|---|---|
stroke |
string | "#rrggbb" ou "none" |
fill |
string | "#rrggbb" ou "none" |
widthPt |
number | Épaisseur de trait en points |
opacity |
number | 0–1 |
rotation |
number | Degrés |
Ajouter des formes¶
| Méthode | Paramètres | Renvoie |
|---|---|---|
addLine(page, x1, y1, x2, y2, opts?) |
extrémités de ligne | id |
addRect(page, x, y, w, h, opts?) |
coin bas-gauche + taille | id |
addCircle(page, x, y, w, h, opts?) |
boîte englobante | id |
addCheckbox(page, x, y, w, h, opts?) |
case à cocher (cadre + coche) | id |
addPolygon(page, points, opts?) |
points = [x1,y1, x2,y2, …] |
id |
addText(page, x, y, w, h, text, opts?) |
texte dans une boîte | id |
addImage(page, x, y, w, h, source, opts?) |
image dans une boîte | id |
addWatermark(page, x, y, w, h, text, opts?) |
code bicolore lisible | id |
opts supplémentaires d'addCheckbox : checked (bool, défaut true).
addText opts supplémentaires : fontFamily, fontSizePt, bold, italic,
align ("left"/"center"/"right").
addImage source : un chemin de fichier (PNG/JPEG/…) ou une chaîne base64
(éventuellement avec un préfixe data:image/…;base64,).
addWatermark intègre text sous forme de motif bicolore avec correction
d'erreurs, qui survit à l'impression et au scan. opts :
| Clé | Signification |
|---|---|
shape |
"block" (mosaïque pleine) ou "frame" (code-barres en couleur le long du bord, avec carrés de repérage dans les coins) |
ec |
correction d'erreurs "L"/"M"/"Q"/"H" |
colorA |
couleur de fond |
colorB |
couleur des barres |
barWidth |
taille de barre/module en mm (p. ex. 0.8) |
wallMm |
épaisseur de la bande de bordure, frame uniquement |
colorA/colorB sont le remplissage/contour de la forme, donc modifiables aussi via
setShapeFill / setShapeStroke. On relit un watermark avec readWatermark(page)
(logique) ou imposio.readWatermarkImage(path, opts) (depuis une image rendue/scannée).
| Méthode | Description |
|---|---|
clearLayer(page) |
Supprime toutes les formes de la page. |
shapeCount(page) |
Nombre de formes sur la page. |
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" });
Inspecter les formes¶
| Méthode | Renvoie |
|---|---|
shapeIds(page) |
Tableau des ID de formes dans l'ordre de tracé. |
shapeProps(page, id) |
{ id, type, x, y, w, h, rotation, skew, opacity, stroke, fill, widthPt, filled, locked, hidden, flipX, flipY, text } (x,y = coin bas-gauche de la bbox ; couleurs "#aarrggbb" ou "none"). |
shapeVisualBBox(page, id) |
Bbox serrée tenant compte de la rotation/cisaillement { x, y, w, h }. |
Modifier les formes (par ID)¶
Toutes renvoient false si la forme n'existe pas.
| Méthode | Description |
|---|---|
setShapeRotation(page, id, deg) |
Définit la rotation absolue. |
rotateShape(page, id, deltaDeg) |
Ajoute à la rotation. |
moveShape(page, id, dx, dy) |
Déplace d'un décalage. |
setShapePos(page, id, x, y) |
Définit la position du coin bas-gauche. |
setShapeSize(page, id, w, h) |
Définit la taille. |
setShapeStroke(page, id, color, widthPt?) |
Définit la couleur de trait (et l'épaisseur en option). |
setShapeFill(page, id, color) |
Définit la couleur de remplissage. |
setShapeOpacity(page, id, opacity) |
0–1. |
setShapeChecked(page, id, checked) |
Coche/décoche (formes case à cocher seulement). |
flipShape(page, id, axis) |
"h" ou "v". |
setShapeLocked(page, id, locked) |
Verrouille/déverrouille. |
setShapeHidden(page, id, hidden) |
Affiche/masque. |
removeShape(page, id) |
Supprime la forme. |
Opérations de groupe¶
Agissent sur plusieurs formes à la fois. ids est un tableau JS (ou un seul nombre).
| Méthode | Description |
|---|---|
rotateShapes(page, ids, deltaDeg) |
Tourne le groupe autour de son centre commun. |
alignShapes(page, ids, mode, opts?) |
mode : left, hcenter, right, top, middle, bottom. opts.toPage aligne sur la page (défaut : sur la bbox combinée, requiert ≥2 formes). |
distributeShapes(page, ids, axis) |
axis "h"/"v" (requiert ≥3 formes). |
flipShapes(page, ids, axis) |
"h"/"v". |
Enregistrer et charger des calques¶
| Méthode | Description |
|---|---|
saveLayer(page, path) |
Enregistre le calque d'édition de la page dans un fichier .imv (même JSON que l'interface). |
loadLayer(page, path, opts?) |
Charge un .imv dans la page. opts.mode : "replace" (défaut) ou "append". |