@embedpdf/core-annotation 3.0.0-next.12 → 3.0.0-next.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +3477 -2143
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +236 -5
- package/dist/index.d.ts +236 -5
- package/dist/index.js +3443 -2144
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
package/dist/index.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AnnotationDTO, AnnotationFlags, AnnotationFlags as AnnotationFlags$1, AnnotationRef, BlendMode, BlendMode as BlendMode$1, CaretIntent, InkIntent, LineEnding, LineEndings, NO_ANNOTATION_FLAGS, PdfLinkTarget, PdfPoint, PdfRect, StrikeoutIntent } from "@embedpdf/engine-core/runtime";
|
|
1
|
+
import { AnnotationDTO, AnnotationFlags, AnnotationFlags as AnnotationFlags$1, AnnotationRef, BlendMode, BlendMode as BlendMode$1, CaretIntent, InkIntent, LineDimensionCaption, LineEnding, LineEndings, LineLeader, NO_ANNOTATION_FLAGS, PdfLinkTarget, PdfMeasurement, PdfPoint, PdfRect, RichTextDocumentInput, RichTextParagraph, RichTextRunStyle, ShapeDimensionCaption, StrikeoutIntent } from "@embedpdf/engine-core/runtime";
|
|
2
2
|
import { PageObjectNumber } from "@embedpdf/core";
|
|
3
3
|
import { PageRotation, Point, Rect as Rect$1, Size, TextQuad, TextQuad as TextQuad$1 } from "@embedpdf/core-geometry";
|
|
4
4
|
//#region src/flags.d.ts
|
|
@@ -46,6 +46,92 @@ declare const annotDeletable: (a: FlagBearer) => boolean;
|
|
|
46
46
|
/** `/Contents` text edits — the contents counterpart of `locked`. */
|
|
47
47
|
declare const annotContentsEditable: (a: FlagBearer) => boolean;
|
|
48
48
|
//#endregion
|
|
49
|
+
//#region src/measurement-shape.d.ts
|
|
50
|
+
interface ShapeMeasurementAppearance {
|
|
51
|
+
intent: 'PolyLineDimension' | 'PolygonDimension';
|
|
52
|
+
measure: PdfMeasurement | null;
|
|
53
|
+
caption: ShapeDimensionCaption;
|
|
54
|
+
crop: PdfRect;
|
|
55
|
+
text: string;
|
|
56
|
+
}
|
|
57
|
+
interface ShapeMeasurementLayout {
|
|
58
|
+
caption: DistanceCaptionLayout | null;
|
|
59
|
+
visualBounds: Rect;
|
|
60
|
+
selectionPoints: Vec[];
|
|
61
|
+
}
|
|
62
|
+
/** The public caption center stays in PDF space; the editor draws in content space. */
|
|
63
|
+
declare function shapeCaptionPoint(appearance: ShapeMeasurementAppearance): Vec | undefined;
|
|
64
|
+
declare function withShapeCaptionPoint(appearance: ShapeMeasurementAppearance, center: Vec): ShapeMeasurementAppearance;
|
|
65
|
+
declare function transformMeasurementCaption(appearance: MeasurementAppearance | undefined, transform: (point: Vec) => Vec): MeasurementAppearance | undefined;
|
|
66
|
+
declare function shapeMeasurementReadout(geom: Geom, appearance: ShapeMeasurementAppearance): import("@embedpdf/engine-core/runtime").MeasurementReadout | import("@embedpdf/engine-core/runtime").MeasurementUnavailable;
|
|
67
|
+
declare function shapeMeasurementLabel(geom: Geom, appearance: ShapeMeasurementAppearance): string;
|
|
68
|
+
/** Match the native shape-caption anchor, including an interior fallback for concave areas. */
|
|
69
|
+
declare function automaticShapeCaptionCenter(points: readonly Vec[], closed: boolean): Vec;
|
|
70
|
+
declare function shapeMeasurementLayout(geom: Geom, appearance: ShapeMeasurementAppearance, style: Style): ShapeMeasurementLayout | null;
|
|
71
|
+
declare function measurementLayout(geom: Geom, appearance: MeasurementAppearance, style: Style): ShapeMeasurementLayout | null;
|
|
72
|
+
declare function measurementSelectionQuad(geom: Geom, appearance: MeasurementAppearance, style: Style): Quad;
|
|
73
|
+
declare function moveMeasurementCaption(geom: Geom, appearance: MeasurementAppearance, delta: Vec, style: Style): MeasurementAppearance;
|
|
74
|
+
//#endregion
|
|
75
|
+
//#region src/measurement.d.ts
|
|
76
|
+
type MeasurementAppearance = DistanceAppearance | ShapeMeasurementAppearance;
|
|
77
|
+
/**
|
|
78
|
+
* A distance annotation's render projection. Offsets stay in directed PDF line
|
|
79
|
+
* axes. The crop keeps numeric rounding in the original PDF coordinate frame.
|
|
80
|
+
*/
|
|
81
|
+
interface DistanceAppearance {
|
|
82
|
+
intent: 'LineDimension';
|
|
83
|
+
measure: PdfMeasurement | null;
|
|
84
|
+
caption: LineDimensionCaption;
|
|
85
|
+
leader?: LineLeader;
|
|
86
|
+
crop: PdfRect;
|
|
87
|
+
text: string;
|
|
88
|
+
}
|
|
89
|
+
interface DistanceSegment {
|
|
90
|
+
from: Vec;
|
|
91
|
+
to: Vec;
|
|
92
|
+
}
|
|
93
|
+
interface DistanceCaptionLayout {
|
|
94
|
+
text: string;
|
|
95
|
+
center: Vec;
|
|
96
|
+
along: Vec;
|
|
97
|
+
normal: Vec;
|
|
98
|
+
width: number;
|
|
99
|
+
height: number;
|
|
100
|
+
bounds: Quad;
|
|
101
|
+
}
|
|
102
|
+
/** One layout drives the preview, selection, handles, and hit testing. */
|
|
103
|
+
interface DistanceLayout {
|
|
104
|
+
along: Vec;
|
|
105
|
+
normal: Vec;
|
|
106
|
+
length: number;
|
|
107
|
+
measuredStart: Vec;
|
|
108
|
+
measuredEnd: Vec;
|
|
109
|
+
dimensionStart: Vec;
|
|
110
|
+
dimensionEnd: Vec;
|
|
111
|
+
dimensionSegments: DistanceSegment[];
|
|
112
|
+
leaderSegments: DistanceSegment[];
|
|
113
|
+
captionConnector: DistanceSegment[];
|
|
114
|
+
caption: DistanceCaptionLayout | null;
|
|
115
|
+
arrowPlacement: 'inside' | 'outside';
|
|
116
|
+
endings: RenderNode[];
|
|
117
|
+
selectionPoints: Vec[];
|
|
118
|
+
visualBounds: Rect;
|
|
119
|
+
}
|
|
120
|
+
declare function distanceLabel(geom: Geom, appearance: DistanceAppearance): string;
|
|
121
|
+
declare function distanceLayout(geom: Geom, appearance: DistanceAppearance, strokeWidth: number): DistanceLayout | null;
|
|
122
|
+
declare function expandDistanceBounds(bounds: Rect, padding: number): Rect;
|
|
123
|
+
declare function distanceSelectionQuad(geom: Geom, appearance: DistanceAppearance, strokeWidth: number): Quad;
|
|
124
|
+
declare function distanceHandles(layout: DistanceLayout): Handle[];
|
|
125
|
+
declare function distanceCaptionHit(layout: {
|
|
126
|
+
caption: DistanceCaptionLayout | null;
|
|
127
|
+
}, point: Vec, margin?: number): boolean;
|
|
128
|
+
declare function distanceHit(layout: DistanceLayout, point: Vec, strokeWidth: number, margin: number): boolean;
|
|
129
|
+
declare function distanceCaptionAt(geom: Geom, appearance: DistanceAppearance, width: number): Vec | null;
|
|
130
|
+
declare function distanceLeaderLength(geom: Geom, point: Vec): number;
|
|
131
|
+
declare function moveDistanceCaption(geom: Geom, appearance: DistanceAppearance, delta: Vec): DistanceAppearance;
|
|
132
|
+
declare function distanceScene(geom: Geom, appearance: DistanceAppearance, style: Style): SceneNode[];
|
|
133
|
+
declare function measurementCaptionScene(caption: DistanceCaptionLayout | null, style: Style): SceneNode[];
|
|
134
|
+
//#endregion
|
|
49
135
|
//#region src/types.d.ts
|
|
50
136
|
/**
|
|
51
137
|
* Content-space point/rect (y-down, PDF points, crop-relative) — the viewer space.
|
|
@@ -196,6 +282,15 @@ interface TextStyle {
|
|
|
196
282
|
fontSize: number;
|
|
197
283
|
fontColor: string;
|
|
198
284
|
textAlign: TextAlign;
|
|
285
|
+
/**
|
|
286
|
+
* The rich body's formatting (free text only): bold = body weight ≥ 600,
|
|
287
|
+
* italic = the body face's italic, underline = the body's decoration.
|
|
288
|
+
* Absent = off. Runs override these as deltas (a bold word in a regular
|
|
289
|
+
* box), which the plugin routes to the editor's text selection instead.
|
|
290
|
+
*/
|
|
291
|
+
bold?: boolean;
|
|
292
|
+
italic?: boolean;
|
|
293
|
+
underline?: boolean;
|
|
199
294
|
}
|
|
200
295
|
/**
|
|
201
296
|
* The ONE flat vocabulary for editable appearance properties — what property
|
|
@@ -236,6 +331,10 @@ type PropKey = keyof AnnotationProps;
|
|
|
236
331
|
*/
|
|
237
332
|
type PatchScope = {
|
|
238
333
|
kind: 'geometry';
|
|
334
|
+
} | {
|
|
335
|
+
kind: 'caption';
|
|
336
|
+
} | {
|
|
337
|
+
kind: 'leader';
|
|
239
338
|
} | {
|
|
240
339
|
kind: 'props';
|
|
241
340
|
keys: PropKey[];
|
|
@@ -259,6 +358,7 @@ interface Annot {
|
|
|
259
358
|
text: string;
|
|
260
359
|
repeat: boolean;
|
|
261
360
|
};
|
|
361
|
+
measure?: MeasurementAppearance;
|
|
262
362
|
/** `/Name` icon — present only for icon kinds (text note, file attachment).
|
|
263
363
|
* Like `style`, a projection of `data`, editable via `setProps`. */
|
|
264
364
|
icon?: string;
|
|
@@ -395,8 +495,20 @@ type Draft = {
|
|
|
395
495
|
/** The tool's `/F` seed, captured at DOWN like `upright` — merged over
|
|
396
496
|
* {@link DRAWN_FLAGS} at commit (a note tool sets noZoom/noRotate). */
|
|
397
497
|
flags?: Partial<AnnotationFlags$1>;
|
|
498
|
+
} | {
|
|
499
|
+
g: 'create-distance';
|
|
500
|
+
step: 'endpoints' | 'offset';
|
|
501
|
+
subtype: 'line';
|
|
502
|
+
preset: string;
|
|
503
|
+
pon: PageObjectNumber;
|
|
504
|
+
from: Vec;
|
|
505
|
+
to: Vec;
|
|
506
|
+
measure: DistanceAppearance;
|
|
507
|
+
flags?: Partial<AnnotationFlags$1>;
|
|
398
508
|
} | {
|
|
399
509
|
g: 'create-line';
|
|
510
|
+
measure?: MeasurementAppearance;
|
|
511
|
+
capture?: string;
|
|
400
512
|
subtype: Subtype;
|
|
401
513
|
preset?: string;
|
|
402
514
|
pon: PageObjectNumber;
|
|
@@ -408,6 +520,7 @@ type Draft = {
|
|
|
408
520
|
flags?: Partial<AnnotationFlags$1>;
|
|
409
521
|
} | {
|
|
410
522
|
g: 'create-poly';
|
|
523
|
+
measure?: ShapeMeasurementAppearance;
|
|
411
524
|
subtype: Subtype;
|
|
412
525
|
preset?: string;
|
|
413
526
|
pon: PageObjectNumber;
|
|
@@ -474,6 +587,16 @@ type Draft = {
|
|
|
474
587
|
base: Rect;
|
|
475
588
|
cur: Rect;
|
|
476
589
|
view?: ViewEnv;
|
|
590
|
+
} | {
|
|
591
|
+
g: 'caption';
|
|
592
|
+
id: Id;
|
|
593
|
+
start: Vec;
|
|
594
|
+
delta: Vec;
|
|
595
|
+
} | {
|
|
596
|
+
g: 'leader';
|
|
597
|
+
id: Id;
|
|
598
|
+
start: Vec;
|
|
599
|
+
delta: number;
|
|
477
600
|
} | {
|
|
478
601
|
g: 'marquee';
|
|
479
602
|
pon: PageObjectNumber;
|
|
@@ -622,6 +745,8 @@ type Msg = {
|
|
|
622
745
|
in: PointerInput;
|
|
623
746
|
} | {
|
|
624
747
|
t: 'createPointer';
|
|
748
|
+
measure?: MeasurementAppearance;
|
|
749
|
+
capture?: string;
|
|
625
750
|
phase: 'down' | 'move' | 'up';
|
|
626
751
|
subtype: Subtype;
|
|
627
752
|
/** The authoring tool's `defaults` key (see {@link Draft}). Defaults to `subtype`. */
|
|
@@ -750,10 +875,19 @@ type Msg = {
|
|
|
750
875
|
t: 'setText';
|
|
751
876
|
id: Id;
|
|
752
877
|
text: string;
|
|
878
|
+
} | {
|
|
879
|
+
t: 'setRichText';
|
|
880
|
+
id: Id;
|
|
881
|
+
doc: RichTextDocumentInput;
|
|
753
882
|
} | {
|
|
754
883
|
t: 'endTextEdit';
|
|
755
884
|
};
|
|
756
885
|
type Effect = {
|
|
886
|
+
fx: 'captured';
|
|
887
|
+
tool: string;
|
|
888
|
+
pon: number;
|
|
889
|
+
geom: Geom;
|
|
890
|
+
} | {
|
|
757
891
|
fx: 'create';
|
|
758
892
|
id: Id;
|
|
759
893
|
} | {
|
|
@@ -837,6 +971,7 @@ interface RenderItem {
|
|
|
837
971
|
text: string;
|
|
838
972
|
repeat: boolean;
|
|
839
973
|
};
|
|
974
|
+
measure?: MeasurementAppearance;
|
|
840
975
|
/**
|
|
841
976
|
* Applied rotation (deg, CW), or 0/undefined. For BOX kinds (`rect`/`text`)
|
|
842
977
|
* `box` is the UNROTATED visual box and the renderer applies this rotation
|
|
@@ -927,6 +1062,7 @@ type SceneNode = {
|
|
|
927
1062
|
text: string;
|
|
928
1063
|
fontSize: number;
|
|
929
1064
|
fontFamily?: string;
|
|
1065
|
+
rotation?: number;
|
|
930
1066
|
paint: Paint;
|
|
931
1067
|
};
|
|
932
1068
|
/** Pure geometry settings for recognising and axis-snapping a freehand stroke. */
|
|
@@ -1220,6 +1356,70 @@ declare function hitTest(m: Model, pon: number, p: Vec, geom: ChromeGeom, stroke
|
|
|
1220
1356
|
/** The cursor to show on hover: a resize cursor over a handle, move/pointer over a body. */
|
|
1221
1357
|
declare function cursorAt(m: Model, pon: number, p: Vec, geom: ChromeGeom, strokeMargin: number, pageBox?: Rect, inert?: ReadonlySet<Id>, view?: ViewEnv): Cursor | null;
|
|
1222
1358
|
//#endregion
|
|
1359
|
+
//#region src/richtext.d.ts
|
|
1360
|
+
type RichTextStyleDelta = Partial<RichTextRunStyle>;
|
|
1361
|
+
/** A range of the plain projection, `start <= end`, end exclusive. */
|
|
1362
|
+
interface RichTextRange {
|
|
1363
|
+
start: number;
|
|
1364
|
+
end: number;
|
|
1365
|
+
}
|
|
1366
|
+
/** Length of the plain projection. */
|
|
1367
|
+
declare function richTextLength(doc: {
|
|
1368
|
+
paragraphs: readonly RichTextParagraph[];
|
|
1369
|
+
}): number;
|
|
1370
|
+
/** Two deltas override the same properties with the same values. */
|
|
1371
|
+
declare function sameStyleDelta(a: RichTextStyleDelta | undefined, b: RichTextStyleDelta | undefined): boolean;
|
|
1372
|
+
/**
|
|
1373
|
+
* Merge adjacent runs whose deltas agree, drop empty runs, strip empty
|
|
1374
|
+
* deltas. A paragraph with no text keeps a single empty run so the editor
|
|
1375
|
+
* has somewhere to put the caret.
|
|
1376
|
+
*/
|
|
1377
|
+
declare function normalizeRuns<T extends {
|
|
1378
|
+
paragraphs: RichTextParagraph[];
|
|
1379
|
+
}>(doc: T): T;
|
|
1380
|
+
/** Where a flat offset falls: paragraph index and offset within it (the
|
|
1381
|
+
* separator between paragraphs belongs to the end of the earlier one). */
|
|
1382
|
+
declare function locateOffset(doc: {
|
|
1383
|
+
paragraphs: readonly RichTextParagraph[];
|
|
1384
|
+
}, offset: number): {
|
|
1385
|
+
paragraph: number;
|
|
1386
|
+
offset: number;
|
|
1387
|
+
};
|
|
1388
|
+
/** The paragraph with a run boundary guaranteed at a local offset. */
|
|
1389
|
+
declare function splitRunsAt(paragraph: RichTextParagraph, offset: number): RichTextParagraph;
|
|
1390
|
+
/**
|
|
1391
|
+
* Apply a style delta to every character of a range: the runs it touches are
|
|
1392
|
+
* split at its boundaries, the covered pieces take the delta on top of what
|
|
1393
|
+
* they already override (`clear` names properties to stop overriding, so
|
|
1394
|
+
* they follow the body again), and the result is normalised. An empty range
|
|
1395
|
+
* is a no-op.
|
|
1396
|
+
*/
|
|
1397
|
+
declare function applyStyleToRange<T extends {
|
|
1398
|
+
paragraphs: RichTextParagraph[];
|
|
1399
|
+
}>(doc: T, range: RichTextRange, delta: RichTextStyleDelta, clear?: readonly (keyof RichTextRunStyle)[]): T;
|
|
1400
|
+
/**
|
|
1401
|
+
* The delta in force at a caret: the run the offset falls in, or, at a run
|
|
1402
|
+
* boundary, the run before it (what typing there would inherit). Undefined
|
|
1403
|
+
* for an empty document.
|
|
1404
|
+
*/
|
|
1405
|
+
declare function styleAt(doc: {
|
|
1406
|
+
paragraphs: readonly RichTextParagraph[];
|
|
1407
|
+
}, offset: number): RichTextStyleDelta | undefined;
|
|
1408
|
+
/** Every run overlapping the range satisfies `predicate` (an empty range
|
|
1409
|
+
* tests the caret's style). */
|
|
1410
|
+
declare function rangeHasStyle(doc: {
|
|
1411
|
+
paragraphs: readonly RichTextParagraph[];
|
|
1412
|
+
}, range: RichTextRange, predicate: (delta: RichTextStyleDelta) => boolean): boolean;
|
|
1413
|
+
/** Plain paragraphs from text: one per line break, one unstyled run each. */
|
|
1414
|
+
declare function paragraphsFromPlainText(text: string): RichTextParagraph[];
|
|
1415
|
+
/** The plain projection: paragraphs joined by `\r`, runs concatenated. */
|
|
1416
|
+
declare function plainTextOf(doc: {
|
|
1417
|
+
paragraphs: readonly RichTextParagraph[];
|
|
1418
|
+
}): string;
|
|
1419
|
+
/** True when nothing in the document overrides the body: no run delta, no
|
|
1420
|
+
* paragraph property. Such a document commits as plain `contents`. */
|
|
1421
|
+
declare function isPlainRichText(doc: RichTextDocumentInput): boolean;
|
|
1422
|
+
//#endregion
|
|
1223
1423
|
//#region src/group.d.ts
|
|
1224
1424
|
/**
|
|
1225
1425
|
* The transform capabilities of a multi-target (group) selection: a group can
|
|
@@ -1334,6 +1534,18 @@ type PropSpec = {
|
|
|
1334
1534
|
} | {
|
|
1335
1535
|
key: 'textAlign';
|
|
1336
1536
|
label: string;
|
|
1537
|
+
} |
|
|
1538
|
+
/** Rich-text formatting toggles (free text): the body's formatting, or —
|
|
1539
|
+
* while the text editor has a range — that range's runs. */
|
|
1540
|
+
{
|
|
1541
|
+
key: 'bold';
|
|
1542
|
+
label: string;
|
|
1543
|
+
} | {
|
|
1544
|
+
key: 'italic';
|
|
1545
|
+
label: string;
|
|
1546
|
+
} | {
|
|
1547
|
+
key: 'underline';
|
|
1548
|
+
label: string;
|
|
1337
1549
|
} | {
|
|
1338
1550
|
key: 'blendMode';
|
|
1339
1551
|
label: string;
|
|
@@ -1534,9 +1746,9 @@ declare function uprightAnchoredRect(anchor: Vec, width: number, height: number,
|
|
|
1534
1746
|
*/
|
|
1535
1747
|
declare function fitStampBox(center: Vec, desired: Size, page: Size, rotCW: number): Rect;
|
|
1536
1748
|
/** Reset a geom to its as-authored orientation (`rot → 0`). Box: drop `rot`.
|
|
1537
|
-
* Vertex: spin the points by `-rot` about
|
|
1538
|
-
*
|
|
1539
|
-
declare function geomResetRotation(g: Geom): Geom;
|
|
1749
|
+
* Vertex: spin the points by `-rot` about the supplied selection center.
|
|
1750
|
+
* Geometry-only callers retain the centroid default. */
|
|
1751
|
+
declare function geomResetRotation(g: Geom, pivot?: Vec): Geom;
|
|
1540
1752
|
/**
|
|
1541
1753
|
* The oriented selection box (OBB) of a rotatable geom: four corners (in order
|
|
1542
1754
|
* nw, ne, se, sw of the LOCAL box, transformed) + the angle. For a box this is
|
|
@@ -1708,6 +1920,17 @@ declare function geomHit(g: Geom, p: Vec, margin: number, filled: boolean, strok
|
|
|
1708
1920
|
declare function geomHandles(g: Geom): Handle[];
|
|
1709
1921
|
declare function geomTranslate(g: Geom, d: Vec): Geom;
|
|
1710
1922
|
declare function geomDragHandle(g: Geom, handle: string, to: Vec): Geom;
|
|
1923
|
+
/**
|
|
1924
|
+
* The text PLATE inset of a free-text box: twice the border width. The plate
|
|
1925
|
+
* — where text lays out, clips and scrolls — is the box deflated by this on
|
|
1926
|
+
* every side: the ink band and an equal breathing band, so the text never
|
|
1927
|
+
* touches the stroke. Acrobat's rule, measured 1–12 pt on plain boxes and
|
|
1928
|
+
* 1–7 pt on callouts (plan `2026-09-15-free-text-plate-inset.md`); the
|
|
1929
|
+
* engine's `FreeTextPlate` is the same formula, so the live editor sits
|
|
1930
|
+
* exactly where the baked text lands. Acrobat's thinnest border is 1 pt; a
|
|
1931
|
+
* width of 0 is ours alone and gives no inset (the plate is the box).
|
|
1932
|
+
*/
|
|
1933
|
+
declare function textPlateInset(strokeWidth: number): number;
|
|
1711
1934
|
declare function geomScene(g: Geom, strokeWidth?: number, border?: Border): RenderNode[];
|
|
1712
1935
|
declare const pdfToContentPoint: (p: PdfPoint, crop: PdfRect) => Vec;
|
|
1713
1936
|
declare const contentToPdfPoint: (p: Vec, crop: PdfRect) => PdfPoint;
|
|
@@ -1732,6 +1955,14 @@ declare function cloudyBorderExtent(intensity: number, strokeWidth: number, elli
|
|
|
1732
1955
|
*/
|
|
1733
1956
|
declare function cloudyPath(box: Rect, ellipse: boolean, intensity: number, strokeWidth: number): string;
|
|
1734
1957
|
//#endregion
|
|
1958
|
+
//#region src/selection.d.ts
|
|
1959
|
+
interface SelectionFrame {
|
|
1960
|
+
corners: Quad;
|
|
1961
|
+
center: Vec;
|
|
1962
|
+
angle: number;
|
|
1963
|
+
}
|
|
1964
|
+
declare function annotationSelectionFrame(annotation: Annot, view?: ViewEnv): SelectionFrame;
|
|
1965
|
+
//#endregion
|
|
1735
1966
|
//#region src/scene.d.ts
|
|
1736
1967
|
/** The full painted scene for one annotation. */
|
|
1737
1968
|
declare function scene(item: RenderItem): SceneNode[];
|
|
@@ -1744,5 +1975,5 @@ declare function scene(item: RenderItem): SceneNode[];
|
|
|
1744
1975
|
*/
|
|
1745
1976
|
declare function straightenInkStroke(points: readonly Vec[], options: InkStraightenOptions): Vec[];
|
|
1746
1977
|
//#endregion
|
|
1747
|
-
export { type AnchorMode, type Annot, type AnnotationFlags, type AnnotationKind, type AnnotationProps, type AnnotationPropsPatch, type BlendMode, type Border, type Callout, type ChromeGeom, type ChromeNode, type ClickCreate, type ClickPlacement, type CreationDraftAnchor, type Cursor, DEFAULT_CHROME_GEOM, DRAWN_FLAGS, type Draft, type Effect, FLAG_KEYS, type FlagBearer, type Geom, type GroupCaps, type Guide, type Handle, type Id, type InkStraightenOptions, KINDS, type KindCaps, type LineEnding, type LineEndings, MIN_DRAG, MITER_LIMIT, type Model, type Msg, NO_ANNOTATION_FLAGS, type Paint, type PatchScope, type PointerInput, type PropKey, type PropSpec, type Quad, RECT_HANDLES, ROTATE_KNOB_OFFSET, type Rect, type RectHandle, type RenderItem, type RenderNode, type SceneNode, type SnapResult, type SnapSettings, type Style, type Subtype, type Target, type TextAlign, type TextBox, type TextEndAnchor, type TextQuad, type TextStyle, type Vec, type ViewEnv, anchorModeOf, anchorOf, anchoredBox, anchoredGeom, anchoredStrokeWidth, annotContentsEditable, annotDeletable, annotInteractive, annotTransformable, applyProps, calloutConnection, calloutLinePoints, canMove, capsFor, caretGeomFromAnchor, caretRectFromAnchor, caretRectFromTextEnd, centroidOf, chrome, clampRectToBox, clickCreateGeom, cloudyBorderExtent, cloudyPath, computeMoveSnap, contentToPdfPoint, contentToPdfRect, creationDraftAnchor, cursorAt, defaultsFor, expandGroups, fitStampBox, flagsEqual, geomBounds, geomDragHandle, geomHandles, geomHit, geomPdfBounds, geomResetRotation, geomRotateAbout, geomRotation, geomScaleAbout, geomScene, geomTranslate, geomVisualBounds, groupCaps, groupKeyOf, groupMembers, groupResizeAnchor, groupResizeBox, groupResizeFactors, hitTest, initialModel, initialStyle, initialTextStyle, interactive, isAttachedLink, isConversationOnly, isRotatableGeom, isSelectable, isSubstrateOnly, linkChildrenOf, linkOf, mergeFlags, normalizeDeg, obbFromGeom, pageItems, pdfToContentPoint, pdfToContentRect, placeRotateKnob, pointInQuad, propsFor, quadIntersectsRect, readProp, rectFromPoints, resolveClickPlacement, rotateDraftDelta, rotateKnob, rotatedAabb, rotatedHandleCursor, scene, selectedItems, selectionAnchor, selectionBounds, selectionBoundsOnPage, selectionCenter, selectionKnob, selectionQuad, shapeRectFor, sharedProps, straightenInkStroke, styleFromProps, textBoxes, textStyleFromProps, transposedAboutCenter, unanchoredGeom, unionRect, update, uprightAnchoredRect, uprightRotation, viewable };
|
|
1978
|
+
export { type AnchorMode, type Annot, type AnnotationFlags, type AnnotationKind, type AnnotationProps, type AnnotationPropsPatch, type BlendMode, type Border, type Callout, type ChromeGeom, type ChromeNode, type ClickCreate, type ClickPlacement, type CreationDraftAnchor, type Cursor, DEFAULT_CHROME_GEOM, DRAWN_FLAGS, DistanceAppearance, DistanceCaptionLayout, DistanceLayout, DistanceSegment, type Draft, type Effect, FLAG_KEYS, type FlagBearer, type Geom, type GroupCaps, type Guide, type Handle, type Id, type InkStraightenOptions, KINDS, type KindCaps, type LineEnding, type LineEndings, MIN_DRAG, MITER_LIMIT, MeasurementAppearance, type Model, type Msg, NO_ANNOTATION_FLAGS, type Paint, type PatchScope, type PointerInput, type PropKey, type PropSpec, type Quad, RECT_HANDLES, ROTATE_KNOB_OFFSET, type Rect, type RectHandle, type RenderItem, type RenderNode, type RichTextRange, type RichTextStyleDelta, type SceneNode, type SelectionFrame, ShapeMeasurementAppearance, ShapeMeasurementLayout, type SnapResult, type SnapSettings, type Style, type Subtype, type Target, type TextAlign, type TextBox, type TextEndAnchor, type TextQuad, type TextStyle, type Vec, type ViewEnv, anchorModeOf, anchorOf, anchoredBox, anchoredGeom, anchoredStrokeWidth, annotContentsEditable, annotDeletable, annotInteractive, annotTransformable, annotationSelectionFrame, applyProps, applyStyleToRange, automaticShapeCaptionCenter, calloutConnection, calloutLinePoints, canMove, capsFor, caretGeomFromAnchor, caretRectFromAnchor, caretRectFromTextEnd, centroidOf, chrome, clampRectToBox, clickCreateGeom, cloudyBorderExtent, cloudyPath, computeMoveSnap, contentToPdfPoint, contentToPdfRect, creationDraftAnchor, cursorAt, defaultsFor, distanceCaptionAt, distanceCaptionHit, distanceHandles, distanceHit, distanceLabel, distanceLayout, distanceLeaderLength, distanceScene, distanceSelectionQuad, expandDistanceBounds, expandGroups, fitStampBox, flagsEqual, geomBounds, geomDragHandle, geomHandles, geomHit, geomPdfBounds, geomResetRotation, geomRotateAbout, geomRotation, geomScaleAbout, geomScene, geomTranslate, geomVisualBounds, groupCaps, groupKeyOf, groupMembers, groupResizeAnchor, groupResizeBox, groupResizeFactors, hitTest, initialModel, initialStyle, initialTextStyle, interactive, isAttachedLink, isConversationOnly, isPlainRichText, isRotatableGeom, isSelectable, isSubstrateOnly, linkChildrenOf, linkOf, locateOffset, measurementCaptionScene, measurementLayout, measurementSelectionQuad, mergeFlags, moveDistanceCaption, moveMeasurementCaption, normalizeDeg, normalizeRuns, obbFromGeom, pageItems, paragraphsFromPlainText, pdfToContentPoint, pdfToContentRect, placeRotateKnob, plainTextOf, pointInQuad, propsFor, quadIntersectsRect, rangeHasStyle, readProp, rectFromPoints, resolveClickPlacement, richTextLength, rotateDraftDelta, rotateKnob, rotatedAabb, rotatedHandleCursor, sameStyleDelta, scene, selectedItems, selectionAnchor, selectionBounds, selectionBoundsOnPage, selectionCenter, selectionKnob, selectionQuad, shapeCaptionPoint, shapeMeasurementLabel, shapeMeasurementLayout, shapeMeasurementReadout, shapeRectFor, sharedProps, splitRunsAt, straightenInkStroke, styleAt, styleFromProps, textBoxes, textPlateInset, textStyleFromProps, transformMeasurementCaption, transposedAboutCenter, unanchoredGeom, unionRect, update, uprightAnchoredRect, uprightRotation, viewable, withShapeCaptionPoint };
|
|
1748
1979
|
//# sourceMappingURL=index.d.cts.map
|