@hailin-zheng/editor-core 1.0.1 → 1.0.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.
Files changed (216) hide show
  1. package/package.json +1 -1
  2. package/tsconfig.json +1 -1
  3. package/webpack.config.js +0 -1
  4. package/dist/doc-ruler.d.ts +0 -51
  5. package/dist/doc-ruler.js +0 -313
  6. package/dist/doc-ruler.js.map +0 -1
  7. package/dist/framework/common-util.d.ts +0 -63
  8. package/dist/framework/common-util.js +0 -178
  9. package/dist/framework/common-util.js.map +0 -1
  10. package/dist/framework/document-change.d.ts +0 -265
  11. package/dist/framework/document-change.js +0 -1342
  12. package/dist/framework/document-change.js.map +0 -1
  13. package/dist/framework/document-combine.d.ts +0 -24
  14. package/dist/framework/document-combine.js +0 -40
  15. package/dist/framework/document-combine.js.map +0 -1
  16. package/dist/framework/document-comment.d.ts +0 -46
  17. package/dist/framework/document-comment.js +0 -148
  18. package/dist/framework/document-comment.js.map +0 -1
  19. package/dist/framework/document-context.d.ts +0 -149
  20. package/dist/framework/document-context.js +0 -330
  21. package/dist/framework/document-context.js.map +0 -1
  22. package/dist/framework/document-eval-func.d.ts +0 -18
  23. package/dist/framework/document-eval-func.js +0 -48
  24. package/dist/framework/document-eval-func.js.map +0 -1
  25. package/dist/framework/document-event.d.ts +0 -213
  26. package/dist/framework/document-event.js +0 -1054
  27. package/dist/framework/document-event.js.map +0 -1
  28. package/dist/framework/document-history.d.ts +0 -26
  29. package/dist/framework/document-history.js +0 -65
  30. package/dist/framework/document-history.js.map +0 -1
  31. package/dist/framework/document-images-loader.d.ts +0 -16
  32. package/dist/framework/document-images-loader.js +0 -66
  33. package/dist/framework/document-images-loader.js.map +0 -1
  34. package/dist/framework/document-input-cursor.d.ts +0 -78
  35. package/dist/framework/document-input-cursor.js +0 -239
  36. package/dist/framework/document-input-cursor.js.map +0 -1
  37. package/dist/framework/document-paint.d.ts +0 -34
  38. package/dist/framework/document-paint.js +0 -103
  39. package/dist/framework/document-paint.js.map +0 -1
  40. package/dist/framework/document-print-offscreen.d.ts +0 -38
  41. package/dist/framework/document-print-offscreen.js +0 -128
  42. package/dist/framework/document-print-offscreen.js.map +0 -1
  43. package/dist/framework/document-print.d.ts +0 -60
  44. package/dist/framework/document-print.js +0 -203
  45. package/dist/framework/document-print.js.map +0 -1
  46. package/dist/framework/document-segmenter.d.ts +0 -2
  47. package/dist/framework/document-segmenter.js +0 -106
  48. package/dist/framework/document-segmenter.js.map +0 -1
  49. package/dist/framework/document-selection.d.ts +0 -89
  50. package/dist/framework/document-selection.js +0 -358
  51. package/dist/framework/document-selection.js.map +0 -1
  52. package/dist/framework/document-template.d.ts +0 -4
  53. package/dist/framework/document-template.js +0 -20
  54. package/dist/framework/document-template.js.map +0 -1
  55. package/dist/framework/document-textline-mode.d.ts +0 -7
  56. package/dist/framework/document-textline-mode.js +0 -30
  57. package/dist/framework/document-textline-mode.js.map +0 -1
  58. package/dist/framework/element-define.d.ts +0 -319
  59. package/dist/framework/element-define.js +0 -579
  60. package/dist/framework/element-define.js.map +0 -1
  61. package/dist/framework/element-event-define.d.ts +0 -99
  62. package/dist/framework/element-event-define.js +0 -108
  63. package/dist/framework/element-event-define.js.map +0 -1
  64. package/dist/framework/element-measure.d.ts +0 -97
  65. package/dist/framework/element-measure.js +0 -551
  66. package/dist/framework/element-measure.js.map +0 -1
  67. package/dist/framework/element-paint.d.ts +0 -42
  68. package/dist/framework/element-paint.js +0 -170
  69. package/dist/framework/element-paint.js.map +0 -1
  70. package/dist/framework/element-props.d.ts +0 -301
  71. package/dist/framework/element-props.js +0 -809
  72. package/dist/framework/element-props.js.map +0 -1
  73. package/dist/framework/element-reader.d.ts +0 -19
  74. package/dist/framework/element-reader.js +0 -151
  75. package/dist/framework/element-reader.js.map +0 -1
  76. package/dist/framework/element-render-cut.d.ts +0 -55
  77. package/dist/framework/element-render-cut.js +0 -449
  78. package/dist/framework/element-render-cut.js.map +0 -1
  79. package/dist/framework/element-serialize.d.ts +0 -30
  80. package/dist/framework/element-serialize.js +0 -113
  81. package/dist/framework/element-serialize.js.map +0 -1
  82. package/dist/framework/element-util.d.ts +0 -369
  83. package/dist/framework/element-util.js +0 -1463
  84. package/dist/framework/element-util.js.map +0 -1
  85. package/dist/framework/impl/checkbox/checkbox-impl.d.ts +0 -24
  86. package/dist/framework/impl/checkbox/checkbox-impl.js +0 -64
  87. package/dist/framework/impl/checkbox/checkbox-impl.js.map +0 -1
  88. package/dist/framework/impl/comments/comment-content-impl.d.ts +0 -40
  89. package/dist/framework/impl/comments/comment-content-impl.js +0 -105
  90. package/dist/framework/impl/comments/comment-content-impl.js.map +0 -1
  91. package/dist/framework/impl/comments/comment-element-impl.d.ts +0 -21
  92. package/dist/framework/impl/comments/comment-element-impl.js +0 -62
  93. package/dist/framework/impl/comments/comment-element-impl.js.map +0 -1
  94. package/dist/framework/impl/comments/comments-container-impl.d.ts +0 -22
  95. package/dist/framework/impl/comments/comments-container-impl.js +0 -62
  96. package/dist/framework/impl/comments/comments-container-impl.js.map +0 -1
  97. package/dist/framework/impl/comments/comments-util.d.ts +0 -12
  98. package/dist/framework/impl/comments/comments-util.js +0 -67
  99. package/dist/framework/impl/comments/comments-util.js.map +0 -1
  100. package/dist/framework/impl/comments/validate-msg-impl.d.ts +0 -21
  101. package/dist/framework/impl/comments/validate-msg-impl.js +0 -83
  102. package/dist/framework/impl/comments/validate-msg-impl.js.map +0 -1
  103. package/dist/framework/impl/data-element/data-decorate-impl.d.ts +0 -30
  104. package/dist/framework/impl/data-element/data-decorate-impl.js +0 -91
  105. package/dist/framework/impl/data-element/data-decorate-impl.js.map +0 -1
  106. package/dist/framework/impl/data-element/data-element-barcode.d.ts +0 -31
  107. package/dist/framework/impl/data-element/data-element-barcode.js +0 -115
  108. package/dist/framework/impl/data-element/data-element-barcode.js.map +0 -1
  109. package/dist/framework/impl/data-element/data-element-base-impl.d.ts +0 -68
  110. package/dist/framework/impl/data-element/data-element-base-impl.js +0 -205
  111. package/dist/framework/impl/data-element/data-element-base-impl.js.map +0 -1
  112. package/dist/framework/impl/data-element/data-element-check-impl.d.ts +0 -35
  113. package/dist/framework/impl/data-element/data-element-check-impl.js +0 -133
  114. package/dist/framework/impl/data-element/data-element-check-impl.js.map +0 -1
  115. package/dist/framework/impl/data-element/data-element-date-impl.d.ts +0 -23
  116. package/dist/framework/impl/data-element/data-element-date-impl.js +0 -111
  117. package/dist/framework/impl/data-element/data-element-date-impl.js.map +0 -1
  118. package/dist/framework/impl/data-element/data-element-group-impl.d.ts +0 -23
  119. package/dist/framework/impl/data-element/data-element-group-impl.js +0 -130
  120. package/dist/framework/impl/data-element/data-element-group-impl.js.map +0 -1
  121. package/dist/framework/impl/data-element/data-element-image-impl.d.ts +0 -30
  122. package/dist/framework/impl/data-element/data-element-image-impl.js +0 -137
  123. package/dist/framework/impl/data-element/data-element-image-impl.js.map +0 -1
  124. package/dist/framework/impl/data-element/data-element-list-impl.d.ts +0 -22
  125. package/dist/framework/impl/data-element/data-element-list-impl.js +0 -131
  126. package/dist/framework/impl/data-element/data-element-list-impl.js.map +0 -1
  127. package/dist/framework/impl/data-element/data-element-text-impl.d.ts +0 -23
  128. package/dist/framework/impl/data-element/data-element-text-impl.js +0 -103
  129. package/dist/framework/impl/data-element/data-element-text-impl.js.map +0 -1
  130. package/dist/framework/impl/decorate/fill-null-space-imple.d.ts +0 -21
  131. package/dist/framework/impl/decorate/fill-null-space-imple.js +0 -43
  132. package/dist/framework/impl/decorate/fill-null-space-imple.js.map +0 -1
  133. package/dist/framework/impl/document/doc-body-impl.d.ts +0 -27
  134. package/dist/framework/impl/document/doc-body-impl.js +0 -79
  135. package/dist/framework/impl/document/doc-body-impl.js.map +0 -1
  136. package/dist/framework/impl/document/doc-body-part-impl.d.ts +0 -30
  137. package/dist/framework/impl/document/doc-body-part-impl.js +0 -94
  138. package/dist/framework/impl/document/doc-body-part-impl.js.map +0 -1
  139. package/dist/framework/impl/document/doc-container-impl.d.ts +0 -16
  140. package/dist/framework/impl/document/doc-container-impl.js +0 -21
  141. package/dist/framework/impl/document/doc-container-impl.js.map +0 -1
  142. package/dist/framework/impl/document/doc-footer-impl.d.ts +0 -26
  143. package/dist/framework/impl/document/doc-footer-impl.js +0 -77
  144. package/dist/framework/impl/document/doc-footer-impl.js.map +0 -1
  145. package/dist/framework/impl/document/doc-header-impl.d.ts +0 -26
  146. package/dist/framework/impl/document/doc-header-impl.js +0 -83
  147. package/dist/framework/impl/document/doc-header-impl.js.map +0 -1
  148. package/dist/framework/impl/document/doc-impl.d.ts +0 -61
  149. package/dist/framework/impl/document/doc-impl.js +0 -209
  150. package/dist/framework/impl/document/doc-impl.js.map +0 -1
  151. package/dist/framework/impl/media-formula/menstrual-history.d.ts +0 -35
  152. package/dist/framework/impl/media-formula/menstrual-history.js +0 -153
  153. package/dist/framework/impl/media-formula/menstrual-history.js.map +0 -1
  154. package/dist/framework/impl/paragraph/p-impl.d.ts +0 -45
  155. package/dist/framework/impl/paragraph/p-impl.js +0 -156
  156. package/dist/framework/impl/paragraph/p-impl.js.map +0 -1
  157. package/dist/framework/impl/picture/image-impl.d.ts +0 -31
  158. package/dist/framework/impl/picture/image-impl.js +0 -124
  159. package/dist/framework/impl/picture/image-impl.js.map +0 -1
  160. package/dist/framework/impl/radio/radio-impl.d.ts +0 -22
  161. package/dist/framework/impl/radio/radio-impl.js +0 -72
  162. package/dist/framework/impl/radio/radio-impl.js.map +0 -1
  163. package/dist/framework/impl/symbol/br-symbol-impl.d.ts +0 -22
  164. package/dist/framework/impl/symbol/br-symbol-impl.js +0 -54
  165. package/dist/framework/impl/symbol/br-symbol-impl.js.map +0 -1
  166. package/dist/framework/impl/symbol/p-symbol-impl.d.ts +0 -19
  167. package/dist/framework/impl/symbol/p-symbol-impl.js +0 -54
  168. package/dist/framework/impl/symbol/p-symbol-impl.js.map +0 -1
  169. package/dist/framework/impl/table/table-cell-impl.d.ts +0 -37
  170. package/dist/framework/impl/table/table-cell-impl.js +0 -145
  171. package/dist/framework/impl/table/table-cell-impl.js.map +0 -1
  172. package/dist/framework/impl/table/table-impl.d.ts +0 -55
  173. package/dist/framework/impl/table/table-impl.js +0 -363
  174. package/dist/framework/impl/table/table-impl.js.map +0 -1
  175. package/dist/framework/impl/table/table-row-impl.d.ts +0 -26
  176. package/dist/framework/impl/table/table-row-impl.js +0 -75
  177. package/dist/framework/impl/table/table-row-impl.js.map +0 -1
  178. package/dist/framework/impl/table/table-split-cell-patch.d.ts +0 -20
  179. package/dist/framework/impl/table/table-split-cell-patch.js +0 -89
  180. package/dist/framework/impl/table/table-split-cell-patch.js.map +0 -1
  181. package/dist/framework/impl/table/table-split-cell.d.ts +0 -90
  182. package/dist/framework/impl/table/table-split-cell.js +0 -464
  183. package/dist/framework/impl/table/table-split-cell.js.map +0 -1
  184. package/dist/framework/impl/table/table-util.d.ts +0 -150
  185. package/dist/framework/impl/table/table-util.js +0 -678
  186. package/dist/framework/impl/table/table-util.js.map +0 -1
  187. package/dist/framework/impl/text/text-impl.d.ts +0 -32
  188. package/dist/framework/impl/text/text-impl.js +0 -149
  189. package/dist/framework/impl/text/text-impl.js.map +0 -1
  190. package/dist/framework/impl/text/track-run-impl.d.ts +0 -27
  191. package/dist/framework/impl/text/track-run-impl.js +0 -112
  192. package/dist/framework/impl/text/track-run-impl.js.map +0 -1
  193. package/dist/framework/notify.d.ts +0 -13
  194. package/dist/framework/notify.js +0 -116
  195. package/dist/framework/notify.js.map +0 -1
  196. package/dist/framework/range-util.d.ts +0 -40
  197. package/dist/framework/range-util.js +0 -312
  198. package/dist/framework/range-util.js.map +0 -1
  199. package/dist/framework/render-context.d.ts +0 -91
  200. package/dist/framework/render-context.js +0 -384
  201. package/dist/framework/render-context.js.map +0 -1
  202. package/dist/framework/render-define.d.ts +0 -109
  203. package/dist/framework/render-define.js +0 -195
  204. package/dist/framework/render-define.js.map +0 -1
  205. package/dist/framework/selection-overlays.d.ts +0 -30
  206. package/dist/framework/selection-overlays.js +0 -124
  207. package/dist/framework/selection-overlays.js.map +0 -1
  208. package/dist/texteditor.d.ts +0 -318
  209. package/dist/texteditor.js +0 -913
  210. package/dist/texteditor.js.map +0 -1
  211. package/dist/util/subject.d.ts +0 -34
  212. package/dist/util/subject.js +0 -88
  213. package/dist/util/subject.js.map +0 -1
  214. package/dist/util/table-bind.d.ts +0 -5
  215. package/dist/util/table-bind.js +0 -6
  216. package/dist/util/table-bind.js.map +0 -1
@@ -1,384 +0,0 @@
1
- import { ElementUtil } from "./element-util";
2
- import { ParagraphElement } from "./impl/paragraph/p-impl";
3
- export class RenderContenxt {
4
- mainCtx;
5
- viewOptions;
6
- docCtx;
7
- contentContext;
8
- overlaysContext;
9
- drawMode = 'view';
10
- contentOffCanvas;
11
- overlayOffCanvas;
12
- constructor(mainCtx, viewOptions, docCtx) {
13
- this.mainCtx = mainCtx;
14
- this.viewOptions = viewOptions;
15
- this.docCtx = docCtx;
16
- this.createNativeCanvas();
17
- }
18
- createNativeCanvas() {
19
- this.contentOffCanvas = document.createElement('canvas');
20
- this.overlayOffCanvas = document.createElement('canvas');
21
- this.contentContext = new PaintContent(this.contentOffCanvas.getContext('2d'), this.viewOptions);
22
- this.overlaysContext = new PaintContent(this.overlayOffCanvas.getContext('2d'), this.viewOptions);
23
- this.setCanvasProps();
24
- }
25
- // private createOffscreenCanvas() {
26
- // this.contentOffCanvas = new OffscreenCanvas(250, 250);
27
- // this.overlayOffCanvas = new OffscreenCanvas(250, 250);
28
- // this.contentContext = new PaintContent(this.contentOffCanvas.getContext('2d') as OffscreenCanvasRenderingContext2D, this.viewOptions);
29
- // this.overlaysContext = new PaintContent(this.overlayOffCanvas.getContext('2d') as OffscreenCanvasRenderingContext2D, this.viewOptions);
30
- // this.setCanvasProps();
31
- // }
32
- setCanvasProps(pageSetting = null) {
33
- if (!pageSetting) {
34
- pageSetting = { width: this.viewOptions.viewSettings.width, height: this.viewOptions.viewPaintHeight };
35
- if (this.viewOptions.showReviewWindow) {
36
- pageSetting.width += this.viewOptions.reviewWindowWidth;
37
- }
38
- }
39
- pageSetting = pageSetting || {
40
- width: this.viewOptions.viewSettings.width,
41
- height: this.viewOptions.viewPaintHeight
42
- };
43
- ElementUtil.setCanvasProps(this.contentOffCanvas, this.contentContext.ctx, pageSetting, this.viewOptions.scale);
44
- ElementUtil.setCanvasProps(this.overlayOffCanvas, this.overlaysContext.ctx, pageSetting, this.viewOptions.scale);
45
- ElementUtil.setCanvasProps(this.mainCtx.canvas, this.mainCtx, pageSetting, this.viewOptions.scale);
46
- }
47
- clear() {
48
- this.contentContext.clear();
49
- this.overlaysContext.clear();
50
- this.mainCtx.clearRect(0, 0, this.mainCtx.canvas.width, this.mainCtx.canvas.height);
51
- }
52
- commit(pageSetting = null) {
53
- //pageSetting = pageSetting || { width: this.viewOptions.viewSettings.width, height: this.viewOptions.viewPaintHeight };
54
- if (!pageSetting) {
55
- pageSetting = { width: this.viewOptions.viewSettings.width, height: this.viewOptions.viewPaintHeight };
56
- if (this.viewOptions.showReviewWindow) {
57
- pageSetting.width += this.viewOptions.reviewWindowWidth;
58
- }
59
- }
60
- let { width, height } = pageSetting;
61
- //this.mainCtx.clearRect(0, 0, this.mainCtx.canvas.width, this.mainCtx.canvas.height);
62
- if (!this.overlayOffCanvas.width || !this.overlayOffCanvas.height) {
63
- return;
64
- }
65
- this.mainCtx.drawImage(this.overlayOffCanvas, 0, 0, ElementUtil.getDprNumber(width, this.viewOptions.scale), ElementUtil.getDprNumber(height));
66
- //console.time('drawImage');
67
- this.mainCtx.drawImage(this.contentOffCanvas, 0, 0, ElementUtil.getDprNumber(width, this.viewOptions.scale), ElementUtil.getDprNumber(height));
68
- //console.timeEnd('drawImage');
69
- }
70
- }
71
- export class PaintContent {
72
- ctx;
73
- viewOptions;
74
- constructor(ctx, viewOptions) {
75
- this.ctx = ctx;
76
- this.viewOptions = viewOptions;
77
- this.init();
78
- }
79
- init() {
80
- this.ctx.textBaseline = 'alphabetic';
81
- }
82
- setGlobalAlpha(alpha) {
83
- this.ctx.globalAlpha = alpha;
84
- }
85
- getGlobalAlpha() {
86
- return this.ctx.globalAlpha;
87
- }
88
- clear() {
89
- this.ctx.clearRect(0, 0, this.ctx.canvas.width, this.ctx.canvas.height);
90
- this.init();
91
- }
92
- drawText(text, textProps, x, y, width, height) {
93
- if (textProps.background) {
94
- this.fillRect(x, y, width, height, textProps.background);
95
- }
96
- this.ctx.save();
97
- this.ctx.fillStyle = textProps.color;
98
- this.ctx.font = textProps.getFont();
99
- const vertHeight = textProps.vertAlign === 'superscript' ? 0 : height;
100
- this.ctx.fillText(text, x, y + vertHeight - height / 7);
101
- this.ctx.restore();
102
- if (textProps.linethrough) {
103
- this.drawLine(x, y + (Math.ceil(height / 2)), width, textProps.color, 1);
104
- }
105
- if (textProps.underline) {
106
- this.drawLine(x, y + height, width, textProps.color, 1);
107
- }
108
- if (textProps.overline) {
109
- this.drawLine(x, y, width, textProps.color, 1);
110
- }
111
- }
112
- fillCircular(x, y, r, color = 'black') {
113
- this.ctx.save();
114
- this.ctx.beginPath();
115
- this.ctx.fillStyle = color;
116
- this.ctx.arc(x, y, r, 0, 2 * Math.PI);
117
- this.ctx.fill();
118
- this.ctx.restore();
119
- }
120
- drawTextUnits(textGroupRender, x, y) {
121
- const textEle = textGroupRender.element;
122
- const textProps = textEle.props;
123
- const { width, height } = textGroupRender.rect;
124
- this.ctx.save();
125
- this.ctx.fillStyle = textProps.color;
126
- this.ctx.font = textProps.getFont();
127
- if (textProps.background) {
128
- this.fillRect(x, y, width, height, textProps.background);
129
- }
130
- if (textProps.linethrough) {
131
- this.drawLine(x, y + (Math.ceil(height / 2)), width, textProps.color, 1);
132
- }
133
- if (textProps.underline) {
134
- this.drawLine(x, y + height, width, textProps.color, 1);
135
- }
136
- if (textProps.overline) {
137
- this.drawLine(x, y, width, textProps.color, 1);
138
- }
139
- let horX = 0;
140
- let vertHeight = height - (height / 7);
141
- if (textProps.vertAlign === 'superscript') {
142
- //到top
143
- vertHeight -= textProps.fontSize * 2 / 5;
144
- //top在向上收缩 -top行间距
145
- //vertHeight -= textProps.fontSize * this.getParaLineHeight(textEle) / 20
146
- }
147
- for (let i = 0; i < textGroupRender.textMeasures.length; i++) {
148
- const unit = textGroupRender.textMeasures[i];
149
- this.ctx.fillText(unit.char, x + horX, y + vertHeight);
150
- horX += unit.actualSize;
151
- }
152
- this.ctx.restore();
153
- }
154
- getParaLineHeight(textEle) {
155
- const para = ElementUtil.getParentByType(textEle, ParagraphElement);
156
- if (!para) {
157
- throw new Error('未能找到父级段落元素');
158
- }
159
- return para.props.lineHeight;
160
- }
161
- measureText(text, textProps) {
162
- this.ctx.fillStyle = textProps.color;
163
- this.ctx.font = textProps.getFont();
164
- const textMeasure = this.ctx.measureText(text);
165
- return { width: textMeasure.width, height: textProps.fontSize };
166
- }
167
- measureTextUnits(units, textProps) {
168
- this.ctx.font = textProps.getFont();
169
- const letterSpace = textProps.letterSpace ?? 0;
170
- for (let i = 0; i < units.length; i++) {
171
- const char = units[i];
172
- const textMeasure = this.ctx.measureText(char.char);
173
- char.actualSize = textMeasure.width + letterSpace;
174
- char.sourceSize = textMeasure.width;
175
- }
176
- }
177
- clearRect(x, y, width, height) {
178
- this.ctx.clearRect(x, y, width, height);
179
- }
180
- save() {
181
- this.ctx.save();
182
- }
183
- restore() {
184
- this.ctx.restore();
185
- }
186
- strokeRect(x, y, width, height, strokeColor = 'black', strokeWidth = 1) {
187
- x = Math.ceil(x);
188
- y = Math.ceil(y);
189
- x += 0.5;
190
- y += 0.5;
191
- this.ctx.save();
192
- this.ctx.lineWidth = strokeWidth;
193
- this.ctx.strokeStyle = strokeColor;
194
- this.ctx.strokeRect(x, y, width, height);
195
- this.ctx.restore();
196
- //this.strokeLines([{ x, y }, { x: x + width, y }, { x: x + width, y: y + height }, { x, y: y + height }, { x, y }], strokeWidth, strokeColor);
197
- }
198
- //strokeRectImageData(x:number)
199
- drawLine(x, y, width, lineColor = 'black', lineWidth = 1) {
200
- x = Math.ceil(x);
201
- y = Math.ceil(y);
202
- x += 0.5;
203
- y += 0.5;
204
- this.ctx.save();
205
- this.ctx.strokeStyle = lineColor;
206
- this.ctx.lineWidth = lineWidth;
207
- this.ctx.beginPath();
208
- this.ctx.moveTo(x, y);
209
- this.ctx.lineTo(x + width, y);
210
- this.ctx.stroke();
211
- this.ctx.closePath();
212
- this.ctx.restore();
213
- }
214
- fillRect(x, y, width, height, fillColor = 'white', shadowBlur = 0, shadowColor = 'black') {
215
- x = Math.ceil(x);
216
- y = Math.ceil(y);
217
- x += 0.5;
218
- y += 0.5;
219
- this.ctx.save();
220
- this.ctx.fillStyle = fillColor;
221
- this.ctx.shadowBlur = shadowBlur;
222
- this.ctx.shadowColor = shadowColor;
223
- this.ctx.beginPath();
224
- this.ctx.moveTo(x, y);
225
- this.ctx.lineTo(x + width, y);
226
- this.ctx.lineTo(x + width, y + height);
227
- this.ctx.lineTo(x, y + height);
228
- this.ctx.lineTo(x, y);
229
- this.ctx.fill();
230
- this.ctx.closePath();
231
- this.ctx.restore();
232
- }
233
- strokeLines(lines, width = 1, strokeColor = 'black') {
234
- this.ctx.save();
235
- this.ctx.strokeStyle = strokeColor;
236
- this.ctx.lineWidth = width;
237
- this.ctx.lineCap = 'round';
238
- this.ctx.beginPath();
239
- for (let i = 0; i < lines.length; i++) {
240
- let { x, y } = lines[i];
241
- x = Math.ceil(x);
242
- y = Math.ceil(y);
243
- x += 0.5;
244
- y += 0.5;
245
- if (i === 0) {
246
- this.ctx.moveTo(x, y);
247
- }
248
- else {
249
- this.ctx.lineTo(x, y);
250
- }
251
- }
252
- this.ctx.stroke();
253
- this.ctx.closePath();
254
- this.ctx.restore();
255
- }
256
- fillLines(lines, width = 1, fillColor = 'black') {
257
- this.ctx.save();
258
- this.ctx.beginPath();
259
- this.ctx.fillStyle = fillColor;
260
- this.ctx.lineWidth = width;
261
- for (let i = 0; i < lines.length; i++) {
262
- let { x, y } = lines[i];
263
- x = Math.ceil(x);
264
- y = Math.ceil(y);
265
- x += 0.5;
266
- y += 0.5;
267
- if (i === 0) {
268
- this.ctx.moveTo(x, y);
269
- }
270
- else {
271
- this.ctx.lineTo(x, y);
272
- }
273
- }
274
- this.ctx.stroke();
275
- this.ctx.closePath();
276
- this.ctx.restore();
277
- }
278
- drawCheckBox(x, y, width, height, isChecked) {
279
- this.strokeRect(x, y, width, height, 'black', 1);
280
- if (isChecked) {
281
- const lines = [];
282
- lines.push({ x: x + (Math.ceil(width / 4)), y: y + (Math.ceil(height / 2)) });
283
- lines.push({ x: x + (Math.ceil(width / 2)), y: y + (Math.floor(height * 3 / 4)) });
284
- lines.push({ x: x + (Math.ceil(width * 3 / 4)), y: y + (Math.ceil(height / 4)) });
285
- this.strokeLines(lines, 2, 'red');
286
- }
287
- }
288
- drawRadioBox(x, y, width, height, isChecked) {
289
- x = x + Math.floor(width / 2);
290
- y = y + Math.floor(height / 2);
291
- width = Math.floor(width / 2);
292
- this.ctx.save();
293
- this.ctx.strokeStyle = 'black';
294
- this.ctx.beginPath();
295
- this.ctx.arc(x, y, width, 0, 2 * Math.PI);
296
- this.ctx.stroke();
297
- this.ctx.closePath();
298
- if (isChecked) {
299
- this.ctx.fillStyle = 'black';
300
- this.ctx.beginPath();
301
- this.ctx.arc(x, y, Math.floor(width / 5 * 3), 0, 2 * Math.PI);
302
- this.ctx.closePath();
303
- this.ctx.fill();
304
- }
305
- this.ctx.restore();
306
- }
307
- /**
308
- * 绘制图片
309
- * @param image
310
- * @param sx image的矩形(裁剪)选择框的左上角 X 轴坐标
311
- * @param sy image的矩形(裁剪)选择框的左上角 Y 轴坐标
312
- * @param sWidth image的矩形(裁剪)选择框的宽度
313
- * @param sHeight image的矩形(裁剪)选择框的高度
314
- * @param dx image的左上角在目标canvas上 X 轴坐标
315
- * @param dy image的左上角在目标canvas上 Y 轴坐标
316
- * @param dWidth image在目标canvas上绘制的宽度
317
- * @param dHeight image在目标canvas上绘制的高度
318
- */
319
- drawImage(image, sx, sy, sWidth, sHeight, dx, dy, dWidth, dHeight) {
320
- this.ctx.drawImage(image, sx, sy, sWidth, sHeight, dx, dy, dWidth, dHeight);
321
- }
322
- drawDashLine(points, lineDash, lineColor = 'black', lineWidth = 1) {
323
- this.ctx.save();
324
- this.ctx.setLineDash(lineDash);
325
- this.ctx.strokeStyle = lineColor;
326
- this.ctx.lineWidth = lineWidth;
327
- this.ctx.beginPath();
328
- for (let i = 0; i < points.length; i++) {
329
- let { x, y } = points[i];
330
- x += 0.5;
331
- y += 0.5;
332
- if (i === 0) {
333
- this.ctx.moveTo(x, y);
334
- }
335
- else {
336
- this.ctx.lineTo(x, y);
337
- }
338
- }
339
- this.ctx.stroke();
340
- this.ctx.closePath();
341
- this.ctx.restore();
342
- }
343
- roundRect(x, y, width, height, radius, fill, stroke) {
344
- x += 0.5;
345
- y += 0.5;
346
- if (typeof stroke === 'undefined') {
347
- stroke = true;
348
- }
349
- if (typeof radius === 'number') {
350
- radius = { tl: radius, tr: radius, br: radius, bl: radius };
351
- }
352
- else {
353
- var defaultRadius = { tl: 0, tr: 0, br: 0, bl: 0 };
354
- for (var side in defaultRadius) {
355
- radius[side] = radius[side] || defaultRadius[side];
356
- }
357
- }
358
- this.ctx.beginPath();
359
- this.ctx.lineWidth = 1;
360
- this.ctx.moveTo(x + radius.tl, y);
361
- this.ctx.lineTo(x + width - radius.tr, y);
362
- this.ctx.quadraticCurveTo(x + width, y, x + width, y + radius.tr);
363
- this.ctx.lineTo(x + width, y + height - radius.br);
364
- this.ctx.quadraticCurveTo(x + width, y + height, x + width - radius.br, y + height);
365
- this.ctx.lineTo(x + radius.bl, y + height);
366
- this.ctx.quadraticCurveTo(x, y + height, x, y + height - radius.bl);
367
- this.ctx.lineTo(x, y + radius.tl);
368
- this.ctx.quadraticCurveTo(x, y, x + radius.tl, y);
369
- this.ctx.closePath();
370
- if (fill) {
371
- this.ctx.fill();
372
- }
373
- if (stroke) {
374
- this.ctx.stroke();
375
- }
376
- }
377
- clip(x, y, width, height) {
378
- this.ctx.save();
379
- this.ctx.beginPath();
380
- this.ctx.rect(x, y, width, height);
381
- this.ctx.clip();
382
- }
383
- }
384
- //# sourceMappingURL=render-context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"render-context.js","sourceRoot":"","sources":["../../src/med_editor/framework/render-context.ts"],"names":[],"mappings":"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"}
@@ -1,109 +0,0 @@
1
- import { Rect, Element, MarginProps, PaddingProps, Position } from './element-define';
2
- import { RenderContenxtType } from './render-context';
3
- /**
4
- * 定义组件的UI形式的渲染
5
- */
6
- export declare abstract class RenderObject<T extends Element = Element> {
7
- element: T;
8
- margin: MarginProps;
9
- padding: PaddingProps;
10
- rect: Rect;
11
- parent: BranchRenderObject;
12
- /**
13
- * 可点击性,例如:null-text 占位符元素不具备可点击能力
14
- */
15
- disableClick: boolean;
16
- constructor(element: T);
17
- abstract clone(): RenderObject;
18
- pagePaintCompleted(ctx: RenderContenxtType, position: Position): void;
19
- destroy(): void;
20
- /**
21
- * 获取内容区域框体
22
- * @param render
23
- * @returns
24
- */
25
- getInnnerRect(): Rect;
26
- getInnerMaxWidth(): number;
27
- /**
28
- * 根据内框内容高度,更新外框框体高度
29
- * @param render
30
- * @param innerRect
31
- */
32
- updateRenderHeight(innerRect: Rect | number): void;
33
- getIndex(): number;
34
- }
35
- /**
36
- * 叶子节点渲染元素
37
- */
38
- export declare abstract class LeafRenderObject<T extends Element = Element> extends RenderObject<T> {
39
- constructor(element: T | null);
40
- abstract render(ctx: RenderContenxtType, position: {
41
- x: number;
42
- y: number;
43
- }): void;
44
- }
45
- /**
46
- * 枝干节点渲染元素
47
- */
48
- export declare abstract class BranchRenderObject<T extends Element = Element> extends RenderObject<T> {
49
- constructor(element: T | null);
50
- private chilren;
51
- getItems(): Array<RenderObject>;
52
- addChild(...items: Array<RenderObject>): void;
53
- insertChild(item: RenderObject, index: number): void;
54
- removeChild(child: RenderObject): void;
55
- removeChildByIndex(index: number): void;
56
- clear(): void;
57
- get length(): number;
58
- getChild<T extends RenderObject = RenderObject>(index: number): T;
59
- getChildIndex(child: RenderObject): number;
60
- abstract beginRender(ctx: RenderContenxtType, position: Position): void;
61
- abstract endRender(ctx: RenderContenxtType, position: Position): void;
62
- destroy(): void;
63
- }
64
- /**
65
- * 块级渲染元素
66
- */
67
- export declare abstract class BlockContentRenderObject<T extends Element = Element> extends BranchRenderObject<T> {
68
- setRenderWidth(maxWidth: number): void;
69
- }
70
- export declare abstract class InlineGroupRenderObject<T extends Element = Element> extends BranchRenderObject<T> {
71
- }
72
- /**
73
- * 包含块级渲染元素的容器元素,例如body、table-cell等
74
- */
75
- export declare abstract class BlockContainerRenderObject<T extends Element = Element> extends BranchRenderObject<T> {
76
- setRenderWidth(maxWidth: number): void;
77
- }
78
- /**
79
- * 多级 ‘BlockLineRectRenderObject’ 包裹元素,例如 p、table
80
- */
81
- export declare abstract class MuiltBlockLineRenderObject<T extends Element = Element> extends BlockContentRenderObject<T> {
82
- }
83
- /**
84
- * 容器-子内容为多个行内块级元素,例如table-row
85
- */
86
- export declare abstract class InlineBlockContainer extends MuiltBlockLineRenderObject {
87
- }
88
- /**
89
- * 服务于table-cell
90
- * 可被多级拆分的元素
91
- */
92
- export declare abstract class InlineMuiltBlockLineRenderObject extends MuiltBlockLineRenderObject {
93
- }
94
- /**
95
- * 最小不可分割单位的块级行框,例如 p-line
96
- * 一行不可存在于两个页面中,块级行框不能分布在两个页面中
97
- */
98
- export declare abstract class BlockLineRectRenderObject extends BlockContentRenderObject {
99
- }
100
- export declare type BorderType = 'left' | 'right' | 'top' | 'bottom' | 'left-middle' | 'right-middle' | 'top-middle' | 'bottom-middle' | 'none' | 'left-top' | 'left-bottom' | 'right-top' | 'right-bottom';
101
- export declare type CursorType = 'text' | 'row-resize' | 'col-resize' | 'none' | 'default' | 'move' | 'pointer' | 'w-resize' | 's-resize' | 'se-resize' | 'ne-resize';
102
- export declare enum RenderObjectType {
103
- Branch = 0,
104
- Leaf = 1
105
- }
106
- export interface IMeasureRenderStruct<T> {
107
- rect: Rect;
108
- render: T;
109
- }