@hailin-zheng/editor-core 1.0.5 → 1.0.6

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 (238) hide show
  1. package/lib/doc-ruler.d.ts +51 -0
  2. package/{src/med_editor/doc-ruler.ts → lib/doc-ruler.js} +73 -100
  3. package/lib/doc-ruler.js.map +1 -0
  4. package/lib/framework/common-util.d.ts +63 -0
  5. package/lib/framework/common-util.js +178 -0
  6. package/lib/framework/common-util.js.map +1 -0
  7. package/lib/framework/document-change.d.ts +265 -0
  8. package/{src/med_editor/framework/document-change.ts → lib/framework/document-change.js} +257 -307
  9. package/lib/framework/document-change.js.map +1 -0
  10. package/lib/framework/document-combine.d.ts +24 -0
  11. package/{src/med_editor/framework/document-combine.ts → lib/framework/document-combine.js} +11 -15
  12. package/lib/framework/document-combine.js.map +1 -0
  13. package/lib/framework/document-comment.d.ts +46 -0
  14. package/{src/med_editor/framework/document-comment.ts → lib/framework/document-comment.js} +37 -57
  15. package/lib/framework/document-comment.js.map +1 -0
  16. package/lib/framework/document-context.d.ts +149 -0
  17. package/{src/med_editor/framework/document-context.ts → lib/framework/document-context.js} +101 -181
  18. package/lib/framework/document-context.js.map +1 -0
  19. package/lib/framework/document-eval-func.d.ts +18 -0
  20. package/{src/med_editor/framework/document-eval-func.ts → lib/framework/document-eval-func.js} +11 -16
  21. package/lib/framework/document-eval-func.js.map +1 -0
  22. package/lib/framework/document-event.d.ts +213 -0
  23. package/{src/med_editor/framework/document-event.ts → lib/framework/document-event.js} +216 -244
  24. package/lib/framework/document-event.js.map +1 -0
  25. package/lib/framework/document-history.d.ts +26 -0
  26. package/{src/med_editor/framework/document-history.ts → lib/framework/document-history.js} +14 -25
  27. package/lib/framework/document-history.js.map +1 -0
  28. package/lib/framework/document-images-loader.d.ts +16 -0
  29. package/{src/med_editor/framework/document-images-loader.ts → lib/framework/document-images-loader.js} +17 -25
  30. package/lib/framework/document-images-loader.js.map +1 -0
  31. package/lib/framework/document-input-cursor.d.ts +78 -0
  32. package/{src/med_editor/framework/document-input-cursor.ts → lib/framework/document-input-cursor.js} +71 -76
  33. package/lib/framework/document-input-cursor.js.map +1 -0
  34. package/lib/framework/document-paint.d.ts +34 -0
  35. package/{src/med_editor/framework/document-paint.ts → lib/framework/document-paint.js} +28 -35
  36. package/lib/framework/document-paint.js.map +1 -0
  37. package/lib/framework/document-print-offscreen.d.ts +38 -0
  38. package/{src/med_editor/framework/document-print-offscreen.ts → lib/framework/document-print-offscreen.js} +19 -25
  39. package/lib/framework/document-print-offscreen.js.map +1 -0
  40. package/lib/framework/document-print.d.ts +60 -0
  41. package/{src/med_editor/framework/document-print.ts → lib/framework/document-print.js} +41 -57
  42. package/lib/framework/document-print.js.map +1 -0
  43. package/lib/framework/document-segmenter.d.ts +2 -0
  44. package/lib/framework/document-segmenter.js +106 -0
  45. package/lib/framework/document-segmenter.js.map +1 -0
  46. package/lib/framework/document-selection.d.ts +89 -0
  47. package/{src/med_editor/framework/document-selection.ts → lib/framework/document-selection.js} +84 -117
  48. package/lib/framework/document-selection.js.map +1 -0
  49. package/lib/framework/document-template.d.ts +4 -0
  50. package/{src/med_editor/framework/document-template.ts → lib/framework/document-template.js} +3 -3
  51. package/lib/framework/document-template.js.map +1 -0
  52. package/lib/framework/document-textline-mode.d.ts +7 -0
  53. package/lib/framework/document-textline-mode.js +30 -0
  54. package/lib/framework/document-textline-mode.js.map +1 -0
  55. package/lib/framework/element-define.d.ts +319 -0
  56. package/{src/med_editor/framework/element-define.ts → lib/framework/element-define.js} +206 -301
  57. package/lib/framework/element-define.js.map +1 -0
  58. package/lib/framework/element-event-define.d.ts +99 -0
  59. package/lib/framework/element-event-define.js +108 -0
  60. package/lib/framework/element-event-define.js.map +1 -0
  61. package/lib/framework/element-measure.d.ts +97 -0
  62. package/{src/med_editor/framework/element-measure.ts → lib/framework/element-measure.js} +121 -143
  63. package/lib/framework/element-measure.js.map +1 -0
  64. package/lib/framework/element-paint.d.ts +42 -0
  65. package/{src/med_editor/framework/element-paint.ts → lib/framework/element-paint.js} +37 -43
  66. package/lib/framework/element-paint.js.map +1 -0
  67. package/lib/framework/element-props.d.ts +301 -0
  68. package/{src/med_editor/framework/element-props.ts → lib/framework/element-props.js} +202 -331
  69. package/lib/framework/element-props.js.map +1 -0
  70. package/lib/framework/element-reader.d.ts +19 -0
  71. package/{src/med_editor/framework/element-reader.ts → lib/framework/element-reader.js} +30 -38
  72. package/lib/framework/element-reader.js.map +1 -0
  73. package/lib/framework/element-render-cut.d.ts +55 -0
  74. package/{src/med_editor/framework/element-render-cut.ts → lib/framework/element-render-cut.js} +106 -113
  75. package/lib/framework/element-render-cut.js.map +1 -0
  76. package/lib/framework/element-serialize.d.ts +30 -0
  77. package/{src/med_editor/framework/element-serialize.ts → lib/framework/element-serialize.js} +25 -40
  78. package/lib/framework/element-serialize.js.map +1 -0
  79. package/lib/framework/element-util.d.ts +369 -0
  80. package/{src/med_editor/framework/element-util.ts → lib/framework/element-util.js} +216 -318
  81. package/lib/framework/element-util.js.map +1 -0
  82. package/lib/framework/impl/checkbox/checkbox-impl.d.ts +24 -0
  83. package/{src/med_editor/framework/impl/checkbox/checkbox-impl.ts → lib/framework/impl/checkbox/checkbox-impl.js} +18 -25
  84. package/lib/framework/impl/checkbox/checkbox-impl.js.map +1 -0
  85. package/lib/framework/impl/comments/comment-content-impl.d.ts +40 -0
  86. package/{src/med_editor/framework/impl/comments/comment-content-impl.ts → lib/framework/impl/comments/comment-content-impl.js} +31 -45
  87. package/lib/framework/impl/comments/comment-content-impl.js.map +1 -0
  88. package/lib/framework/impl/comments/comment-element-impl.d.ts +21 -0
  89. package/{src/med_editor/framework/impl/comments/comment-element-impl.ts → lib/framework/impl/comments/comment-element-impl.js} +18 -21
  90. package/lib/framework/impl/comments/comment-element-impl.js.map +1 -0
  91. package/lib/framework/impl/comments/comments-container-impl.d.ts +22 -0
  92. package/{src/med_editor/framework/impl/comments/comments-container-impl.ts → lib/framework/impl/comments/comments-container-impl.js} +15 -21
  93. package/lib/framework/impl/comments/comments-container-impl.js.map +1 -0
  94. package/lib/framework/impl/comments/comments-util.d.ts +12 -0
  95. package/{src/med_editor/framework/impl/comments/comments-util.ts → lib/framework/impl/comments/comments-util.js} +17 -34
  96. package/lib/framework/impl/comments/comments-util.js.map +1 -0
  97. package/lib/framework/impl/comments/validate-msg-impl.d.ts +21 -0
  98. package/{src/med_editor/framework/impl/comments/validate-msg-impl.ts → lib/framework/impl/comments/validate-msg-impl.js} +15 -26
  99. package/lib/framework/impl/comments/validate-msg-impl.js.map +1 -0
  100. package/lib/framework/impl/data-element/data-decorate-impl.d.ts +30 -0
  101. package/{src/med_editor/framework/impl/data-element/data-decorate-impl.ts → lib/framework/impl/data-element/data-decorate-impl.js} +21 -25
  102. package/lib/framework/impl/data-element/data-decorate-impl.js.map +1 -0
  103. package/lib/framework/impl/data-element/data-element-barcode.d.ts +31 -0
  104. package/{src/med_editor/framework/impl/data-element/data-element-barcode.ts → lib/framework/impl/data-element/data-element-barcode.js} +27 -39
  105. package/lib/framework/impl/data-element/data-element-barcode.js.map +1 -0
  106. package/lib/framework/impl/data-element/data-element-base-impl.d.ts +68 -0
  107. package/{src/med_editor/framework/impl/data-element/data-element-base-impl.ts → lib/framework/impl/data-element/data-element-base-impl.js} +44 -73
  108. package/lib/framework/impl/data-element/data-element-base-impl.js.map +1 -0
  109. package/lib/framework/impl/data-element/data-element-check-impl.d.ts +35 -0
  110. package/{src/med_editor/framework/impl/data-element/data-element-check-impl.ts → lib/framework/impl/data-element/data-element-check-impl.js} +33 -46
  111. package/lib/framework/impl/data-element/data-element-check-impl.js.map +1 -0
  112. package/lib/framework/impl/data-element/data-element-date-impl.d.ts +23 -0
  113. package/{src/med_editor/framework/impl/data-element/data-element-date-impl.ts → lib/framework/impl/data-element/data-element-date-impl.js} +22 -39
  114. package/lib/framework/impl/data-element/data-element-date-impl.js.map +1 -0
  115. package/lib/framework/impl/data-element/data-element-group-impl.d.ts +23 -0
  116. package/{src/med_editor/framework/impl/data-element/data-element-group-impl.ts → lib/framework/impl/data-element/data-element-group-impl.js} +29 -49
  117. package/lib/framework/impl/data-element/data-element-group-impl.js.map +1 -0
  118. package/lib/framework/impl/data-element/data-element-image-impl.d.ts +30 -0
  119. package/{src/med_editor/framework/impl/data-element/data-element-image-impl.ts → lib/framework/impl/data-element/data-element-image-impl.js} +26 -36
  120. package/lib/framework/impl/data-element/data-element-image-impl.js.map +1 -0
  121. package/lib/framework/impl/data-element/data-element-list-impl.d.ts +22 -0
  122. package/{src/med_editor/framework/impl/data-element/data-element-list-impl.ts → lib/framework/impl/data-element/data-element-list-impl.js} +30 -41
  123. package/lib/framework/impl/data-element/data-element-list-impl.js.map +1 -0
  124. package/lib/framework/impl/data-element/data-element-text-impl.d.ts +23 -0
  125. package/{src/med_editor/framework/impl/data-element/data-element-text-impl.ts → lib/framework/impl/data-element/data-element-text-impl.js} +20 -34
  126. package/lib/framework/impl/data-element/data-element-text-impl.js.map +1 -0
  127. package/lib/framework/impl/decorate/fill-null-space-imple.d.ts +21 -0
  128. package/{src/med_editor/framework/impl/decorate/fill-null-space-imple.ts → lib/framework/impl/decorate/fill-null-space-imple.js} +10 -15
  129. package/lib/framework/impl/decorate/fill-null-space-imple.js.map +1 -0
  130. package/lib/framework/impl/document/doc-body-impl.d.ts +27 -0
  131. package/{src/med_editor/framework/impl/document/doc-body-impl.ts → lib/framework/impl/document/doc-body-impl.js} +15 -31
  132. package/lib/framework/impl/document/doc-body-impl.js.map +1 -0
  133. package/lib/framework/impl/document/doc-body-part-impl.d.ts +30 -0
  134. package/{src/med_editor/framework/impl/document/doc-body-part-impl.ts → lib/framework/impl/document/doc-body-part-impl.js} +16 -26
  135. package/lib/framework/impl/document/doc-body-part-impl.js.map +1 -0
  136. package/lib/framework/impl/document/doc-container-impl.d.ts +16 -0
  137. package/lib/framework/impl/document/doc-container-impl.js +21 -0
  138. package/lib/framework/impl/document/doc-container-impl.js.map +1 -0
  139. package/lib/framework/impl/document/doc-footer-impl.d.ts +26 -0
  140. package/{src/med_editor/framework/impl/document/doc-footer-impl.ts → lib/framework/impl/document/doc-footer-impl.js} +18 -29
  141. package/lib/framework/impl/document/doc-footer-impl.js.map +1 -0
  142. package/lib/framework/impl/document/doc-header-impl.d.ts +26 -0
  143. package/{src/med_editor/framework/impl/document/doc-header-impl.ts → lib/framework/impl/document/doc-header-impl.js} +16 -33
  144. package/lib/framework/impl/document/doc-header-impl.js.map +1 -0
  145. package/lib/framework/impl/document/doc-impl.d.ts +61 -0
  146. package/{src/med_editor/framework/impl/document/doc-impl.ts → lib/framework/impl/document/doc-impl.js} +42 -59
  147. package/lib/framework/impl/document/doc-impl.js.map +1 -0
  148. package/lib/framework/impl/media-formula/menstrual-history.d.ts +35 -0
  149. package/{src/med_editor/framework/impl/media-formula/menstrual-history.ts → lib/framework/impl/media-formula/menstrual-history.js} +35 -57
  150. package/lib/framework/impl/media-formula/menstrual-history.js.map +1 -0
  151. package/lib/framework/impl/paragraph/p-impl.d.ts +45 -0
  152. package/{src/med_editor/framework/impl/paragraph/p-impl.ts → lib/framework/impl/paragraph/p-impl.js} +28 -62
  153. package/lib/framework/impl/paragraph/p-impl.js.map +1 -0
  154. package/lib/framework/impl/picture/image-impl.d.ts +31 -0
  155. package/{src/med_editor/framework/impl/picture/image-impl.ts → lib/framework/impl/picture/image-impl.js} +23 -35
  156. package/lib/framework/impl/picture/image-impl.js.map +1 -0
  157. package/lib/framework/impl/radio/radio-impl.d.ts +22 -0
  158. package/{src/med_editor/framework/impl/radio/radio-impl.ts → lib/framework/impl/radio/radio-impl.js} +19 -26
  159. package/lib/framework/impl/radio/radio-impl.js.map +1 -0
  160. package/lib/framework/impl/symbol/br-symbol-impl.d.ts +22 -0
  161. package/{src/med_editor/framework/impl/symbol/br-symbol-impl.ts → lib/framework/impl/symbol/br-symbol-impl.js} +14 -20
  162. package/lib/framework/impl/symbol/br-symbol-impl.js.map +1 -0
  163. package/lib/framework/impl/symbol/p-symbol-impl.d.ts +19 -0
  164. package/{src/med_editor/framework/impl/symbol/p-symbol-impl.ts → lib/framework/impl/symbol/p-symbol-impl.js} +11 -14
  165. package/lib/framework/impl/symbol/p-symbol-impl.js.map +1 -0
  166. package/lib/framework/impl/table/table-cell-impl.d.ts +37 -0
  167. package/{src/med_editor/framework/impl/table/table-cell-impl.ts → lib/framework/impl/table/table-cell-impl.js} +28 -39
  168. package/lib/framework/impl/table/table-cell-impl.js.map +1 -0
  169. package/lib/framework/impl/table/table-impl.d.ts +55 -0
  170. package/{src/med_editor/framework/impl/table/table-impl.ts → lib/framework/impl/table/table-impl.js} +82 -120
  171. package/lib/framework/impl/table/table-impl.js.map +1 -0
  172. package/lib/framework/impl/table/table-row-impl.d.ts +26 -0
  173. package/{src/med_editor/framework/impl/table/table-row-impl.ts → lib/framework/impl/table/table-row-impl.js} +16 -24
  174. package/lib/framework/impl/table/table-row-impl.js.map +1 -0
  175. package/lib/framework/impl/table/table-split-cell-patch.d.ts +20 -0
  176. package/{src/med_editor/framework/impl/table/table-split-cell-patch.ts → lib/framework/impl/table/table-split-cell-patch.js} +22 -31
  177. package/lib/framework/impl/table/table-split-cell-patch.js.map +1 -0
  178. package/lib/framework/impl/table/table-split-cell.d.ts +90 -0
  179. package/{src/med_editor/framework/impl/table/table-split-cell.ts → lib/framework/impl/table/table-split-cell.js} +94 -105
  180. package/lib/framework/impl/table/table-split-cell.js.map +1 -0
  181. package/lib/framework/impl/table/table-util.d.ts +150 -0
  182. package/{src/med_editor/framework/impl/table/table-util.ts → lib/framework/impl/table/table-util.js} +157 -195
  183. package/lib/framework/impl/table/table-util.js.map +1 -0
  184. package/lib/framework/impl/text/text-impl.d.ts +32 -0
  185. package/{src/med_editor/framework/impl/text/text-impl.ts → lib/framework/impl/text/text-impl.js} +32 -47
  186. package/lib/framework/impl/text/text-impl.js.map +1 -0
  187. package/lib/framework/impl/text/track-run-impl.d.ts +27 -0
  188. package/{src/med_editor/framework/impl/text/track-run-impl.ts → lib/framework/impl/text/track-run-impl.js} +28 -51
  189. package/lib/framework/impl/text/track-run-impl.js.map +1 -0
  190. package/lib/framework/notify.d.ts +13 -0
  191. package/{src/med_editor/framework/notify.ts → lib/framework/notify.js} +36 -50
  192. package/lib/framework/notify.js.map +1 -0
  193. package/lib/framework/range-util.d.ts +40 -0
  194. package/{src/med_editor/framework/range-util.ts → lib/framework/range-util.js} +71 -80
  195. package/lib/framework/range-util.js.map +1 -0
  196. package/lib/framework/render-context.d.ts +91 -0
  197. package/{src/med_editor/framework/render-context.ts → lib/framework/render-context.js} +64 -111
  198. package/lib/framework/render-context.js.map +1 -0
  199. package/lib/framework/render-define.d.ts +109 -0
  200. package/{src/med_editor/framework/render-define.ts → lib/framework/render-define.js} +61 -90
  201. package/lib/framework/render-define.js.map +1 -0
  202. package/lib/framework/selection-overlays.d.ts +30 -0
  203. package/{src/med_editor/framework/selection-overlays.ts → lib/framework/selection-overlays.js} +16 -26
  204. package/lib/framework/selection-overlays.js.map +1 -0
  205. package/lib/texteditor.d.ts +318 -0
  206. package/{src/med_editor/texteditor.ts → lib/texteditor.js} +189 -287
  207. package/lib/texteditor.js.map +1 -0
  208. package/lib/util/subject.d.ts +34 -0
  209. package/lib/util/subject.js +88 -0
  210. package/lib/util/subject.js.map +1 -0
  211. package/lib/util/table-bind.d.ts +5 -0
  212. package/{src/med_editor/util/table-bind.ts → lib/util/table-bind.js} +2 -2
  213. package/lib/util/table-bind.js.map +1 -0
  214. package/package.json +6 -2
  215. package/src/med_editor/framework/common-util.ts +0 -200
  216. package/src/med_editor/framework/document-segmenter.ts +0 -211
  217. package/src/med_editor/framework/document-textline-mode.ts +0 -34
  218. package/src/med_editor/framework/element-event-define.ts +0 -142
  219. package/src/med_editor/framework/impl/document/doc-container-impl.ts +0 -24
  220. package/src/med_editor/util/subject.ts +0 -118
  221. package/src/med_editor//345/205/245/351/231/242/350/256/260/345/275/225.json +0 -3573
  222. package/src/med_editor//345/205/245/351/231/242/350/256/260/345/275/225/346/265/213/350/257/225.json +0 -3573
  223. package/src/med_editor//345/205/245/351/231/242/350/256/260/345/275/225/346/265/213/350/257/225bug.json +0 -315
  224. 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 +0 -122
  225. 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 +0 -3599
  226. 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 +0 -24586
  227. package/src/med_editor//345/220/210/345/271/266/347/227/205/347/250/213/345/275/225.json +0 -2874
  228. package/src/med_editor//346/211/213/346/234/257/350/256/260/345/275/225.json +0 -341
  229. package/src/med_editor//346/231/256/351/200/232doc/347/261/273/346/226/207/346/241/243.json +0 -2201
  230. package/src/med_editor//346/243/200/351/252/214/347/224/263/350/257/267/345/215/225.json +0 -1069
  231. 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 +0 -125
  232. 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 +0 -86
  233. 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 +0 -115
  234. 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 +0 -108
  235. 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 +0 -272
  236. package/src/med_editor//351/225/277/346/234/237/345/214/273/345/230/261/345/215/225.json +0 -1070
  237. package/tsconfig.json +0 -25
  238. package/webpack.config.js +0 -46
@@ -1,34 +1,26 @@
1
- import { BlockContainerElement, DocMode, Element, ElementFactory, MarginProps, PaddingProps, readElementProps, Rect, SerializeProps, ViewOptions } from "@/med_editor/framework/element-define";
1
+ import { BlockContainerElement, DocMode, ElementFactory, PaddingProps } from "@/med_editor/framework/element-define";
2
2
  import { DocumentProps, TextProps } from '../../element-props';
3
- import { RenderContenxtType } from "@/med_editor/framework/render-context";
4
- import { DocumentBodyElement } from "./doc-body-impl";
5
- import { DocumentHeaderElement } from "./doc-header-impl";
6
- import { BlockContainerRenderObject, RenderObject } from "@/med_editor/framework/render-define";
3
+ import { BlockContainerRenderObject } from "@/med_editor/framework/render-define";
7
4
  import { ElementUtil } from "@/med_editor/framework/element-util";
8
- import { DocumentFooterElement } from "./doc-footer-impl";
9
- import { ContextMenuElementEvent } from "@/med_editor/framework/element-event-define";
10
5
  import { documentPrint } from "@/med_editor/framework/document-print";
11
- import { CommsContainerElement } from "../comments/comments-container-impl";
12
6
  import { CommonUtil } from "@/med_editor/framework/common-util";
13
- import { SelectionState } from "../../document-selection";
14
-
15
- export class DocumentElement extends BlockContainerElement<DocumentProps> {
7
+ export class DocumentElement extends BlockContainerElement {
16
8
  //props: DocumentProps;
17
- viewOptions!: ViewOptions;
18
- bodyElement!: DocumentBodyElement;
19
- headerElement!: DocumentHeaderElement;
20
- footerElement!: DocumentFooterElement;
21
- commentsContainerElement!: CommsContainerElement;
22
- headerEditState: boolean = false;
9
+ viewOptions;
10
+ bodyElement;
11
+ headerElement;
12
+ footerElement;
13
+ commentsContainerElement;
14
+ headerEditState = false;
23
15
  constructor() {
24
16
  super('doc');
25
17
  this.props = new DocumentProps();
26
- this.addEvent<ContextMenuElementEvent>('ElementContextMenu', (cevt) => {
27
- cevt.menus.push({ icon: 'Print', caption: '打印所有页', eventObj: { onClick: (evt) => { documentPrint.print(cevt.selectionState, this.viewOptions, cevt.ctx) } } });
28
- cevt.menus.push({ icon: 'Print', caption: '打印当前页', eventObj: { onClick: (evt) => { documentPrint.printCurrPage(cevt.selectionState, this.viewOptions, cevt.ctx) } } });
18
+ this.addEvent('ElementContextMenu', (cevt) => {
19
+ cevt.menus.push({ icon: 'Print', caption: '打印所有页', eventObj: { onClick: (evt) => { documentPrint.print(cevt.selectionState, this.viewOptions, cevt.ctx); } } });
20
+ cevt.menus.push({ icon: 'Print', caption: '打印当前页', eventObj: { onClick: (evt) => { documentPrint.printCurrPage(cevt.selectionState, this.viewOptions, cevt.ctx); } } });
29
21
  }, true);
30
22
  }
31
- createRenderObject(options: ViewOptions): DocumentRenderObject {
23
+ createRenderObject(options) {
32
24
  const { width: docPixelsWidth, height: docPixelsHeight } = this.viewOptions.docPageSettings;
33
25
  const docRenderObject = new DocumentRenderObject(this);
34
26
  docRenderObject.rect.width = docPixelsWidth;
@@ -50,31 +42,28 @@ export class DocumentElement extends BlockContainerElement<DocumentProps> {
50
42
  docRenderObject.margin.top = options.docSpace;
51
43
  return docRenderObject;
52
44
  }
53
-
54
- serialize(): SerializeProps {
45
+ serialize() {
55
46
  return {
56
47
  type: 'doc',
57
48
  props: {
58
49
  ...this.props.getSerializeProps()
59
50
  }
60
- }
51
+ };
61
52
  }
62
-
63
- clone(): DocumentElement {
53
+ clone() {
64
54
  const clone = new DocumentElement();
65
- this.props.clone(clone.props)
55
+ this.props.clone(clone.props);
66
56
  for (let i = 0; i < this.length; i++) {
67
57
  clone.addChild(this.getChild(i).clone(true));
68
58
  }
69
59
  return clone;
70
60
  }
71
-
72
61
  /**
73
62
  * 更新页边距
74
- * @param marginProps
63
+ * @param marginProps
75
64
  */
76
- updateMargin(marginProps: Partial<MarginProps>, unit: 'mm' | 'cm' = 'cm'): void {
77
- const { top, bottom, left, right } = marginProps as MarginProps;
65
+ updateMargin(marginProps, unit = 'cm') {
66
+ const { top, bottom, left, right } = marginProps;
78
67
  const paddig = this.props.padding;
79
68
  const ratio = unit === 'cm' ? 10 : 1;
80
69
  paddig.top = top * ratio;
@@ -82,11 +71,10 @@ export class DocumentElement extends BlockContainerElement<DocumentProps> {
82
71
  paddig.left = left * ratio;
83
72
  paddig.right = right * ratio;
84
73
  }
85
-
86
74
  /**
87
75
  * 切换开启页眉页脚编辑功能
88
76
  */
89
- switchPageHeaderEditor(ss: SelectionState, ele: Element | null): void {
77
+ switchPageHeaderEditor(ss, ele) {
90
78
  if (this.viewOptions.docMode !== DocMode.Design) {
91
79
  return;
92
80
  }
@@ -95,7 +83,8 @@ export class DocumentElement extends BlockContainerElement<DocumentProps> {
95
83
  this.footerElement.disableClick = false;
96
84
  this.bodyElement.disableClick = true;
97
85
  this.headerEditState = true;
98
- } else if (this.headerEditState && (!ele || ele === this.bodyElement)) {
86
+ }
87
+ else if (this.headerEditState && (!ele || ele === this.bodyElement)) {
99
88
  this.headerElement.disableClick = true;
100
89
  this.footerElement.disableClick = true;
101
90
  this.bodyElement.disableClick = false;
@@ -105,22 +94,20 @@ export class DocumentElement extends BlockContainerElement<DocumentProps> {
105
94
  this.refreshView();
106
95
  }
107
96
  }
108
-
109
-
110
97
  export class DocumentRenderObject extends BlockContainerRenderObject {
111
- constructor(ele: Element) {
98
+ constructor(ele) {
112
99
  super(ele);
113
100
  }
114
- headerLine!: number;
115
- footerLine!: number;
116
- beginRender(ctx: RenderContenxtType, position: { x: number; y: number; }): void {
101
+ headerLine;
102
+ footerLine;
103
+ beginRender(ctx, position) {
117
104
  const { width: docWidth, height: docHeight } = ctx.viewOptions.docPageSettings;
118
105
  ctx.overlaysContext.fillRect(position.x, position.y, docWidth, this.rect.height, 'white', 5, 'black');
119
106
  // if (ctx.drawMode === 'view') {
120
107
  // ctx.contentContext.strokeRect(position.x, position.y, docWidth, this.rect.height, 'black', 0.5);
121
108
  // }
122
109
  }
123
- endRender(ctx: RenderContenxtType, position: { x: number; y: number; }): void {
110
+ endRender(ctx, position) {
124
111
  const textP = new TextProps();
125
112
  textP.color = "rgb(0,0,0)";
126
113
  textP.fontName = '楷体';
@@ -144,19 +131,18 @@ export class DocumentRenderObject extends BlockContainerRenderObject {
144
131
  ctx.overlaysContext.strokeLines([{ x: paddingPos.x + lineWidth, y: paddingPos.y }, paddingPos, { x: paddingPos.x, y: paddingPos.y + lineWidth }], drawLineWidth);
145
132
  this.drawWatermark(ctx, position);
146
133
  }
147
-
148
134
  /**
149
135
  * 绘制水印
150
- * @param ctx
151
- * @param position
136
+ * @param ctx
137
+ * @param position
152
138
  */
153
- private drawWatermark(ctx: RenderContenxtType, position: { x: number; y: number; }): void {
139
+ drawWatermark(ctx, position) {
154
140
  if (ctx.viewOptions.watermark) {
155
141
  const watermark = ctx.viewOptions.watermark;
156
142
  ctx.contentContext.ctx.save();
157
143
  ctx.contentContext.ctx.translate(position.x, position.y);
158
144
  const { width, height } = this.rect;
159
- const degrees = Math.atan(height / width) * 180 / Math.PI
145
+ const degrees = Math.atan(height / width) * 180 / Math.PI;
160
146
  ctx.contentContext.ctx.rotate(degrees * Math.PI / 180);
161
147
  ctx.contentContext.ctx.globalAlpha = 0.3;
162
148
  const d = Math.sqrt(width * width + height * height);
@@ -164,18 +150,17 @@ export class DocumentRenderObject extends BlockContainerRenderObject {
164
150
  textProps.color = "rgb(0,0,0)";
165
151
  textProps.fontName = '楷体';
166
152
  textProps.fontSize = 60;
167
- const textWidth = ctx.contentContext.measureText(watermark, textProps).width
153
+ const textWidth = ctx.contentContext.measureText(watermark, textProps).width;
168
154
  const x = d / 2 - textWidth / 2;
169
- ctx.contentContext.ctx.font = textProps.getFont()
155
+ ctx.contentContext.ctx.font = textProps.getFont();
170
156
  ctx.contentContext.ctx.fillText(watermark, x, 30);
171
157
  ctx.contentContext.ctx.restore();
172
158
  }
173
159
  }
174
-
175
160
  /**
176
161
  * 绘制文档页码
177
162
  */
178
- drawDocPageNum(ctx: RenderContenxtType, position: { x: number; y: number; }): void {
163
+ drawDocPageNum(ctx, position) {
179
164
  const pageWidth = ctx.viewOptions.docPageSettings.width;
180
165
  const pageIndex = this.getIndex() + 1;
181
166
  const str = CommonUtil.parseText(ctx.viewOptions.pageNumFormat, { index: pageIndex, count: this.parent.length });
@@ -185,12 +170,11 @@ export class DocumentRenderObject extends BlockContainerRenderObject {
185
170
  textProps.fontSize = 14;
186
171
  textProps.fontStyle = 'italic';
187
172
  const size = ctx.contentContext.measureText(str, textProps);
188
- const alignCenterX = position.x + Math.ceil(pageWidth / 2) - Math.ceil(size.width / 2)
173
+ const alignCenterX = position.x + Math.ceil(pageWidth / 2) - Math.ceil(size.width / 2);
189
174
  const paintY = position.y + this.rect.height - size.height - 5;
190
175
  ctx.contentContext.drawText(str, textProps, alignCenterX, paintY, size.width, size.height);
191
176
  }
192
-
193
- clone(): RenderObject {
177
+ clone() {
194
178
  const cloneRender = new DocumentRenderObject(this.element);
195
179
  cloneRender.rect = ElementUtil.cloneRect(this.rect);
196
180
  cloneRender.headerLine = this.headerLine;
@@ -201,14 +185,13 @@ export class DocumentRenderObject extends BlockContainerRenderObject {
201
185
  return cloneRender;
202
186
  }
203
187
  }
204
-
205
- export class DocumentFactory extends ElementFactory<DocumentProps> {
206
- match(type: string): boolean {
188
+ export class DocumentFactory extends ElementFactory {
189
+ match(type) {
207
190
  return type === 'doc';
208
191
  }
209
- createElement(data: readElementProps<DocumentProps>, renderCtx: RenderContenxtType): Element {
192
+ createElement(data, renderCtx) {
210
193
  const documentElement = new DocumentElement();
211
- const props = data.props as DocumentProps;
194
+ const props = data.props;
212
195
  const docProps = documentElement.props;
213
196
  docProps.width = props.width;
214
197
  docProps.height = props.height;
@@ -222,5 +205,5 @@ export class DocumentFactory extends ElementFactory<DocumentProps> {
222
205
  docProps.orient = props.orient ?? 'portrait';
223
206
  return documentElement;
224
207
  }
225
-
226
208
  }
209
+ //# sourceMappingURL=doc-impl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doc-impl.js","sourceRoot":"","sources":["../../../../src/med_editor/framework/impl/document/doc-impl.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import { ViewOptions, Element, SerializeProps, ElementFactory, readElementProps } from "../../element-define";
2
+ import { DataEleMHProps } from "../../element-props";
3
+ import { RenderContenxtType } from "../../render-context";
4
+ import { LeafRenderObject, RenderObject } from "../../render-define";
5
+ import { DataElementLeaf } from "../data-element/data-element-base-impl";
6
+ /**
7
+ * 月经史
8
+ */
9
+ export declare class DataElementMH extends DataElementLeaf<DataEleMHProps> {
10
+ constructor();
11
+ setValue(val: DataEleMHProps | string | null): void;
12
+ getValue(): string;
13
+ createRenderObject(options: ViewOptions, renderCtx: RenderContenxtType): RenderObject<Element> | null;
14
+ serialize(viewOptions: ViewOptions): SerializeProps | null;
15
+ clone(data: boolean): Element;
16
+ getCurrentLayoutItem(): MHLayoutType;
17
+ }
18
+ declare type MHLayoutType = {
19
+ [key in 'left' | 'top' | 'right' | 'bottom']: {
20
+ tip: '初潮年龄' | '行经期天数' | '末次月经时间' | '月经周期天数' | '闭经年龄';
21
+ prop: 'age' | 'days' | 'cycles' | 'lastDate' | 'closeAge';
22
+ };
23
+ };
24
+ export declare class DataRenderMH extends LeafRenderObject<DataElementMH> {
25
+ render(ctx: RenderContenxtType, position: {
26
+ x: number;
27
+ y: number;
28
+ }): void;
29
+ clone(): RenderObject<Element>;
30
+ }
31
+ export declare class DataElementMHFactory extends ElementFactory<DataEleMHProps> {
32
+ match(type: string): boolean;
33
+ createElement(data: readElementProps<DataEleMHProps>, renderCtx: RenderContenxtType): Element;
34
+ }
35
+ export {};
@@ -1,22 +1,20 @@
1
1
  import { CommonUtil } from "@/med_editor/framework/common-util";
2
- import { ViewOptions, Element, SerializeProps, ElementFactory, readElementProps, Rect } from "../../element-define";
2
+ import { ElementFactory } from "../../element-define";
3
3
  import { DataEleMHProps, TextProps } from "../../element-props";
4
4
  import { ElementUtil } from "../../element-util";
5
- import { RenderContenxtType } from "../../render-context";
6
- import { LeafRenderObject, RenderObject } from "../../render-define";
5
+ import { LeafRenderObject } from "../../render-define";
7
6
  import { DataElementLeaf } from "../data-element/data-element-base-impl";
8
-
9
7
  /**
10
8
  * 月经史
11
9
  */
12
- export class DataElementMH extends DataElementLeaf<DataEleMHProps> {
10
+ export class DataElementMH extends DataElementLeaf {
13
11
  //props!: DataEleMHProps;
14
12
  constructor() {
15
- super('data-ele-mh')
13
+ super('data-ele-mh');
16
14
  this.props = new DataEleMHProps();
17
15
  //this.addPropValueChangedSub(this.props);
18
16
  }
19
- setValue(val: DataEleMHProps | string | null): void {
17
+ setValue(val) {
20
18
  if (typeof val === 'string' && val) {
21
19
  const items = val.split(';');
22
20
  if (items.length >= 4) {
@@ -26,7 +24,8 @@ export class DataElementMH extends DataElementLeaf<DataEleMHProps> {
26
24
  this.props[mhLayoutItem.bottom.prop] = items[2];
27
25
  this.props[mhLayoutItem.right.prop] = items[3];
28
26
  }
29
- } else if (typeof val === 'object') {
27
+ }
28
+ else if (typeof val === 'object') {
30
29
  this.props.age = val?.age ?? '';
31
30
  this.props.days = val?.days ?? '';
32
31
  this.props.cycles = val?.cycles ?? '';
@@ -34,13 +33,11 @@ export class DataElementMH extends DataElementLeaf<DataEleMHProps> {
34
33
  this.props.closeAge = val?.closeAge ?? '';
35
34
  }
36
35
  }
37
-
38
36
  getValue() {
39
37
  const layoutItem = getMHItem(this.props.kind);
40
38
  return `${this.props[layoutItem.left.prop]};${this.props[layoutItem.top.prop]};${this.props[layoutItem.bottom.prop]};${this.props[layoutItem.right.prop]}`;
41
39
  }
42
-
43
- createRenderObject(options: ViewOptions, renderCtx: RenderContenxtType): RenderObject<Element> | null {
40
+ createRenderObject(options, renderCtx) {
44
41
  const render = new DataRenderMH(this);
45
42
  const measure = renderMH(this, renderCtx, { x: 0, y: 0 }, false);
46
43
  if (measure) {
@@ -49,67 +46,52 @@ export class DataElementMH extends DataElementLeaf<DataEleMHProps> {
49
46
  }
50
47
  return render;
51
48
  }
52
- serialize(viewOptions: ViewOptions): SerializeProps | null {
49
+ serialize(viewOptions) {
53
50
  return {
54
51
  type: this.type,
55
52
  props: this.props.getSerializeProps(viewOptions)
56
- }
53
+ };
57
54
  }
58
- clone(data: boolean): Element {
55
+ clone(data) {
59
56
  const element = new DataElementMH();
60
57
  this.props.clone(element.props);
61
58
  return element;
62
59
  }
63
-
64
- getCurrentLayoutItem(): MHLayoutType {
60
+ getCurrentLayoutItem() {
65
61
  return getMHItem(this.props.kind);
66
62
  }
67
-
68
- }
69
-
70
- type MHLayoutType = {
71
- [key in 'left' | 'top' | 'right' | 'bottom']: {
72
- tip: '初潮年龄' | '行经期天数' | '末次月经时间' | '月经周期天数' | '闭经年龄',
73
- prop: 'age' | 'days' | 'cycles' | 'lastDate' | 'closeAge'
74
- }
75
63
  }
76
-
77
- const mhLayoutItems: Array<MHLayoutType> = [
64
+ const mhLayoutItems = [
78
65
  { left: { tip: '初潮年龄', prop: 'age' }, top: { tip: '行经期天数', prop: 'days' }, right: { tip: '末次月经时间', prop: 'lastDate' }, bottom: { tip: '月经周期天数', prop: 'cycles' } },
79
66
  { left: { tip: '初潮年龄', prop: 'age' }, top: { tip: '闭经年龄', prop: 'closeAge' }, right: { tip: '末次月经时间', prop: 'lastDate' }, bottom: { tip: '行经期天数', prop: 'days' } },
80
67
  { left: { tip: '闭经年龄', prop: 'closeAge' }, top: { tip: '行经期天数', prop: 'days' }, right: { tip: '末次月经时间', prop: 'lastDate' }, bottom: { tip: '月经周期天数', prop: 'cycles' } },
81
68
  { left: { tip: '初潮年龄', prop: 'age' }, top: { tip: '月经周期天数', prop: 'cycles' }, right: { tip: '末次月经时间', prop: 'lastDate' }, bottom: { tip: '行经期天数', prop: 'days' } },
82
69
  { left: { tip: '初潮年龄', prop: 'age' }, top: { tip: '闭经年龄', prop: 'closeAge' }, right: { tip: '末次月经时间', prop: 'lastDate' }, bottom: { tip: '月经周期天数', prop: 'cycles' } }
83
- ]
84
-
85
-
86
- function getMHItem(kind: string): MHLayoutType {
70
+ ];
71
+ function getMHItem(kind) {
87
72
  kind = kind ?? 'A';
88
73
  kind = kind.toUpperCase();
89
74
  let kindIndex = ['A', 'B', 'C', 'D', 'E'].indexOf(kind);
90
75
  kindIndex = kindIndex < 0 ? 0 : kindIndex;
91
76
  return mhLayoutItems[kindIndex];
92
77
  }
93
-
94
- export class DataRenderMH extends LeafRenderObject<DataElementMH> {
95
- render(ctx: RenderContenxtType, position: { x: number; y: number; }): void {
78
+ export class DataRenderMH extends LeafRenderObject {
79
+ render(ctx, position) {
96
80
  renderMH(this.element, ctx, position, true);
97
81
  }
98
-
99
- clone(): RenderObject<Element> {
82
+ clone() {
100
83
  const clone = new DataRenderMH(this.element);
101
84
  clone.rect = ElementUtil.cloneRect(this.rect);
102
85
  return clone;
103
86
  }
104
87
  }
105
-
106
- export class DataElementMHFactory extends ElementFactory<DataEleMHProps> {
107
- match(type: string): boolean {
108
- return type === 'data-ele-mh'
88
+ export class DataElementMHFactory extends ElementFactory {
89
+ match(type) {
90
+ return type === 'data-ele-mh';
109
91
  }
110
- createElement(data: readElementProps<DataEleMHProps>, renderCtx: RenderContenxtType): Element {
92
+ createElement(data, renderCtx) {
111
93
  const ele = new DataElementMH();
112
- ElementUtil.readEleBaseProps(ele.props, data.props as DataEleMHProps);
94
+ ElementUtil.readEleBaseProps(ele.props, data.props);
113
95
  ele.props.age = data.props?.age ?? '';
114
96
  ele.props.cycles = data.props?.cycles ?? '';
115
97
  ele.props.days = data.props?.days ?? '';
@@ -118,12 +100,10 @@ export class DataElementMHFactory extends ElementFactory<DataEleMHProps> {
118
100
  ele.props.kind = data.props?.kind ?? 'A';
119
101
  return ele;
120
102
  }
121
-
122
103
  }
123
-
124
- function renderMH(element: DataElementMH, ctx: RenderContenxtType, position: { x: number; y: number; }, isPaint: boolean): { width: number, height: number } | void {
104
+ function renderMH(element, ctx, position, isPaint) {
125
105
  let { x, y } = position;
126
- const defaultTextProps = new TextProps()
106
+ const defaultTextProps = new TextProps();
127
107
  const paddingVer = 2;
128
108
  const paddingHor = 5;
129
109
  defaultTextProps.fontSize = 12;
@@ -134,31 +114,30 @@ function renderMH(element: DataElementMH, ctx: RenderContenxtType, position: { x
134
114
  const top = CommonUtil.getEmptyValue(element.props[currentLayout.top.prop], currentLayout.top.tip);
135
115
  const bottom = CommonUtil.getEmptyValue(element.props[currentLayout.bottom.prop], currentLayout.bottom.tip);
136
116
  const right = CommonUtil.getEmptyValue(element.props[currentLayout.right.prop], currentLayout.right.tip);
137
- const leftRect = ctx.contentContext.measureText(left, defaultTextProps)
138
- const topRect = ctx.contentContext.measureText(top, defaultTextProps)
139
- const bottomRect = ctx.contentContext.measureText(bottom, defaultTextProps)
140
- const rightRect = ctx.contentContext.measureText(right, defaultTextProps)
117
+ const leftRect = ctx.contentContext.measureText(left, defaultTextProps);
118
+ const topRect = ctx.contentContext.measureText(top, defaultTextProps);
119
+ const bottomRect = ctx.contentContext.measureText(bottom, defaultTextProps);
120
+ const rightRect = ctx.contentContext.measureText(right, defaultTextProps);
141
121
  let height = topRect.height + bottomRect.height;
142
- const middleWidth = Math.max(topRect.width, bottomRect.width)
122
+ const middleWidth = Math.max(topRect.width, bottomRect.width);
143
123
  let width = leftRect.width + middleWidth + rightRect.width;
144
124
  if (!isPaint) {
145
- return { width: width + paddingHor * 2, height: height + paddingVer * 2 }
125
+ return { width: width + paddingHor * 2, height: height + paddingVer * 2 };
146
126
  }
147
127
  x += paddingHor;
148
128
  y += paddingVer;
149
129
  //年龄
150
- ctx.contentContext.drawText(left, defaultTextProps, x, y + (height - leftRect.height) / 2, leftRect.width, leftRect.height)
130
+ ctx.contentContext.drawText(left, defaultTextProps, x, y + (height - leftRect.height) / 2, leftRect.width, leftRect.height);
151
131
  x += leftRect.width;
152
132
  //天数
153
133
  ctx.contentContext.drawText(top, defaultTextProps, x + (middleWidth - topRect.width) / 2, y - 2, topRect.width, topRect.height);
154
134
  //分割线
155
- ctx.contentContext.drawLine(x, y + topRect.height, middleWidth)
135
+ ctx.contentContext.drawLine(x, y + topRect.height, middleWidth);
156
136
  //周期
157
137
  ctx.contentContext.drawText(bottom, defaultTextProps, x + (middleWidth - bottomRect.width) / 2, y + topRect.height + 2, bottomRect.width, bottomRect.height);
158
138
  //末次时间
159
139
  x += middleWidth;
160
- ctx.contentContext.drawText(right, defaultTextProps, x, y + (height - leftRect.height) / 2, rightRect.width, rightRect.height)
161
-
140
+ ctx.contentContext.drawText(right, defaultTextProps, x, y + (height - leftRect.height) / 2, rightRect.width, rightRect.height);
162
141
  if (ctx.drawMode === 'view') {
163
142
  let { x, y } = position;
164
143
  width = width + paddingHor * 2;
@@ -171,5 +150,4 @@ function renderMH(element: DataElementMH, ctx: RenderContenxtType, position: { x
171
150
  ctx.contentContext.strokeLines([{ x: x - lineWidth, y }, { x, y }, { x, y: y + height }, { x: x - lineWidth, y: y + height }], 1, paintColor);
172
151
  }
173
152
  }
174
-
175
-
153
+ //# sourceMappingURL=menstrual-history.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menstrual-history.js","sourceRoot":"","sources":["../../../../src/med_editor/framework/impl/media-formula/menstrual-history.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ import { BlockContentElement, ElementFactory, Element, SerializeProps, ViewOptions, readElementProps } from "@/med_editor/framework/element-define";
2
+ import { ParagraphProps } from "@/med_editor/framework/element-props";
3
+ import { RenderContenxtType } from "@/med_editor/framework/render-context";
4
+ import { BlockLineRectRenderObject, MuiltBlockLineRenderObject, RenderObject } from "@/med_editor/framework/render-define";
5
+ export declare class ParagraphElement extends BlockContentElement<ParagraphProps> {
6
+ constructor();
7
+ createRenderObject(): ParagraphRenderObject;
8
+ serialize(viewOptions: ViewOptions): SerializeProps;
9
+ clone(data: boolean): Element;
10
+ static createElement(): ParagraphElement;
11
+ }
12
+ export declare class ParagraphRenderObject extends MuiltBlockLineRenderObject {
13
+ beginRender(ctx: RenderContenxtType, position: {
14
+ x: number;
15
+ y: number;
16
+ }): void;
17
+ endRender(ctx: RenderContenxtType, position: {
18
+ x: number;
19
+ y: number;
20
+ }): void;
21
+ /**
22
+ * 绘制项目符号
23
+ */
24
+ drawProjectNumber(ctx: RenderContenxtType): void;
25
+ clone(): RenderObject;
26
+ createLineRect(): ParagraphLineRectRenderObject;
27
+ }
28
+ export declare class ParagraphFactory extends ElementFactory<ParagraphProps> {
29
+ match(type: string): boolean;
30
+ createElement(data: readElementProps<ParagraphProps>, renderCtx: RenderContenxtType): Element;
31
+ }
32
+ /**
33
+ * 段落行框
34
+ */
35
+ export declare class ParagraphLineRectRenderObject extends BlockLineRectRenderObject {
36
+ beginRender(ctx: RenderContenxtType, position: {
37
+ x: number;
38
+ y: number;
39
+ }): void;
40
+ endRender(ctx: RenderContenxtType, position: {
41
+ x: number;
42
+ y: number;
43
+ }): void;
44
+ clone(): RenderObject;
45
+ }