@hailin-zheng/editor-core 1.0.7 → 1.0.10

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 (237) hide show
  1. package/package.json +3 -4
  2. package/{lib/doc-ruler.js → src/med_editor/doc-ruler.ts} +101 -74
  3. package/src/med_editor/framework/common-util.ts +200 -0
  4. package/{lib/framework/document-change.js → src/med_editor/framework/document-change.ts} +308 -259
  5. package/{lib/framework/document-combine.js → src/med_editor/framework/document-combine.ts} +15 -11
  6. package/{lib/framework/document-comment.js → src/med_editor/framework/document-comment.ts} +52 -37
  7. package/{lib/framework/document-context.js → src/med_editor/framework/document-context.ts} +181 -101
  8. package/{lib/framework/document-eval-func.js → src/med_editor/framework/document-eval-func.ts} +16 -11
  9. package/{lib/framework/document-event.js → src/med_editor/framework/document-event.ts} +244 -216
  10. package/{lib/framework/document-history.js → src/med_editor/framework/document-history.ts} +25 -14
  11. package/{lib/framework/document-images-loader.js → src/med_editor/framework/document-images-loader.ts} +25 -17
  12. package/{lib/framework/document-input-cursor.js → src/med_editor/framework/document-input-cursor.ts} +76 -71
  13. package/{lib/framework/document-paint.js → src/med_editor/framework/document-paint.ts} +35 -28
  14. package/{lib/framework/document-print-offscreen.js → src/med_editor/framework/document-print-offscreen.ts} +25 -19
  15. package/{lib/framework/document-print.js → src/med_editor/framework/document-print.ts} +57 -41
  16. package/src/med_editor/framework/document-segmenter.ts +211 -0
  17. package/{lib/framework/document-selection.js → src/med_editor/framework/document-selection.ts} +116 -85
  18. package/{lib/framework/document-template.js → src/med_editor/framework/document-template.ts} +3 -3
  19. package/src/med_editor/framework/document-textline-mode.ts +34 -0
  20. package/{lib/framework/element-define.js → src/med_editor/framework/element-define.ts} +301 -206
  21. package/src/med_editor/framework/element-event-define.ts +141 -0
  22. package/{lib/framework/element-measure.js → src/med_editor/framework/element-measure.ts} +143 -121
  23. package/{lib/framework/element-paint.js → src/med_editor/framework/element-paint.ts} +44 -38
  24. package/{lib/framework/element-props.js → src/med_editor/framework/element-props.ts} +331 -202
  25. package/{lib/framework/element-reader.js → src/med_editor/framework/element-reader.ts} +39 -31
  26. package/{lib/framework/element-render-cut.js → src/med_editor/framework/element-render-cut.ts} +113 -106
  27. package/{lib/framework/element-serialize.js → src/med_editor/framework/element-serialize.ts} +37 -24
  28. package/{lib/framework/element-util.js → src/med_editor/framework/element-util.ts} +317 -216
  29. package/{lib/framework/impl/checkbox/checkbox-impl.js → src/med_editor/framework/impl/checkbox/checkbox-impl.ts} +27 -20
  30. package/{lib/framework/impl/comments/comment-content-impl.js → src/med_editor/framework/impl/comments/comment-content-impl.ts} +45 -31
  31. package/{lib/framework/impl/comments/comment-element-impl.js → src/med_editor/framework/impl/comments/comment-element-impl.ts} +23 -20
  32. package/{lib/framework/impl/comments/comments-container-impl.js → src/med_editor/framework/impl/comments/comments-container-impl.ts} +22 -16
  33. package/{lib/framework/impl/comments/comments-util.js → src/med_editor/framework/impl/comments/comments-util.ts} +34 -17
  34. package/{lib/framework/impl/comments/validate-msg-impl.js → src/med_editor/framework/impl/comments/validate-msg-impl.ts} +28 -17
  35. package/{lib/framework/impl/data-element/data-decorate-impl.js → src/med_editor/framework/impl/data-element/data-decorate-impl.ts} +26 -22
  36. package/{lib/framework/impl/data-element/data-element-barcode.js → src/med_editor/framework/impl/data-element/data-element-barcode.ts} +41 -29
  37. package/{lib/framework/impl/data-element/data-element-base-impl.js → src/med_editor/framework/impl/data-element/data-element-base-impl.ts} +73 -44
  38. package/{lib/framework/impl/data-element/data-element-check-impl.js → src/med_editor/framework/impl/data-element/data-element-check-impl.ts} +48 -35
  39. package/{lib/framework/impl/data-element/data-element-date-impl.js → src/med_editor/framework/impl/data-element/data-element-date-impl.ts} +41 -24
  40. package/{lib/framework/impl/data-element/data-element-group-impl.js → src/med_editor/framework/impl/data-element/data-element-group-impl.ts} +52 -32
  41. package/{lib/framework/impl/data-element/data-element-image-impl.js → src/med_editor/framework/impl/data-element/data-element-image-impl.ts} +38 -28
  42. package/{lib/framework/impl/data-element/data-element-list-impl.js → src/med_editor/framework/impl/data-element/data-element-list-impl.ts} +42 -31
  43. package/{lib/framework/impl/data-element/data-element-text-impl.js → src/med_editor/framework/impl/data-element/data-element-text-impl.ts} +36 -22
  44. package/{lib/framework/impl/decorate/fill-null-space-imple.js → src/med_editor/framework/impl/decorate/fill-null-space-imple.ts} +15 -10
  45. package/{lib/framework/impl/document/doc-body-impl.js → src/med_editor/framework/impl/document/doc-body-impl.ts} +32 -16
  46. package/{lib/framework/impl/document/doc-body-part-impl.js → src/med_editor/framework/impl/document/doc-body-part-impl.ts} +27 -17
  47. package/src/med_editor/framework/impl/document/doc-container-impl.ts +24 -0
  48. package/{lib/framework/impl/document/doc-footer-impl.js → src/med_editor/framework/impl/document/doc-footer-impl.ts} +30 -19
  49. package/{lib/framework/impl/document/doc-header-impl.js → src/med_editor/framework/impl/document/doc-header-impl.ts} +34 -17
  50. package/{lib/framework/impl/document/doc-impl.js → src/med_editor/framework/impl/document/doc-impl.ts} +62 -45
  51. package/{lib/framework/impl/media-formula/menstrual-history.js → src/med_editor/framework/impl/media-formula/menstrual-history.ts} +58 -36
  52. package/{lib/framework/impl/paragraph/p-impl.js → src/med_editor/framework/impl/paragraph/p-impl.ts} +64 -30
  53. package/{lib/framework/impl/picture/image-impl.js → src/med_editor/framework/impl/picture/image-impl.ts} +37 -25
  54. package/{lib/framework/impl/radio/radio-impl.js → src/med_editor/framework/impl/radio/radio-impl.ts} +28 -21
  55. package/{lib/framework/impl/symbol/br-symbol-impl.js → src/med_editor/framework/impl/symbol/br-symbol-impl.ts} +21 -15
  56. package/{lib/framework/impl/symbol/p-symbol-impl.js → src/med_editor/framework/impl/symbol/p-symbol-impl.ts} +15 -12
  57. package/{lib/framework/impl/table/table-cell-impl.js → src/med_editor/framework/impl/table/table-cell-impl.ts} +41 -30
  58. package/{lib/framework/impl/table/table-impl.js → src/med_editor/framework/impl/table/table-impl.ts} +122 -84
  59. package/{lib/framework/impl/table/table-row-impl.js → src/med_editor/framework/impl/table/table-row-impl.ts} +26 -18
  60. package/{lib/framework/impl/table/table-split-cell-patch.js → src/med_editor/framework/impl/table/table-split-cell-patch.ts} +31 -22
  61. package/{lib/framework/impl/table/table-split-cell.js → src/med_editor/framework/impl/table/table-split-cell.ts} +105 -94
  62. package/{lib/framework/impl/table/table-util.js → src/med_editor/framework/impl/table/table-util.ts} +197 -159
  63. package/{lib/framework/impl/text/text-impl.js → src/med_editor/framework/impl/text/text-impl.ts} +49 -35
  64. package/{lib/framework/impl/text/track-run-impl.js → src/med_editor/framework/impl/text/track-run-impl.ts} +53 -30
  65. package/{lib/framework/notify.js → src/med_editor/framework/notify.ts} +50 -36
  66. package/{lib/framework/range-util.js → src/med_editor/framework/range-util.ts} +80 -71
  67. package/{lib/framework/render-context.js → src/med_editor/framework/render-context.ts} +111 -64
  68. package/{lib/framework/render-define.js → src/med_editor/framework/render-define.ts} +90 -61
  69. package/{lib/framework/selection-overlays.js → src/med_editor/framework/selection-overlays.ts} +25 -16
  70. package/{lib/texteditor.js → src/med_editor/texteditor.ts} +288 -191
  71. package/src/med_editor/util/subject.ts +118 -0
  72. package/{lib/util/table-bind.js → src/med_editor/util/table-bind.ts} +2 -2
  73. package/src/med_editor//345/205/245/351/231/242/350/256/260/345/275/225.json +3573 -0
  74. package/src/med_editor//345/205/245/351/231/242/350/256/260/345/275/225/346/265/213/350/257/225.json +3573 -0
  75. package/src/med_editor//345/205/245/351/231/242/350/256/260/345/275/225/346/265/213/350/257/225bug.json +315 -0
  76. package/src/med_editor//345/205/245/351/231/242/350/256/260/345/275/225/346/265/213/350/257/225/346/211/271/346/263/250.json +122 -0
  77. package/src/med_editor//345/205/245/351/231/242/350/256/260/345/275/225/346/265/213/350/257/225/346/226/207/346/241/243/351/252/214/350/257/201.json +3599 -0
  78. package/src/med_editor//345/205/245/351/231/242/350/256/260/345/275/225/346/265/213/350/257/225/351/225/277/346/226/207/346/234/254.json +24586 -0
  79. package/src/med_editor//345/220/210/345/271/266/347/227/205/347/250/213/345/275/225.json +2874 -0
  80. package/src/med_editor//346/211/213/346/234/257/350/256/260/345/275/225.json +341 -0
  81. package/src/med_editor//346/231/256/351/200/232doc/347/261/273/346/226/207/346/241/243.json +2201 -0
  82. package/src/med_editor//346/243/200/351/252/214/347/224/263/350/257/267/345/215/225.json +1069 -0
  83. package/src/med_editor//347/227/205/347/250/213/345/275/225//345/206/205/351/225/234/344/270/213/346/262/273/347/226/227/350/256/260/345/275/225.json +125 -0
  84. package/src/med_editor//347/227/205/347/250/213/345/275/225//345/220/210/345/271/266/347/227/205/347/250/213/345/275/225/346/250/241/346/235/277.json +86 -0
  85. package/src/med_editor//347/227/205/347/250/213/345/275/225//346/227/245/345/270/270/347/227/205/347/250/213/350/256/260/345/275/225.json +115 -0
  86. package/src/med_editor//347/227/205/347/250/213/345/275/225//346/237/245/346/210/277/350/256/260/345/275/2251.json +108 -0
  87. package/src/med_editor//347/227/205/347/250/213/345/275/225//351/246/226/346/254/241/344/270/212/347/272/247/345/214/273/345/270/210/346/237/245/346/210/277/350/256/260/345/275/225.json +272 -0
  88. package/src/med_editor//351/225/277/346/234/237/345/214/273/345/230/261/345/215/225.json +1070 -0
  89. package/lib/doc-ruler.d.ts +0 -51
  90. package/lib/doc-ruler.js.map +0 -1
  91. package/lib/framework/common-util.d.ts +0 -63
  92. package/lib/framework/common-util.js +0 -178
  93. package/lib/framework/common-util.js.map +0 -1
  94. package/lib/framework/document-change.d.ts +0 -265
  95. package/lib/framework/document-change.js.map +0 -1
  96. package/lib/framework/document-combine.d.ts +0 -24
  97. package/lib/framework/document-combine.js.map +0 -1
  98. package/lib/framework/document-comment.d.ts +0 -46
  99. package/lib/framework/document-comment.js.map +0 -1
  100. package/lib/framework/document-context.d.ts +0 -149
  101. package/lib/framework/document-context.js.map +0 -1
  102. package/lib/framework/document-eval-func.d.ts +0 -18
  103. package/lib/framework/document-eval-func.js.map +0 -1
  104. package/lib/framework/document-event.d.ts +0 -213
  105. package/lib/framework/document-event.js.map +0 -1
  106. package/lib/framework/document-history.d.ts +0 -26
  107. package/lib/framework/document-history.js.map +0 -1
  108. package/lib/framework/document-images-loader.d.ts +0 -16
  109. package/lib/framework/document-images-loader.js.map +0 -1
  110. package/lib/framework/document-input-cursor.d.ts +0 -78
  111. package/lib/framework/document-input-cursor.js.map +0 -1
  112. package/lib/framework/document-paint.d.ts +0 -34
  113. package/lib/framework/document-paint.js.map +0 -1
  114. package/lib/framework/document-print-offscreen.d.ts +0 -38
  115. package/lib/framework/document-print-offscreen.js.map +0 -1
  116. package/lib/framework/document-print.d.ts +0 -60
  117. package/lib/framework/document-print.js.map +0 -1
  118. package/lib/framework/document-segmenter.d.ts +0 -2
  119. package/lib/framework/document-segmenter.js +0 -106
  120. package/lib/framework/document-segmenter.js.map +0 -1
  121. package/lib/framework/document-selection.d.ts +0 -89
  122. package/lib/framework/document-selection.js.map +0 -1
  123. package/lib/framework/document-template.d.ts +0 -4
  124. package/lib/framework/document-template.js.map +0 -1
  125. package/lib/framework/document-textline-mode.d.ts +0 -7
  126. package/lib/framework/document-textline-mode.js +0 -30
  127. package/lib/framework/document-textline-mode.js.map +0 -1
  128. package/lib/framework/element-define.d.ts +0 -319
  129. package/lib/framework/element-define.js.map +0 -1
  130. package/lib/framework/element-event-define.d.ts +0 -99
  131. package/lib/framework/element-event-define.js +0 -108
  132. package/lib/framework/element-event-define.js.map +0 -1
  133. package/lib/framework/element-measure.d.ts +0 -97
  134. package/lib/framework/element-measure.js.map +0 -1
  135. package/lib/framework/element-paint.d.ts +0 -42
  136. package/lib/framework/element-paint.js.map +0 -1
  137. package/lib/framework/element-props.d.ts +0 -301
  138. package/lib/framework/element-props.js.map +0 -1
  139. package/lib/framework/element-reader.d.ts +0 -19
  140. package/lib/framework/element-reader.js.map +0 -1
  141. package/lib/framework/element-render-cut.d.ts +0 -55
  142. package/lib/framework/element-render-cut.js.map +0 -1
  143. package/lib/framework/element-serialize.d.ts +0 -30
  144. package/lib/framework/element-serialize.js.map +0 -1
  145. package/lib/framework/element-util.d.ts +0 -369
  146. package/lib/framework/element-util.js.map +0 -1
  147. package/lib/framework/impl/checkbox/checkbox-impl.d.ts +0 -24
  148. package/lib/framework/impl/checkbox/checkbox-impl.js.map +0 -1
  149. package/lib/framework/impl/comments/comment-content-impl.d.ts +0 -40
  150. package/lib/framework/impl/comments/comment-content-impl.js.map +0 -1
  151. package/lib/framework/impl/comments/comment-element-impl.d.ts +0 -21
  152. package/lib/framework/impl/comments/comment-element-impl.js.map +0 -1
  153. package/lib/framework/impl/comments/comments-container-impl.d.ts +0 -22
  154. package/lib/framework/impl/comments/comments-container-impl.js.map +0 -1
  155. package/lib/framework/impl/comments/comments-util.d.ts +0 -12
  156. package/lib/framework/impl/comments/comments-util.js.map +0 -1
  157. package/lib/framework/impl/comments/validate-msg-impl.d.ts +0 -21
  158. package/lib/framework/impl/comments/validate-msg-impl.js.map +0 -1
  159. package/lib/framework/impl/data-element/data-decorate-impl.d.ts +0 -30
  160. package/lib/framework/impl/data-element/data-decorate-impl.js.map +0 -1
  161. package/lib/framework/impl/data-element/data-element-barcode.d.ts +0 -31
  162. package/lib/framework/impl/data-element/data-element-barcode.js.map +0 -1
  163. package/lib/framework/impl/data-element/data-element-base-impl.d.ts +0 -68
  164. package/lib/framework/impl/data-element/data-element-base-impl.js.map +0 -1
  165. package/lib/framework/impl/data-element/data-element-check-impl.d.ts +0 -35
  166. package/lib/framework/impl/data-element/data-element-check-impl.js.map +0 -1
  167. package/lib/framework/impl/data-element/data-element-date-impl.d.ts +0 -23
  168. package/lib/framework/impl/data-element/data-element-date-impl.js.map +0 -1
  169. package/lib/framework/impl/data-element/data-element-group-impl.d.ts +0 -23
  170. package/lib/framework/impl/data-element/data-element-group-impl.js.map +0 -1
  171. package/lib/framework/impl/data-element/data-element-image-impl.d.ts +0 -30
  172. package/lib/framework/impl/data-element/data-element-image-impl.js.map +0 -1
  173. package/lib/framework/impl/data-element/data-element-list-impl.d.ts +0 -22
  174. package/lib/framework/impl/data-element/data-element-list-impl.js.map +0 -1
  175. package/lib/framework/impl/data-element/data-element-text-impl.d.ts +0 -23
  176. package/lib/framework/impl/data-element/data-element-text-impl.js.map +0 -1
  177. package/lib/framework/impl/decorate/fill-null-space-imple.d.ts +0 -21
  178. package/lib/framework/impl/decorate/fill-null-space-imple.js.map +0 -1
  179. package/lib/framework/impl/document/doc-body-impl.d.ts +0 -27
  180. package/lib/framework/impl/document/doc-body-impl.js.map +0 -1
  181. package/lib/framework/impl/document/doc-body-part-impl.d.ts +0 -30
  182. package/lib/framework/impl/document/doc-body-part-impl.js.map +0 -1
  183. package/lib/framework/impl/document/doc-container-impl.d.ts +0 -16
  184. package/lib/framework/impl/document/doc-container-impl.js +0 -21
  185. package/lib/framework/impl/document/doc-container-impl.js.map +0 -1
  186. package/lib/framework/impl/document/doc-footer-impl.d.ts +0 -26
  187. package/lib/framework/impl/document/doc-footer-impl.js.map +0 -1
  188. package/lib/framework/impl/document/doc-header-impl.d.ts +0 -26
  189. package/lib/framework/impl/document/doc-header-impl.js.map +0 -1
  190. package/lib/framework/impl/document/doc-impl.d.ts +0 -61
  191. package/lib/framework/impl/document/doc-impl.js.map +0 -1
  192. package/lib/framework/impl/media-formula/menstrual-history.d.ts +0 -35
  193. package/lib/framework/impl/media-formula/menstrual-history.js.map +0 -1
  194. package/lib/framework/impl/paragraph/p-impl.d.ts +0 -45
  195. package/lib/framework/impl/paragraph/p-impl.js.map +0 -1
  196. package/lib/framework/impl/picture/image-impl.d.ts +0 -31
  197. package/lib/framework/impl/picture/image-impl.js.map +0 -1
  198. package/lib/framework/impl/radio/radio-impl.d.ts +0 -22
  199. package/lib/framework/impl/radio/radio-impl.js.map +0 -1
  200. package/lib/framework/impl/symbol/br-symbol-impl.d.ts +0 -22
  201. package/lib/framework/impl/symbol/br-symbol-impl.js.map +0 -1
  202. package/lib/framework/impl/symbol/p-symbol-impl.d.ts +0 -19
  203. package/lib/framework/impl/symbol/p-symbol-impl.js.map +0 -1
  204. package/lib/framework/impl/table/table-cell-impl.d.ts +0 -37
  205. package/lib/framework/impl/table/table-cell-impl.js.map +0 -1
  206. package/lib/framework/impl/table/table-impl.d.ts +0 -55
  207. package/lib/framework/impl/table/table-impl.js.map +0 -1
  208. package/lib/framework/impl/table/table-row-impl.d.ts +0 -26
  209. package/lib/framework/impl/table/table-row-impl.js.map +0 -1
  210. package/lib/framework/impl/table/table-split-cell-patch.d.ts +0 -20
  211. package/lib/framework/impl/table/table-split-cell-patch.js.map +0 -1
  212. package/lib/framework/impl/table/table-split-cell.d.ts +0 -90
  213. package/lib/framework/impl/table/table-split-cell.js.map +0 -1
  214. package/lib/framework/impl/table/table-util.d.ts +0 -150
  215. package/lib/framework/impl/table/table-util.js.map +0 -1
  216. package/lib/framework/impl/text/text-impl.d.ts +0 -32
  217. package/lib/framework/impl/text/text-impl.js.map +0 -1
  218. package/lib/framework/impl/text/track-run-impl.d.ts +0 -27
  219. package/lib/framework/impl/text/track-run-impl.js.map +0 -1
  220. package/lib/framework/notify.d.ts +0 -13
  221. package/lib/framework/notify.js.map +0 -1
  222. package/lib/framework/range-util.d.ts +0 -40
  223. package/lib/framework/range-util.js.map +0 -1
  224. package/lib/framework/render-context.d.ts +0 -91
  225. package/lib/framework/render-context.js.map +0 -1
  226. package/lib/framework/render-define.d.ts +0 -109
  227. package/lib/framework/render-define.js.map +0 -1
  228. package/lib/framework/selection-overlays.d.ts +0 -30
  229. package/lib/framework/selection-overlays.js.map +0 -1
  230. package/lib/texteditor.d.ts +0 -318
  231. package/lib/texteditor.js.map +0 -1
  232. package/lib/util/subject.d.ts +0 -34
  233. package/lib/util/subject.js +0 -88
  234. package/lib/util/subject.js.map +0 -1
  235. package/lib/util/table-bind.d.ts +0 -5
  236. package/lib/util/table-bind.js.map +0 -1
  237. package/tsconfig.json +0 -25
@@ -1,26 +1,29 @@
1
- import { BranchRenderObject, LeafRenderObject } from "./render-define";
1
+ import { RenderContenxtType } from "./render-context";
2
+ import { Element, LeafElement, Position, SelectionContentRange, ViewOptions } from "./element-define";
3
+ import { BranchRenderObject, LeafRenderObject, RenderObject } from "./render-define";
4
+ import { DocumentContainerRender } from "./impl/document/doc-container-impl";
2
5
  import { ElementUtil } from "./element-util";
6
+ import { CommentElement } from "./impl/comments/comment-element-impl";
3
7
  import { CommsContainerRenderObject } from "./impl/comments/comments-container-impl";
4
8
  import { CommentsUtil } from "./impl/comments/comments-util";
5
- import { TextGroupElement } from "./impl/text/text-impl";
9
+ import { TextGroupElement, TextGroupRenderObject } from "./impl/text/text-impl";
6
10
  import { RangeUtil } from "./range-util";
7
- import { DataElementRenderObject } from "@/med_editor/framework/impl/data-element/data-element-base-impl";
11
+ import { DataElementRenderObject } from "./impl/data-element/data-element-base-impl";
12
+ export interface PrintOptions {
13
+ beforePrintPage: (pageIndex: number, pageCount: number) => void;
14
+ afterPrintPage: (pageIndex: number, pageCount: number) => void;
15
+ }
8
16
  export class ElementPaint {
9
- viewOptions;
10
- renderCtx;
11
17
  //存储元素和绘制元素的映射关系
12
18
  //paintElementMap: Map<Element, Array<RenderObject>> = new Map();
13
- selectedSets;
14
- measureCommContainer;
15
- rePaint;
16
- constructor(viewOptions, renderCtx) {
17
- this.viewOptions = viewOptions;
18
- this.renderCtx = renderCtx;
19
- }
19
+ private selectedSets!: Map<Element, SelectionContentRange>;
20
+ private measureCommContainer!: CommsContainerRenderObject;
21
+ private rePaint!: boolean;
22
+ constructor(private viewOptions: ViewOptions, private renderCtx: RenderContenxtType) { }
20
23
  //审阅标记的位置对应关系
21
- paintCommMap;
22
- paintPagePos;
23
- drawPages(docContainer, selectedSets, measureCommContainer, rePaint) {
24
+ paintCommMap!: Array<{ ele: CommentElement, render: RenderObject, pos: Position }>;
25
+ paintPagePos!: Position;
26
+ drawPages(docContainer: DocumentContainerRender, selectedSets: Map<Element, SelectionContentRange>, measureCommContainer: CommsContainerRenderObject, rePaint: boolean): void {
24
27
  this.rePaint = rePaint;
25
28
  this.measureCommContainer = measureCommContainer;
26
29
  const { viewSettings, docPageSettings, viewBackcolor } = this.viewOptions;
@@ -34,7 +37,7 @@ export class ElementPaint {
34
37
  const doc = docContainer.getChild(i);
35
38
  const { x: rx, y: ry, width: rw, height: rh } = doc.rect;
36
39
  const currPosition = { x: rx + containerPos.x, y: ry + containerPos.y };
37
- let inViewPort = (currPosition.y >= 0 && currPosition.y <= this.viewOptions.viewPaintHeight) || (currPosition.y < 0 && currPosition.y + rh > 0);
40
+ let inViewPort: boolean | undefined = (currPosition.y >= 0 && currPosition.y <= this.viewOptions.viewPaintHeight) || (currPosition.y < 0 && currPosition.y + rh > 0);
38
41
  if (this.viewOptions.fullPageView) {
39
42
  //inViewPort = undefined;
40
43
  }
@@ -44,11 +47,13 @@ export class ElementPaint {
44
47
  if (inViewPort) {
45
48
  this.invokedPagePaintCompleted(doc, containerPos);
46
49
  }
50
+
47
51
  }
48
- docContainer.endRender(this.renderCtx, containerPos);
52
+ docContainer.endRender(this.renderCtx, containerPos)
49
53
  this.renderCtx.commit(null);
50
54
  }
51
- drawRenderObject(renderObject, parent, parentInViewPort = false) {
55
+
56
+ drawRenderObject(renderObject: RenderObject<any>, parent: { x: number, y: number }, parentInViewPort: boolean | undefined = false): void {
52
57
  const element = renderObject.element;
53
58
  if (this.rePaint && element) {
54
59
  element.paintRenders.push(renderObject);
@@ -56,7 +61,7 @@ export class ElementPaint {
56
61
  const { x: rx, y: ry, width: rw, height: rh } = renderObject.rect;
57
62
  const currPosition = { x: rx + parent.x, y: ry + parent.y };
58
63
  //判断当前绘制元素是否在视窗内
59
- let inViewPort = parentInViewPort;
64
+ let inViewPort: boolean = parentInViewPort;
60
65
  if (parentInViewPort === undefined || this.viewOptions.fullPageView) {
61
66
  inViewPort = (currPosition.y >= 0 && currPosition.y <= this.viewOptions.viewPaintHeight) || (currPosition.y < 0 && currPosition.y + rh > 0);
62
67
  }
@@ -72,18 +77,17 @@ export class ElementPaint {
72
77
  renderObject.beginRender(this.renderCtx, currPosition);
73
78
  for (let i = 0; i < renderObject.length; i++) {
74
79
  const child = renderObject.getChild(i);
75
- this.drawRenderObject(child, currPosition, inViewPort);
80
+ this.drawRenderObject(child, currPosition, inViewPort)
76
81
  }
77
82
  renderObject.endRender(this.renderCtx, currPosition);
78
83
  }
79
- }
80
- else if (renderObject instanceof LeafRenderObject) {
84
+ } else if (renderObject instanceof LeafRenderObject) {
81
85
  if (inViewPort) {
82
86
  renderObject.render(this.renderCtx, currPosition);
83
87
  }
84
88
  //审阅信息
85
89
  if (this.viewOptions.showReviewWindow && element && element.type === 'comm') {
86
- const commElement = element;
90
+ const commElement = element as CommentElement;
87
91
  if (commElement.props.markType === 'start') {
88
92
  //获取当前绘制元素相对于当前页的坐标
89
93
  this.paintCommMap.push({ ele: commElement, render: renderObject, pos: { x: currPosition.x - this.paintPagePos.x, y: currPosition.y - this.paintPagePos.y } });
@@ -92,29 +96,27 @@ export class ElementPaint {
92
96
  }
93
97
  //处理选中拖蓝
94
98
  if (inViewPort && this.selectedSets.has(element)) {
95
- const range = this.selectedSets.get(element);
99
+ const range = this.selectedSets.get(element) as SelectionContentRange;
96
100
  if (renderObject instanceof LeafRenderObject) {
97
101
  const overlayRect = { x: currPosition.x, y: currPosition.y, width: rw, height: rh };
98
102
  const paraLinePos = ElementUtil.getParaLinePos(renderObject, { x: currPosition.x, y: currPosition.y });
99
103
  if (range.isFullSelected) {
100
104
  this.renderCtx.overlaysContext.fillRect(overlayRect.x, paraLinePos.y, overlayRect.width, paraLinePos.height, this.viewOptions.selectionOverlaysColor);
101
- }
102
- else {
105
+ } else {
103
106
  if (element instanceof TextGroupElement && range.endOffset > range.startOffset) {
104
- const { startX, endX } = ElementUtil.getTextRenderHorX(renderObject, range.startOffset, range.endOffset);
107
+ const { startX, endX } = ElementUtil.getTextRenderHorX(<TextGroupRenderObject>renderObject, range.startOffset, range.endOffset);
105
108
  overlayRect.width = endX - startX;
106
109
  overlayRect.x += startX;
107
110
  this.renderCtx.overlaysContext.fillRect(overlayRect.x, paraLinePos.y, overlayRect.width, paraLinePos.height, this.viewOptions.selectionOverlaysColor);
108
111
  }
109
112
  }
110
- }
111
- else if (range.isFullSelected && element.type === 'tbc') {
113
+ } else if (range.isFullSelected && element.type === 'tbc') {
112
114
  this.renderCtx.overlaysContext.fillRect(currPosition.x, currPosition.y, renderObject.rect.width, renderObject.rect.height, this.viewOptions.selectionOverlaysColor);
113
115
  }
114
116
  }
115
117
  if (inViewPort && this.viewOptions.showReviewWindow && this.measureCommContainer.selectedSet.has(element)) {
116
118
  if (renderObject instanceof LeafRenderObject || renderObject instanceof DataElementRenderObject) {
117
- const range = this.measureCommContainer.selectedSet.get(element);
119
+ const range = this.measureCommContainer.selectedSet.get(element) as SelectionContentRange;
118
120
  if (range.isFullSelected) {
119
121
  let commentRangePaintColor = '#ffd591';
120
122
  for (let i = 0; i < this.measureCommContainer.commentRangeStatus.length; i++) {
@@ -130,12 +132,14 @@ export class ElementPaint {
130
132
  this.renderCtx.overlaysContext.fillRect(overlayRect.x, paraLinePos.y, overlayRect.width, paraLinePos.height, commentRangePaintColor);
131
133
  }
132
134
  }
135
+
133
136
  }
134
137
  }
138
+
135
139
  /**
136
140
  * 触发页面绘制结束事件
137
141
  */
138
- invokedPagePaintCompleted(renderObject, parent) {
142
+ invokedPagePaintCompleted(renderObject: RenderObject, parent: { x: number, y: number }): void {
139
143
  const { x: rx, y: ry, width: rw, height: rh } = renderObject.rect;
140
144
  const currPosition = { x: rx + parent.x, y: ry + parent.y };
141
145
  renderObject.pagePaintCompleted(this.renderCtx, currPosition);
@@ -145,7 +149,8 @@ export class ElementPaint {
145
149
  }
146
150
  }
147
151
  }
148
- static drawPage(renderCtx, renderObject, parent) {
152
+
153
+ static drawPage(renderCtx: RenderContenxtType, renderObject: RenderObject, parent: { x: number, y: number }): void {
149
154
  const { x: rx, y: ry } = renderObject.rect;
150
155
  const currPosition = { x: rx + parent.x, y: ry + parent.y };
151
156
  if (renderObject instanceof BranchRenderObject) {
@@ -155,16 +160,17 @@ export class ElementPaint {
155
160
  this.drawPage(renderCtx, child, currPosition);
156
161
  }
157
162
  renderObject.endRender(renderCtx, currPosition);
158
- }
159
- else if (renderObject instanceof LeafRenderObject) {
163
+ } else if (renderObject instanceof LeafRenderObject) {
160
164
  renderObject.render(renderCtx, currPosition);
161
165
  }
162
166
  }
163
- getLeafElementPaintMap(element, shadowRenderIndex = 0) {
164
- return element.paintRenders[shadowRenderIndex];
167
+
168
+
169
+ getLeafElementPaintMap(element: LeafElement, shadowRenderIndex = 0): LeafRenderObject {
170
+ return element.paintRenders[shadowRenderIndex] as LeafRenderObject;
165
171
  }
166
- getShadowRenderIndex(element, render) {
172
+
173
+ getShadowRenderIndex(element: LeafElement, render: LeafRenderObject): number {
167
174
  return element.paintRenders.indexOf(render);
168
175
  }
169
176
  }
170
- //# sourceMappingURL=element-paint.js.map