@hailin-zheng/editor-core 1.1.34 → 1.1.36

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.
@@ -1,7 +1,8 @@
1
1
  import { DocumentPaint } from "./document-paint";
2
2
  import { SelectionState } from "./document-selection";
3
- import { Element, LeafElement, Position, Rect, ViewOptions } from "./element-define";
3
+ import { Element, ICancelTokenFn, LeafElement, Position, Rect, ViewOptions } from "./element-define";
4
4
  import { ElementEvent, EventStage, EventTypes, HitEventInfo, HitRegion, ITrackTips, MouseElementEvent } from "./element-event-define";
5
+ import { DocumentRenderObject } from "./impl";
5
6
  import { BorderType, CursorType, RenderObject } from "./render-define";
6
7
  import { EditorContext } from "./document-context";
7
8
  import { Subject, Subscription } from "./event-subject";
@@ -142,7 +143,15 @@ export declare class DocumentEvent {
142
143
  /**
143
144
  * 获取点击的doc-page
144
145
  */
145
- private getHitDocPage;
146
+ getHitDocPage(evt: {
147
+ globalX: number;
148
+ globalY: number;
149
+ }): {
150
+ docRender: DocumentRenderObject;
151
+ paintAbsoluteRect: Position;
152
+ hitPagePos: Position;
153
+ docIndex: number;
154
+ } | null;
146
155
  /**
147
156
  * 触发事件
148
157
  * @param type
@@ -221,5 +230,9 @@ export declare class DocumentEvent {
221
230
  */
222
231
  getHitRegion(docEvent: MouseElementEvent): HitRegion | null;
223
232
  private onKeydown;
233
+ /**
234
+ * 开启打印区域
235
+ */
236
+ startPrintArea(editor: NodeCore): ICancelTokenFn;
224
237
  }
225
238
  export {};
@@ -3,7 +3,13 @@ import { DocumentPaint } from "./document-paint";
3
3
  import { ViewOptions } from "./element-define";
4
4
  import { ElementReader } from "./element-reader";
5
5
  import { DocumentElement, DocumentRenderObject } from "./impl/document/doc-impl";
6
- import { RenderContextType } from "./render-context";
6
+ import { IRenderContextContract, RenderContextType } from "./render-context";
7
+ import { Subject } from "./event-subject";
8
+ interface IAfterRenderEvent {
9
+ index: number;
10
+ renderCtx: IRenderContextContract;
11
+ docRender: DocumentRenderObject;
12
+ }
7
13
  /**
8
14
  * 离屏打印
9
15
  */
@@ -13,8 +19,19 @@ export declare abstract class DocumentPrintOffscreenBase {
13
19
  docCtx: EditorContext;
14
20
  renderCtx: RenderContextType;
15
21
  elementReader: ElementReader;
22
+ beforeRenderEvent: Subject<IAfterRenderEvent>;
23
+ afterRenderEvent: Subject<IAfterRenderEvent>;
16
24
  constructor();
17
25
  print(data: any | DocumentElement, ranges?: Array<number> | null): Promise<void>;
26
+ /**
27
+ * 续打
28
+ */
29
+ printForContinuation(data: any | DocumentElement, ranges: number[] | null | undefined, options: {
30
+ startY: number;
31
+ startDocIndex: number;
32
+ endY: number;
33
+ endDocIndex: number;
34
+ }): Promise<void>;
18
35
  /**
19
36
  * 获取绘制的图片,格式为Base64编码
20
37
  */
@@ -39,3 +56,4 @@ export declare class DocumentPrintOffscreen extends DocumentPrintOffscreenBase {
39
56
  ctx: CanvasRenderingContext2D;
40
57
  };
41
58
  }
59
+ export {};
@@ -135,6 +135,7 @@ export declare abstract class BranchElement<P extends object = any> extends Elem
135
135
  pubOnChange(selfChange: pubChangeType): void;
136
136
  }
137
137
  export declare function clearChildrenRenderCache(ele: BranchElement): void;
138
+ export declare function setChildrenModifyFlag(modifyFlag: ModifyFlag, ele: BranchElement): void;
138
139
  export declare type pubChangeType = 'self' | 'tracker' | 'to-child';
139
140
  /**
140
141
  * 行内编组元素
@@ -252,12 +253,12 @@ export declare class ViewOptions {
252
253
  trackDelColor: string;
253
254
  showLineRect: boolean;
254
255
  showCharRect: boolean;
255
- showParaMark: boolean;
256
256
  showTabChar: boolean;
257
257
  showSpaceChar: boolean;
258
258
  showLineBreak: boolean;
259
259
  bodyMarginTop: number;
260
260
  devMode: boolean;
261
+ showParaSymbol: boolean;
261
262
  showDebug: boolean;
262
263
  resourceMode: 'lazy' | 'immediate';
263
264
  secretBrowse: boolean;
@@ -278,6 +279,7 @@ export declare class ViewOptions {
278
279
  width: number;
279
280
  height: number;
280
281
  };
282
+ selectPrintAreaBgColor: string;
281
283
  pageNumFormat: string;
282
284
  pageNumOffset: number;
283
285
  pageLayoutMode: PageLayoutMode;
@@ -343,7 +345,7 @@ export declare type RequiredType<T> = {
343
345
  export declare type ImgLoadStatus = 'no' | 'loading' | 'completed' | 'error';
344
346
  export interface ICancelTokenFn {
345
347
  cancel?: () => void;
346
- onFinish?: () => void;
348
+ onFinish?: (data: any) => void;
347
349
  }
348
350
  declare type IVoidFn = () => void;
349
351
  export declare function onceTask(fn: IVoidFn): IVoidFn;
@@ -3,7 +3,7 @@ import { DocumentProps } from '../../element-props';
3
3
  import { RenderContextType } from "../../render-context";
4
4
  import { DocumentBodyElement } from "./doc-body-impl";
5
5
  import { DocumentHeaderElement } from "./doc-header-impl";
6
- import { BlockContainerRenderObject, IRenderData, RenderObject } from "../../render-define";
6
+ import { BlockContainerRenderObject, ElementExportTypes, IRenderData, RenderObject } from "../../render-define";
7
7
  import { DocumentFooterElement } from "./doc-footer-impl";
8
8
  import { CommsContainerElement } from "../comments/comments-container-impl";
9
9
  import { SelectionState } from "../../document-selection";
@@ -61,6 +61,7 @@ export declare class DocumentRenderObject extends BlockContainerRenderObject {
61
61
  y: number;
62
62
  }): void;
63
63
  clone(): RenderObject;
64
+ export(type: ElementExportTypes): any;
64
65
  }
65
66
  export declare class DocumentFactory extends ElementFactory<DocumentProps> {
66
67
  match(type: string): boolean;
@@ -1,5 +1,5 @@
1
1
  import { TextProps } from "../../element-props";
2
- import { IRenderData, LeafRenderObject, RenderObject } from "../../render-define";
2
+ import { ElementExportTypes, IRenderData, LeafRenderObject, RenderObject } from "../../render-define";
3
3
  import { LeafElement, ElementFactory, Element, SerializeProps, ViewOptions, ICreateRenderData } from "../../element-define";
4
4
  import { TextUnits } from "../../render-context";
5
5
  export declare class TextGroupElement extends LeafElement<TextProps> {
@@ -27,6 +27,7 @@ export declare class TextGroupRenderObject extends LeafRenderObject<TextGroupEle
27
27
  constructor(element: TextGroupElement);
28
28
  clone(): RenderObject;
29
29
  measure(): void;
30
+ export(type: ElementExportTypes): any;
30
31
  }
31
32
  export declare class TextGroupFactory extends ElementFactory<null> {
32
33
  match(type: string): boolean;
@@ -11,18 +11,18 @@ export declare abstract class RenderObject<T extends Element = Element> {
11
11
  rect: Rect;
12
12
  parent: BranchRenderObject;
13
13
  /**
14
- * 可点击性,例如:null-text 占位符元素不具备可点击能力
15
- */
14
+ * 可点击性,例如:null-text 占位符元素不具备可点击能力
15
+ */
16
16
  disableClick: boolean;
17
17
  constructor(element: T);
18
18
  abstract clone(): RenderObject;
19
19
  pagePaintCompleted(e: Omit<IRenderData, 'nextRender'>): void;
20
20
  destroy(): void;
21
21
  /**
22
- * 获取内容区域框体
23
- * @param render
24
- * @returns
25
- */
22
+ * 获取内容区域框体
23
+ * @param render
24
+ * @returns
25
+ */
26
26
  getInnerRect(): Rect;
27
27
  getInnerMaxWidth(): number;
28
28
  /**
@@ -32,7 +32,9 @@ export declare abstract class RenderObject<T extends Element = Element> {
32
32
  updateRenderHeight(innerRect: Rect | number): void;
33
33
  getIndex(): number;
34
34
  abstract render(e: IRenderData): void;
35
+ export(type: ElementExportTypes): any;
35
36
  }
37
+ export declare type ElementExportTypes = 'svg';
36
38
  /**
37
39
  * 叶子节点渲染元素
38
40
  */
@@ -382,6 +382,10 @@ export declare class CanvasTextEditor extends AbsolutePanel {
382
382
  * @param insertRowIndex
383
383
  */
384
384
  insertNewRow(tb: TableElement, insertRowIndex: number): TableRowElement;
385
+ /**
386
+ * 开启打印区域
387
+ */
388
+ startPrintArea(): ICancelTokenFn;
385
389
  }
386
390
  export interface IReaderManager {
387
391
  }
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "author": "hailin-zheng",
5
5
  "private": false,
6
6
  "license": "ISC",
7
- "version": "1.1.34",
7
+ "version": "1.1.36",
8
8
  "scripts": {},
9
9
  "dependencies": {
10
10
  "bwip-js": "^3.0.5",