@univerjs/engine-render 0.1.0-beta.3 → 0.1.0-beta.5

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.
@@ -59,7 +59,7 @@ export interface IDocumentSkeletonPage {
59
59
  marginBottom: number;
60
60
  pageNumber: number;
61
61
  pageNumberStart: number;
62
- verticalAlign: Boolean;
62
+ verticalAlign: boolean;
63
63
  angle: number;
64
64
  width: number;
65
65
  height: number;
@@ -28,3 +28,4 @@ export * from './scroll-xy';
28
28
  export * from './tools';
29
29
  export * from './transform';
30
30
  export * from './vector2';
31
+ export * from './text-rotation';
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Copyright 2023-present DreamNum Inc.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { type ITextRotation } from '@univerjs/core';
17
+ export declare const VERTICAL_ROTATE_ANGLE = 90;
18
+ export declare function convertTextRotation(textRotation: ITextRotation): {
19
+ centerAngle: number;
20
+ vertexAngle: number;
21
+ };
@@ -37,16 +37,16 @@ export declare class Transform {
37
37
  * Transform point
38
38
  * @method
39
39
  * @name UniverSheet.Transform#point
40
- * @param {Object} point 2D point(x, y)
41
- * @returns {Object} 2D point(x, y)
40
+ * @param {object} point 2D point(x, y)
41
+ * @returns {object} 2D point(x, y)
42
42
  */
43
43
  applyPoint(point: Vector2, ignoreOffset?: boolean): Vector2;
44
44
  /**
45
45
  * Apply translation
46
46
  * @method
47
47
  * @name universheet.Transform#translate
48
- * @param {Number} x
49
- * @param {Number} y
48
+ * @param {number} x
49
+ * @param {number} y
50
50
  * @returns {UniverSheet.Transform}
51
51
  */
52
52
  translate(x: number, y: number): this;
@@ -54,8 +54,8 @@ export declare class Transform {
54
54
  * Apply scale
55
55
  * @method
56
56
  * @name UniverSheet.Transform#scale
57
- * @param {Number} sx
58
- * @param {Number} sy
57
+ * @param {number} sx
58
+ * @param {number} sy
59
59
  * @returns {UniverSheet.Transform}
60
60
  */
61
61
  scale(sx: number, sy: number): this;
@@ -63,7 +63,7 @@ export declare class Transform {
63
63
  * Apply rotation
64
64
  * @method
65
65
  * @name UniverSheet.Transform#rotate
66
- * @param {Number} Degree Angle in Degree
66
+ * @param {number} Degree Angle in Degree
67
67
  * @returns {UniverSheet.Transform}
68
68
  */
69
69
  rotate(deg: number): this;
@@ -71,7 +71,7 @@ export declare class Transform {
71
71
  * Returns the translation
72
72
  * @method
73
73
  * @name UniverSheet.Transform#getTranslation
74
- * @returns {Object} 2D point(x, y)
74
+ * @returns {object} 2D point(x, y)
75
75
  */
76
76
  getTranslation(): {
77
77
  x: number;
@@ -81,8 +81,8 @@ export declare class Transform {
81
81
  * Apply skew
82
82
  * @method
83
83
  * @name UniverSheet.Transform#skew
84
- * @param {Number} sx
85
- * @param {Number} sy
84
+ * @param {number} sx
85
+ * @param {number} sy
86
86
  * @returns {UniverSheet.Transform}
87
87
  */
88
88
  skew(sx: number, sy: number): this;
@@ -144,14 +144,14 @@ export declare class Transform {
144
144
  * transformations from an object that is not enLived yet.
145
145
  * is called DimensionsTransformMatrix because those properties are the one that influence
146
146
  * the size of the resulting box of the object.
147
- * @param {Object} options
148
- * @param {Number} [options.scaleX]
149
- * @param {Number} [options.scaleY]
150
- * @param {Boolean} [options.flipX]
151
- * @param {Boolean} [options.flipY]
152
- * @param {Number} [options.skewX]
153
- * @param {Number} [options.skewX]
154
- * @return {Number[]} transform matrix
147
+ * @param {object} options
148
+ * @param {number} [options.scaleX]
149
+ * @param {number} [options.scaleY]
150
+ * @param {boolean} [options.flipX]
151
+ * @param {boolean} [options.flipY]
152
+ * @param {number} [options.skewX]
153
+ * @param {number} [options.skewX]
154
+ * @return {number[]} transform matrix
155
155
  */
156
156
  private _calcDimensionsMatrix;
157
157
  }
@@ -14,20 +14,36 @@
14
14
  * limitations under the License.
15
15
  */
16
16
  import { UniverRenderingContext } from './context';
17
+ /**
18
+ * canvas render mode
19
+ */
20
+ export declare enum CanvasRenderMode {
21
+ /**
22
+ * Normal canvas render mode
23
+ */
24
+ Rendering = 0,
25
+ /**
26
+ * Printing render mode,
27
+ * in case of to generate high dpi pdf,
28
+ * some canvas api was disabled by some unknown reason.
29
+ */
30
+ Printing = 1
31
+ }
17
32
  interface ICanvasProps {
18
33
  width?: number;
19
34
  height?: number;
20
35
  pixelRatio?: number;
36
+ mode?: CanvasRenderMode;
21
37
  }
22
38
  /**
23
39
  * View Renderer constructor. It is a wrapper around native canvas element.
24
40
  * Usually you don't need to use it manually.
25
41
  * @constructor
26
42
  * @abstract
27
- * @param {Object} props
28
- * @param {Number} props.width
29
- * @param {Number} props.height
30
- * @param {Number} props.pixelRatio
43
+ * @param {object} props
44
+ * @param {number} props.width
45
+ * @param {number} props.height
46
+ * @param {number} props.pixelRatio
31
47
  */
32
48
  export declare class Canvas {
33
49
  isCache: boolean;
@@ -54,9 +70,9 @@ export declare class Canvas {
54
70
  /**
55
71
  * to data url
56
72
  * @method
57
- * @param {String} mimeType
58
- * @param {Number} quality between 0 and 1 for jpg mime types
59
- * @returns {String} data url string
73
+ * @param {string} mimeType
74
+ * @param {number} quality between 0 and 1 for jpg mime types
75
+ * @returns {string} data url string
60
76
  */
61
77
  toDataURL(mimeType: string, quality: number): string;
62
78
  }
@@ -13,8 +13,8 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import type { IBoundRectNoAngle } from '../..';
17
16
  import type { IDocumentSkeletonLine, IDocumentSkeletonSpan } from '../../basics/i-document-skeleton-cached';
17
+ import type { IBoundRectNoAngle } from '../../basics/vector2';
18
18
  import { ComponentExtension } from '../extension';
19
19
  export declare enum DOCS_EXTENSION_TYPE {
20
20
  SPAN = 0,
@@ -19,7 +19,7 @@ import type { UniverRenderingContext } from '../../../context';
19
19
  import { docExtension } from '../doc-extension';
20
20
  export declare class Background extends docExtension {
21
21
  uKey: string;
22
- zIndex: number;
22
+ Z_INDEX: number;
23
23
  private _preBackgroundColor;
24
24
  draw(ctx: UniverRenderingContext, parentScale: IScale, span: IDocumentSkeletonSpan): void;
25
25
  clearCache(): void;
@@ -19,7 +19,7 @@ import type { UniverRenderingContext } from '../../../context';
19
19
  import { docExtension } from '../doc-extension';
20
20
  export declare class Border extends docExtension {
21
21
  uKey: string;
22
- zIndex: number;
22
+ Z_INDEX: number;
23
23
  private _preBorderStyle;
24
24
  private _preBorderColor;
25
25
  draw(ctx: UniverRenderingContext, parentScale: IScale, span: IDocumentSkeletonSpan): void;
@@ -19,7 +19,7 @@ import type { UniverRenderingContext } from '../../../context';
19
19
  import { docExtension } from '../doc-extension';
20
20
  export declare class FontAndBaseLine extends docExtension {
21
21
  uKey: string;
22
- zIndex: number;
22
+ Z_INDEX: number;
23
23
  private _preFontString;
24
24
  private _preFontColor;
25
25
  draw(ctx: UniverRenderingContext, parentScale: IScale, span: IDocumentSkeletonSpan): void;
@@ -19,7 +19,7 @@ import type { UniverRenderingContext } from '../../../context';
19
19
  import { docExtension } from '../doc-extension';
20
20
  export declare class Line extends docExtension {
21
21
  uKey: string;
22
- zIndex: number;
22
+ Z_INDEX: number;
23
23
  private _preBackgroundColor;
24
24
  draw(ctx: UniverRenderingContext, parentScale: IScale, span: IDocumentSkeletonSpan): void;
25
25
  clearCache(): void;
@@ -29,16 +29,17 @@ export interface IExtensionConfig {
29
29
  export declare class ComponentExtension<T, U, V> {
30
30
  uKey: string;
31
31
  type: U;
32
- zIndex: number;
32
+ protected Z_INDEX: number;
33
33
  parent: Nullable<BaseObject>;
34
34
  translateX: number;
35
35
  translateY: number;
36
36
  extensionOffset: IExtensionConfig;
37
+ get zIndex(): number;
37
38
  draw(ctx: UniverRenderingContext, parentScale: IScale, skeleton: T, diffBounds?: V): void;
38
39
  clearCache(): void;
39
40
  protected _getScale(parentScale: IScale): number;
40
41
  }
41
- export declare const SpreadsheetExtensionRegistry: Registry;
42
- export declare const SheetRowHeaderExtensionRegistry: Registry;
43
- export declare const SheetColumnHeaderExtensionRegistry: Registry;
44
- export declare const DocumentsSpanAndLineExtensionRegistry: Registry;
42
+ export declare const SpreadsheetExtensionRegistry: Registry<any>;
43
+ export declare const SheetRowHeaderExtensionRegistry: Registry<any>;
44
+ export declare const SheetColumnHeaderExtensionRegistry: Registry<any>;
45
+ export declare const DocumentsSpanAndLineExtensionRegistry: Registry<any>;
@@ -19,6 +19,8 @@ import type { SpreadsheetSkeleton } from '../sheet-skeleton';
19
19
  import { SheetExtension } from './sheet-extension';
20
20
  export declare class Background extends SheetExtension {
21
21
  uKey: string;
22
- zIndex: number;
22
+ Z_INDEX: number;
23
+ PRINTING_Z_INDEX: number;
24
+ get zIndex(): number;
23
25
  draw(ctx: UniverRenderingContext, parentScale: IScale, spreadsheetSkeleton: SpreadsheetSkeleton, diffRanges?: IRange[]): void;
24
26
  }
@@ -19,7 +19,7 @@ import type { SpreadsheetSkeleton } from '../sheet-skeleton';
19
19
  import { SheetExtension } from './sheet-extension';
20
20
  export declare class Border extends SheetExtension {
21
21
  uKey: string;
22
- zIndex: number;
22
+ Z_INDEX: number;
23
23
  draw(ctx: UniverRenderingContext, parentScale: IScale, spreadsheetSkeleton: SpreadsheetSkeleton, diffRanges?: IRange[]): void;
24
24
  private _getOverflowExclusion;
25
25
  }
@@ -19,6 +19,6 @@ import type { SpreadsheetSkeleton } from '../sheet-skeleton';
19
19
  import { SheetExtension } from './sheet-extension';
20
20
  export declare class ColumnHeaderLayout extends SheetExtension {
21
21
  uKey: string;
22
- zIndex: number;
22
+ Z_INDEX: number;
23
23
  draw(ctx: UniverRenderingContext, parentScale: IScale, spreadsheetSkeleton: SpreadsheetSkeleton): void;
24
24
  }
@@ -17,11 +17,13 @@ import type { IColorStyle, IRange, IScale } from '@univerjs/core';
17
17
  import { ObjectMatrix } from '@univerjs/core';
18
18
  import type { UniverRenderingContext } from '../../../context';
19
19
  import { type SpreadsheetSkeleton } from '../sheet-skeleton';
20
+ import type { Spreadsheet } from '../spreadsheet';
20
21
  import { SheetExtension } from './sheet-extension';
21
22
  export declare class Font extends SheetExtension {
22
23
  uKey: string;
23
- zIndex: number;
24
+ Z_INDEX: number;
24
25
  changeFontColor: ObjectMatrix<IColorStyle>;
26
+ get spreadsheet(): Spreadsheet;
25
27
  getDocuments(): any;
26
28
  setChangeFontColor(r: number, c: number, color: IColorStyle): void;
27
29
  draw(ctx: UniverRenderingContext, parentScale: IScale, spreadsheetSkeleton: SpreadsheetSkeleton, diffRanges?: IRange[]): void;
@@ -19,6 +19,6 @@ import type { SpreadsheetSkeleton } from '../sheet-skeleton';
19
19
  import { SheetExtension } from './sheet-extension';
20
20
  export declare class RowHeaderLayout extends SheetExtension {
21
21
  uKey: string;
22
- zIndex: number;
22
+ Z_INDEX: number;
23
23
  draw(ctx: UniverRenderingContext, parentScale: IScale, spreadsheetSkeleton: SpreadsheetSkeleton): void;
24
24
  }
@@ -32,12 +32,16 @@ export declare class Spreadsheet extends SheetComponent {
32
32
  private _overflowCacheRuntime;
33
33
  private _overflowCacheRuntimeRange;
34
34
  private _overflowCacheRuntimeTimeout;
35
+ private _forceDisableGridlines;
35
36
  private _documents;
37
+ isPrinting: boolean;
36
38
  constructor(oKey: string, spreadsheetSkeleton?: SpreadsheetSkeleton, _allowCache?: boolean);
37
39
  get backgroundExtension(): Background;
38
40
  get borderExtension(): Border;
39
41
  get fontExtension(): Font;
40
42
  getDocuments(): Documents;
43
+ get allowCache(): boolean;
44
+ get forceDisableGridlines(): boolean;
41
45
  draw(ctx: UniverRenderingContext, bounds?: IViewportBound): void;
42
46
  isHit(coord: Vector2): boolean;
43
47
  getNoMergeCellPositionByIndex(rowIndex: number, columnIndex: number): {
@@ -51,6 +55,7 @@ export declare class Spreadsheet extends SheetComponent {
51
55
  y: number;
52
56
  };
53
57
  makeForceDirty(state?: boolean): void;
58
+ setForceDisableGridlines(disabled: boolean): void;
54
59
  getSelectionBounding(startRow: number, startColumn: number, endRow: number, endColumn: number): {
55
60
  startRow: number;
56
61
  startColumn: number;
@@ -39,6 +39,7 @@ export declare class UniverRenderingContext2D implements CanvasRenderingContext2
39
39
  set lineJoin(val: CanvasLineJoin);
40
40
  get lineWidth(): number;
41
41
  set lineWidth(val: number);
42
+ setLineWidthNative(val: number): void;
42
43
  get miterLimit(): number;
43
44
  set miterLimit(val: number);
44
45
  get shadowBlur(): number;
@@ -269,6 +270,8 @@ export declare class UniverRenderingContext2D implements CanvasRenderingContext2
269
270
  translate(x: number, y: number): void;
270
271
  translateWithPrecision(x: number, y: number): void;
271
272
  translateWithPrecisionRatio(x: number, y: number): void;
273
+ clearRectForTexture(x: number, y: number, width: number, height: number): void;
274
+ setGlobalCompositeOperation(val: GlobalCompositeOperation): void;
272
275
  }
273
276
  /**
274
277
  * TODO
@@ -282,3 +285,9 @@ export declare class UniverRenderingContextWebGPU {
282
285
  }
283
286
  export declare class UniverRenderingContext extends UniverRenderingContext2D {
284
287
  }
288
+ export declare class UniverPrintingContext extends UniverRenderingContext2D {
289
+ private __getScale;
290
+ clearRect(x: number, y: number, width: number, height: number): void;
291
+ clearRectForTexture(x: number, y: number, width: number, height: number): void;
292
+ setGlobalCompositeOperation(val: GlobalCompositeOperation): void;
293
+ }
@@ -15,7 +15,7 @@
15
15
  */
16
16
  import { Observable } from '@univerjs/core';
17
17
  import type { CURSOR_TYPE } from './basics/const';
18
- import { Canvas } from './canvas';
18
+ import { Canvas, type CanvasRenderMode } from './canvas';
19
19
  import type { Scene } from './scene';
20
20
  import { ThinEngine } from './thin-engine';
21
21
  export declare class Engine extends ThinEngine<Scene> {
@@ -52,7 +52,7 @@ export declare class Engine extends ThinEngine<Scene> {
52
52
  private pointer;
53
53
  private _mouseId;
54
54
  private _isUsingFirefox;
55
- constructor(elemWidth?: number, elemHeight?: number);
55
+ constructor(elemWidth?: number, elemHeight?: number, pixelRatio?: number, mode?: CanvasRenderMode);
56
56
  get width(): number;
57
57
  get height(): number;
58
58
  get requestNewFrameHandler(): number;
@@ -70,7 +70,7 @@ export declare class Engine extends ThinEngine<Scene> {
70
70
  */
71
71
  setRemainCapture(): void;
72
72
  getPixelRatio(): number;
73
- setContainer(elem: HTMLElement): void;
73
+ setContainer(elem: HTMLElement, resize?: boolean): void;
74
74
  resize(): void;
75
75
  resizeBySize(width: number, height: number): void;
76
76
  dispose(): void;
@@ -83,7 +83,7 @@ export declare class Path extends Shape<IPathProps> {
83
83
  /**
84
84
  * Return length of the path.
85
85
  * @method
86
- * @returns {Number} length
86
+ * @returns {number} length
87
87
  * @example
88
88
  * var length = path.getLength();
89
89
  */
@@ -91,8 +91,8 @@ export declare class Path extends Shape<IPathProps> {
91
91
  /**
92
92
  * Get point on path at specific length of the path
93
93
  * @method
94
- * @param {Number} length length
95
- * @returns {Object} point {x,y} point
94
+ * @param {number} length length
95
+ * @returns {object} point {x,y} point
96
96
  * @example
97
97
  * var point = path.getPointAtLength(10);
98
98
  */