office-viewer 0.1.0 → 0.1.4

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 (446) hide show
  1. package/README.md +6 -1
  2. package/esm/OpenXML.d.ts +19 -0
  3. package/esm/OpenXML.js +43 -2
  4. package/esm/Word.d.ts +132 -15
  5. package/esm/Word.js +239 -54
  6. package/esm/openxml/ContentType.js +20 -6
  7. package/esm/openxml/Settings.d.ts +10 -0
  8. package/esm/openxml/Settings.js +93 -0
  9. package/esm/openxml/Style.d.ts +1 -1
  10. package/esm/openxml/Style.js +12 -12
  11. package/esm/openxml/Theme.js +30 -6
  12. package/esm/openxml/Types.d.ts +179 -2472
  13. package/esm/openxml/drawing/Blip.d.ts +7 -0
  14. package/esm/openxml/{word/drawing → drawing}/Blip.js +2 -1
  15. package/{lib/openxml/word → esm/openxml}/drawing/BlipFill.d.ts +1 -1
  16. package/esm/openxml/{word/drawing → drawing}/BlipFill.js +1 -1
  17. package/esm/openxml/drawing/CustomGeom.d.ts +9 -0
  18. package/esm/openxml/drawing/CustomGeom.js +17 -0
  19. package/esm/openxml/drawing/Drawing.d.ts +37 -0
  20. package/esm/openxml/drawing/Drawing.js +173 -0
  21. package/esm/openxml/drawing/Geom.d.ts +11 -0
  22. package/esm/openxml/drawing/Geom.js +34 -0
  23. package/esm/openxml/drawing/Path.d.ts +37 -0
  24. package/esm/openxml/drawing/Pic.d.ts +16 -0
  25. package/esm/openxml/drawing/Pic.js +26 -0
  26. package/esm/openxml/drawing/Shape.d.ts +20 -0
  27. package/esm/openxml/drawing/ShapeProperties.d.ts +22 -0
  28. package/esm/openxml/drawing/ShapeProperties.js +119 -0
  29. package/{lib/openxml/word → esm/openxml}/drawing/Transform.d.ts +4 -1
  30. package/esm/openxml/drawing/Transform.js +63 -0
  31. package/esm/openxml/drawing/diagram/Diagram.d.ts +7 -0
  32. package/esm/openxml/drawing/diagram/Diagram.js +24 -0
  33. package/esm/openxml/drawing/diagram/Sp.d.ts +2 -0
  34. package/esm/openxml/drawing/diagram/SpTree.d.ts +5 -0
  35. package/esm/openxml/drawing/presetShape.d.ts +3 -0
  36. package/esm/openxml/drawing/presetShape.js +38785 -0
  37. package/esm/openxml/drawing/svg/arcToA.d.ts +13 -0
  38. package/esm/openxml/drawing/svg/arcToA.js +88 -0
  39. package/esm/openxml/drawing/svg/formulas.d.ts +29 -0
  40. package/esm/openxml/drawing/svg/formulas.js +103 -0
  41. package/esm/openxml/drawing/svg/generateDefines.d.ts +12 -0
  42. package/esm/openxml/drawing/svg/generateDefines.js +144 -0
  43. package/esm/openxml/drawing/svg/presetVal.d.ts +43 -0
  44. package/esm/openxml/drawing/svg/presetVal.js +53 -0
  45. package/esm/openxml/drawing/svg/shapeToSVG.d.ts +9 -0
  46. package/esm/openxml/drawing/svg/shapeToSVG.js +151 -0
  47. package/esm/openxml/math/OMath.d.ts +5 -0
  48. package/esm/openxml/math/OMath.js +12 -0
  49. package/esm/openxml/math/convertOOML.d.ts +4 -0
  50. package/esm/openxml/math/convertOOML.js +13 -0
  51. package/esm/openxml/math/xsl.d.ts +4 -0
  52. package/esm/openxml/math/xsl.js +8 -0
  53. package/esm/openxml/word/Body.js +11 -7
  54. package/esm/openxml/word/Break.js +1 -3
  55. package/esm/openxml/word/Font.d.ts +16 -0
  56. package/esm/openxml/word/Font.js +78 -0
  57. package/esm/openxml/word/FontTable.d.ts +9 -0
  58. package/esm/openxml/word/FontTable.js +34 -0
  59. package/esm/openxml/word/Header.d.ts +11 -0
  60. package/esm/openxml/word/Header.js +54 -0
  61. package/esm/openxml/word/Hyperlink.d.ts +1 -0
  62. package/esm/openxml/word/Hyperlink.js +7 -3
  63. package/esm/openxml/word/InlineText.js +1 -1
  64. package/esm/openxml/word/NoBreakHyphen.d.ts +2 -0
  65. package/esm/openxml/word/NoBreakHyphen.js +7 -0
  66. package/esm/openxml/word/Note.d.ts +12 -0
  67. package/esm/openxml/word/Note.js +48 -0
  68. package/esm/openxml/word/Paragraph.d.ts +2 -2
  69. package/esm/openxml/word/Paragraph.js +10 -9
  70. package/esm/openxml/word/Pict.d.ts +1 -2
  71. package/esm/openxml/word/Pict.js +5 -3
  72. package/esm/openxml/word/Ruby.js +1 -1
  73. package/esm/openxml/word/Run.d.ts +7 -3
  74. package/esm/openxml/word/Run.js +28 -4
  75. package/esm/openxml/word/Section.d.ts +18 -5
  76. package/esm/openxml/word/Section.js +46 -2
  77. package/esm/openxml/word/Separator.d.ts +5 -0
  78. package/esm/openxml/word/Separator.js +10 -0
  79. package/esm/openxml/word/SoftHyphen.d.ts +5 -0
  80. package/esm/openxml/word/SoftHyphen.js +10 -0
  81. package/esm/openxml/word/Tab.d.ts +1 -1
  82. package/esm/openxml/word/Table.d.ts +4 -9
  83. package/esm/openxml/word/Table.js +0 -235
  84. package/esm/openxml/word/WDocument.d.ts +1 -2
  85. package/esm/openxml/word/WDocument.js +53 -7
  86. package/esm/openxml/word/numbering/AbstractNum.js +4 -2
  87. package/esm/openxml/word/numbering/Lvl.js +10 -4
  88. package/esm/openxml/word/numbering/Num.js +12 -4
  89. package/esm/openxml/word/numbering/NumberProperties.js +2 -2
  90. package/esm/openxml/word/numbering/Numbering.js +1 -1
  91. package/esm/openxml/word/table/Tc.d.ts +1 -22
  92. package/esm/openxml/word/table/Tc.js +1 -221
  93. package/esm/openxml/word/table/Tr.d.ts +0 -5
  94. package/esm/openxml/word/table/Tr.js +0 -97
  95. package/esm/openxml/word/wps/WPG.d.ts +14 -0
  96. package/esm/openxml/word/wps/WPG.js +56 -0
  97. package/esm/openxml/word/wps/WPS.d.ts +18 -0
  98. package/esm/openxml/word/wps/WPS.js +148 -0
  99. package/esm/openxml/word/wps/WPSStyle.d.ts +10 -0
  100. package/esm/openxml/word/wps/WPSStyle.js +42 -0
  101. package/esm/package/PackageParser.d.ts +1 -1
  102. package/esm/package/XMLPackageParser.d.ts +3 -3
  103. package/esm/package/ZipPackageParser.d.ts +1 -1
  104. package/esm/package/ZipPackageParser.js +7 -8
  105. package/esm/parse/Footnotes.d.ts +3 -0
  106. package/esm/parse/Footnotes.js +25 -0
  107. package/esm/parse/colorNameMap.d.ts +6 -0
  108. package/esm/parse/colorNameMap.js +201 -0
  109. package/esm/parse/jcToTextAlign.js +1 -0
  110. package/esm/parse/mergeSdt.d.ts +4 -0
  111. package/esm/parse/mergeSdt.js +57 -0
  112. package/esm/parse/modifyColor.d.ts +1 -0
  113. package/esm/parse/modifyColor.js +106 -0
  114. package/esm/parse/parseBorder.js +2 -21
  115. package/esm/parse/parseCellMargin.d.ts +2 -0
  116. package/esm/parse/parseCellMargin.js +38 -0
  117. package/esm/parse/parseChildColor.d.ts +5 -0
  118. package/esm/parse/parseChildColor.js +66 -0
  119. package/esm/parse/parseColor.d.ts +4 -0
  120. package/esm/parse/parseColor.js +41 -46
  121. package/esm/parse/parseEndnotes.d.ts +3 -0
  122. package/esm/parse/parseEndnotes.js +25 -0
  123. package/esm/parse/parseFont.js +1 -1
  124. package/esm/parse/parseInsideBorders.d.ts +9 -0
  125. package/esm/parse/parseInsideBorders.js +24 -0
  126. package/esm/parse/parsePr.d.ts +3 -0
  127. package/esm/parse/parsePr.js +108 -11
  128. package/esm/parse/parseRelationship.js +1 -1
  129. package/esm/parse/parseSdt.d.ts +5 -0
  130. package/esm/parse/parseShape.d.ts +10 -0
  131. package/esm/parse/parseShape.js +239 -0
  132. package/esm/parse/parseSize.d.ts +2 -1
  133. package/esm/parse/parseSize.js +7 -1
  134. package/esm/parse/parseSpacing.js +1 -1
  135. package/esm/parse/parseTable.d.ts +3 -0
  136. package/esm/parse/parseTable.js +62 -0
  137. package/esm/parse/parseTablePr.d.ts +3 -0
  138. package/esm/parse/parseTablePr.js +185 -0
  139. package/esm/parse/parseTblWidth.d.ts +4 -0
  140. package/esm/parse/parseTblWidth.js +23 -0
  141. package/esm/parse/parseTc.d.ts +10 -0
  142. package/esm/parse/parseTc.js +64 -0
  143. package/esm/parse/parseTcPr.d.ts +5 -0
  144. package/esm/parse/parseTcPr.js +99 -0
  145. package/esm/parse/parseTextDirection.js +4 -6
  146. package/esm/parse/parseTr.d.ts +6 -0
  147. package/esm/parse/parseTr.js +49 -0
  148. package/esm/parse/parseTrPr.d.ts +3 -0
  149. package/esm/parse/parseTrPr.js +59 -0
  150. package/esm/render/fixAbsolutePosition.d.ts +8 -0
  151. package/esm/render/renderBody.d.ts +6 -2
  152. package/esm/render/renderBody.js +184 -30
  153. package/esm/render/renderBr.d.ts +2 -1
  154. package/esm/render/renderBr.js +4 -1
  155. package/esm/render/renderCustGeom.d.ts +4 -0
  156. package/esm/render/renderCustGeom.js +10 -0
  157. package/esm/render/renderDocument.d.ts +2 -2
  158. package/esm/render/renderDocument.js +2 -2
  159. package/esm/render/renderDrawing.d.ts +3 -2
  160. package/esm/render/renderDrawing.js +238 -21
  161. package/esm/render/renderFont.d.ts +5 -0
  162. package/esm/render/renderFont.js +39 -0
  163. package/esm/render/renderGeom.d.ts +4 -0
  164. package/esm/render/renderGeom.js +14 -0
  165. package/esm/render/renderHeader.d.ts +6 -0
  166. package/esm/render/renderHeader.js +40 -0
  167. package/esm/render/renderHyperLink.js +4 -1
  168. package/esm/render/renderInlineText.js +1 -1
  169. package/esm/render/renderInstrText.js +1 -1
  170. package/esm/render/renderMath.d.ts +3 -0
  171. package/esm/render/renderMath.js +7 -0
  172. package/esm/render/renderNoBreakHyphen.d.ts +1 -0
  173. package/esm/render/renderNoBreakHyphen.js +9 -0
  174. package/esm/render/renderNotes.d.ts +5 -0
  175. package/esm/render/renderNotes.js +77 -0
  176. package/esm/render/renderNumbering.js +8 -10
  177. package/esm/render/renderParagraph.d.ts +1 -1
  178. package/esm/render/renderParagraph.js +58 -18
  179. package/esm/render/renderPict.js +5 -10
  180. package/esm/render/renderRuby.js +1 -1
  181. package/esm/render/renderRun.d.ts +4 -2
  182. package/esm/render/renderRun.js +42 -12
  183. package/esm/render/renderSection.d.ts +3 -2
  184. package/esm/render/renderSection.js +79 -5
  185. package/esm/render/renderSeparator.d.ts +1 -0
  186. package/esm/render/renderSeparator.js +9 -0
  187. package/esm/render/renderSoftHyphen.d.ts +1 -0
  188. package/esm/render/renderSoftHyphen.js +9 -0
  189. package/esm/render/renderStyle.js +36 -35
  190. package/esm/render/renderTab.d.ts +2 -1
  191. package/esm/render/renderTab.js +10 -6
  192. package/esm/render/renderTable.js +23 -20
  193. package/esm/render/setElementStyle.js +7 -2
  194. package/esm/render/zindex.d.ts +1 -0
  195. package/esm/util/blob.js +1 -10
  196. package/esm/util/color.d.ts +48 -0
  197. package/esm/util/color.js +211 -0
  198. package/esm/util/createObject.d.ts +10 -0
  199. package/esm/util/createObject.js +48 -0
  200. package/esm/util/dom.d.ts +8 -4
  201. package/esm/util/dom.js +21 -4
  202. package/esm/util/get.d.ts +4 -0
  203. package/esm/util/get.js +18 -0
  204. package/esm/util/mergeRun.js +1 -1
  205. package/esm/util/parseSides.d.ts +11 -0
  206. package/esm/util/print.d.ts +5 -0
  207. package/esm/util/print.js +54 -0
  208. package/esm/util/replaceVar.d.ts +10 -0
  209. package/esm/util/replaceVar.js +215 -0
  210. package/esm/util/xml.js +4 -1
  211. package/lib/OpenXML.d.ts +19 -0
  212. package/lib/OpenXML.js +44 -1
  213. package/lib/Word.d.ts +132 -15
  214. package/lib/Word.js +244 -59
  215. package/lib/openxml/ContentType.js +20 -6
  216. package/lib/openxml/Settings.d.ts +10 -0
  217. package/lib/openxml/Settings.js +97 -0
  218. package/lib/openxml/Style.d.ts +1 -1
  219. package/lib/openxml/Style.js +15 -15
  220. package/lib/openxml/Theme.js +31 -7
  221. package/lib/openxml/Types.d.ts +179 -2472
  222. package/lib/openxml/drawing/Blip.d.ts +7 -0
  223. package/lib/openxml/{word/drawing → drawing}/Blip.js +2 -1
  224. package/{esm/openxml/word → lib/openxml}/drawing/BlipFill.d.ts +1 -1
  225. package/lib/openxml/{word/drawing → drawing}/BlipFill.js +1 -1
  226. package/lib/openxml/drawing/CustomGeom.d.ts +9 -0
  227. package/lib/openxml/drawing/CustomGeom.js +21 -0
  228. package/lib/openxml/drawing/Drawing.d.ts +37 -0
  229. package/lib/openxml/drawing/Drawing.js +177 -0
  230. package/lib/openxml/drawing/Geom.d.ts +11 -0
  231. package/lib/openxml/drawing/Geom.js +38 -0
  232. package/lib/openxml/drawing/Path.d.ts +37 -0
  233. package/lib/openxml/drawing/Pic.d.ts +16 -0
  234. package/lib/openxml/drawing/Pic.js +30 -0
  235. package/lib/openxml/drawing/Shape.d.ts +20 -0
  236. package/lib/openxml/drawing/ShapeProperties.d.ts +22 -0
  237. package/lib/openxml/drawing/ShapeProperties.js +123 -0
  238. package/{esm/openxml/word → lib/openxml}/drawing/Transform.d.ts +4 -1
  239. package/lib/openxml/drawing/Transform.js +67 -0
  240. package/lib/openxml/drawing/diagram/Diagram.d.ts +7 -0
  241. package/lib/openxml/drawing/diagram/Diagram.js +28 -0
  242. package/lib/openxml/drawing/diagram/Sp.d.ts +2 -0
  243. package/lib/openxml/drawing/diagram/SpTree.d.ts +5 -0
  244. package/lib/openxml/drawing/presetShape.d.ts +3 -0
  245. package/lib/openxml/drawing/presetShape.js +38789 -0
  246. package/lib/openxml/drawing/svg/arcToA.d.ts +13 -0
  247. package/lib/openxml/drawing/svg/arcToA.js +92 -0
  248. package/lib/openxml/drawing/svg/formulas.d.ts +29 -0
  249. package/lib/openxml/drawing/svg/formulas.js +108 -0
  250. package/lib/openxml/drawing/svg/generateDefines.d.ts +12 -0
  251. package/lib/openxml/drawing/svg/generateDefines.js +148 -0
  252. package/lib/openxml/drawing/svg/presetVal.d.ts +43 -0
  253. package/lib/openxml/drawing/svg/presetVal.js +57 -0
  254. package/lib/openxml/drawing/svg/shapeToSVG.d.ts +9 -0
  255. package/lib/openxml/drawing/svg/shapeToSVG.js +155 -0
  256. package/lib/openxml/math/OMath.d.ts +5 -0
  257. package/lib/openxml/math/OMath.js +16 -0
  258. package/lib/openxml/math/convertOOML.d.ts +4 -0
  259. package/lib/openxml/math/convertOOML.js +17 -0
  260. package/lib/openxml/math/xsl.d.ts +4 -0
  261. package/lib/openxml/math/xsl.js +12 -0
  262. package/lib/openxml/word/Body.js +11 -7
  263. package/lib/openxml/word/Break.js +1 -3
  264. package/lib/openxml/word/Font.d.ts +16 -0
  265. package/lib/openxml/word/Font.js +83 -0
  266. package/lib/openxml/word/FontTable.d.ts +9 -0
  267. package/lib/openxml/word/FontTable.js +38 -0
  268. package/lib/openxml/word/Header.d.ts +11 -0
  269. package/lib/openxml/word/Header.js +58 -0
  270. package/lib/openxml/word/Hyperlink.d.ts +1 -0
  271. package/lib/openxml/word/Hyperlink.js +8 -4
  272. package/lib/openxml/word/InlineText.js +2 -2
  273. package/lib/openxml/word/NoBreakHyphen.d.ts +2 -0
  274. package/lib/openxml/word/NoBreakHyphen.js +11 -0
  275. package/lib/openxml/word/Note.d.ts +12 -0
  276. package/lib/openxml/word/Note.js +52 -0
  277. package/lib/openxml/word/Paragraph.d.ts +2 -2
  278. package/lib/openxml/word/Paragraph.js +11 -10
  279. package/lib/openxml/word/Pict.d.ts +1 -2
  280. package/lib/openxml/word/Pict.js +5 -3
  281. package/lib/openxml/word/Ruby.js +4 -4
  282. package/lib/openxml/word/Run.d.ts +7 -3
  283. package/lib/openxml/word/Run.js +29 -5
  284. package/lib/openxml/word/Section.d.ts +18 -5
  285. package/lib/openxml/word/Section.js +47 -3
  286. package/lib/openxml/word/Separator.d.ts +5 -0
  287. package/lib/openxml/word/Separator.js +14 -0
  288. package/lib/openxml/word/SoftHyphen.d.ts +5 -0
  289. package/lib/openxml/word/SoftHyphen.js +14 -0
  290. package/lib/openxml/word/Tab.d.ts +1 -1
  291. package/lib/openxml/word/Table.d.ts +4 -9
  292. package/lib/openxml/word/Table.js +0 -235
  293. package/lib/openxml/word/WDocument.d.ts +1 -2
  294. package/lib/openxml/word/WDocument.js +53 -7
  295. package/lib/openxml/word/numbering/AbstractNum.js +5 -3
  296. package/lib/openxml/word/numbering/Lvl.js +11 -5
  297. package/lib/openxml/word/numbering/Num.js +12 -4
  298. package/lib/openxml/word/numbering/NumberProperties.js +2 -2
  299. package/lib/openxml/word/numbering/Numbering.js +3 -3
  300. package/lib/openxml/word/table/Tc.d.ts +1 -22
  301. package/lib/openxml/word/table/Tc.js +0 -224
  302. package/lib/openxml/word/table/Tr.d.ts +0 -5
  303. package/lib/openxml/word/table/Tr.js +0 -97
  304. package/lib/openxml/word/wps/WPG.d.ts +14 -0
  305. package/lib/openxml/word/wps/WPG.js +60 -0
  306. package/lib/openxml/word/wps/WPS.d.ts +18 -0
  307. package/lib/openxml/word/wps/WPS.js +152 -0
  308. package/lib/openxml/word/wps/WPSStyle.d.ts +10 -0
  309. package/lib/openxml/word/wps/WPSStyle.js +46 -0
  310. package/lib/package/PackageParser.d.ts +1 -1
  311. package/lib/package/XMLPackageParser.d.ts +3 -3
  312. package/lib/package/ZipPackageParser.d.ts +1 -1
  313. package/lib/package/ZipPackageParser.js +7 -8
  314. package/lib/parse/Footnotes.d.ts +3 -0
  315. package/lib/parse/Footnotes.js +29 -0
  316. package/lib/parse/colorNameMap.d.ts +6 -0
  317. package/lib/parse/colorNameMap.js +205 -0
  318. package/lib/parse/jcToTextAlign.js +1 -0
  319. package/lib/parse/mergeSdt.d.ts +4 -0
  320. package/lib/parse/mergeSdt.js +61 -0
  321. package/lib/parse/modifyColor.d.ts +1 -0
  322. package/lib/parse/modifyColor.js +110 -0
  323. package/lib/parse/parseBorder.js +3 -22
  324. package/lib/parse/parseCellMargin.d.ts +2 -0
  325. package/lib/parse/parseCellMargin.js +42 -0
  326. package/lib/parse/parseChildColor.d.ts +5 -0
  327. package/lib/parse/parseChildColor.js +70 -0
  328. package/lib/parse/parseColor.d.ts +4 -0
  329. package/lib/parse/parseColor.js +41 -45
  330. package/lib/parse/parseEndnotes.d.ts +3 -0
  331. package/lib/parse/parseEndnotes.js +29 -0
  332. package/lib/parse/parseFont.js +2 -2
  333. package/lib/parse/parseInsideBorders.d.ts +9 -0
  334. package/lib/parse/parseInsideBorders.js +28 -0
  335. package/lib/parse/parsePr.d.ts +3 -0
  336. package/lib/parse/parsePr.js +109 -12
  337. package/lib/parse/parseRelationship.js +2 -2
  338. package/lib/parse/parseSdt.d.ts +5 -0
  339. package/lib/parse/parseShape.d.ts +10 -0
  340. package/lib/parse/parseShape.js +247 -0
  341. package/lib/parse/parseSize.d.ts +2 -1
  342. package/lib/parse/parseSize.js +7 -0
  343. package/lib/parse/parseSpacing.js +1 -1
  344. package/lib/parse/parseTable.d.ts +3 -0
  345. package/lib/parse/parseTable.js +66 -0
  346. package/lib/parse/parseTablePr.d.ts +3 -0
  347. package/lib/parse/parseTablePr.js +189 -0
  348. package/lib/parse/parseTblWidth.d.ts +4 -0
  349. package/lib/parse/parseTblWidth.js +27 -0
  350. package/lib/parse/parseTc.d.ts +10 -0
  351. package/lib/parse/parseTc.js +68 -0
  352. package/lib/parse/parseTcPr.d.ts +5 -0
  353. package/lib/parse/parseTcPr.js +104 -0
  354. package/lib/parse/parseTextDirection.js +4 -6
  355. package/lib/parse/parseTr.d.ts +6 -0
  356. package/lib/parse/parseTr.js +53 -0
  357. package/lib/parse/parseTrPr.d.ts +3 -0
  358. package/lib/parse/parseTrPr.js +63 -0
  359. package/lib/render/fixAbsolutePosition.d.ts +8 -0
  360. package/lib/render/renderBody.d.ts +6 -2
  361. package/lib/render/renderBody.js +183 -29
  362. package/lib/render/renderBr.d.ts +2 -1
  363. package/lib/render/renderBr.js +4 -1
  364. package/lib/render/renderCustGeom.d.ts +4 -0
  365. package/lib/render/renderCustGeom.js +14 -0
  366. package/lib/render/renderDocument.d.ts +2 -2
  367. package/lib/render/renderDocument.js +2 -2
  368. package/lib/render/renderDrawing.d.ts +3 -2
  369. package/lib/render/renderDrawing.js +238 -21
  370. package/lib/render/renderFont.d.ts +5 -0
  371. package/lib/render/renderFont.js +43 -0
  372. package/lib/render/renderGeom.d.ts +4 -0
  373. package/lib/render/renderGeom.js +18 -0
  374. package/lib/render/renderHeader.d.ts +6 -0
  375. package/lib/render/renderHeader.js +44 -0
  376. package/lib/render/renderHyperLink.js +5 -2
  377. package/lib/render/renderInlineText.js +2 -2
  378. package/lib/render/renderInstrText.js +2 -2
  379. package/lib/render/renderMath.d.ts +3 -0
  380. package/lib/render/renderMath.js +11 -0
  381. package/lib/render/renderNoBreakHyphen.d.ts +1 -0
  382. package/lib/render/renderNoBreakHyphen.js +13 -0
  383. package/lib/render/renderNotes.d.ts +5 -0
  384. package/lib/render/renderNotes.js +81 -0
  385. package/lib/render/renderNumbering.js +9 -11
  386. package/lib/render/renderParagraph.d.ts +1 -1
  387. package/lib/render/renderParagraph.js +58 -18
  388. package/lib/render/renderPict.js +5 -10
  389. package/lib/render/renderRuby.js +3 -3
  390. package/lib/render/renderRun.d.ts +4 -2
  391. package/lib/render/renderRun.js +41 -11
  392. package/lib/render/renderSection.d.ts +3 -2
  393. package/lib/render/renderSection.js +79 -5
  394. package/lib/render/renderSeparator.d.ts +1 -0
  395. package/lib/render/renderSeparator.js +13 -0
  396. package/lib/render/renderSoftHyphen.d.ts +1 -0
  397. package/lib/render/renderSoftHyphen.js +13 -0
  398. package/lib/render/renderStyle.js +37 -36
  399. package/lib/render/renderTab.d.ts +2 -1
  400. package/lib/render/renderTab.js +10 -6
  401. package/lib/render/renderTable.js +25 -22
  402. package/lib/render/setElementStyle.js +6 -1
  403. package/lib/render/zindex.d.ts +1 -0
  404. package/lib/util/blob.js +0 -10
  405. package/lib/util/color.d.ts +48 -0
  406. package/lib/util/color.js +215 -0
  407. package/lib/util/createObject.d.ts +10 -0
  408. package/lib/util/createObject.js +54 -0
  409. package/lib/util/dom.d.ts +8 -4
  410. package/lib/util/dom.js +24 -5
  411. package/lib/util/get.d.ts +4 -0
  412. package/lib/util/get.js +22 -0
  413. package/lib/util/mergeRun.js +5 -5
  414. package/lib/util/parseSides.d.ts +11 -0
  415. package/lib/util/print.d.ts +5 -0
  416. package/lib/util/print.js +58 -0
  417. package/lib/util/replaceVar.d.ts +10 -0
  418. package/lib/util/replaceVar.js +220 -0
  419. package/lib/util/xml.js +4 -0
  420. package/package.json +17 -7
  421. package/esm/node_modules/tslib/tslib.es6.js +0 -120
  422. package/esm/openxml/Types.js +0 -1003
  423. package/esm/openxml/word/CustomXml.d.ts +0 -8
  424. package/esm/openxml/word/SmartTag.d.ts +0 -8
  425. package/esm/openxml/word/SmartTag.js +0 -18
  426. package/esm/openxml/word/drawing/Blip.d.ts +0 -6
  427. package/esm/openxml/word/drawing/Drawing.d.ts +0 -6
  428. package/esm/openxml/word/drawing/Drawing.js +0 -15
  429. package/esm/openxml/word/drawing/Pic.d.ts +0 -8
  430. package/esm/openxml/word/drawing/Pic.js +0 -16
  431. package/esm/openxml/word/drawing/ShapeProperties.d.ts +0 -9
  432. package/esm/openxml/word/drawing/ShapeProperties.js +0 -20
  433. package/esm/openxml/word/drawing/Transform.js +0 -30
  434. package/lib/node_modules/tslib/tslib.es6.js +0 -129
  435. package/lib/openxml/Types.js +0 -1005
  436. package/lib/openxml/word/CustomXml.d.ts +0 -8
  437. package/lib/openxml/word/SmartTag.d.ts +0 -8
  438. package/lib/openxml/word/SmartTag.js +0 -22
  439. package/lib/openxml/word/drawing/Blip.d.ts +0 -6
  440. package/lib/openxml/word/drawing/Drawing.d.ts +0 -6
  441. package/lib/openxml/word/drawing/Drawing.js +0 -19
  442. package/lib/openxml/word/drawing/Pic.d.ts +0 -8
  443. package/lib/openxml/word/drawing/Pic.js +0 -20
  444. package/lib/openxml/word/drawing/ShapeProperties.d.ts +0 -9
  445. package/lib/openxml/word/drawing/ShapeProperties.js +0 -24
  446. package/lib/openxml/word/drawing/Transform.js +0 -34
@@ -1,111 +1,3 @@
1
- import { __values } from '../../../node_modules/tslib/tslib.es6.js';
2
- import { getVal, getValNumber, getValBoolean } from '../../../OpenXML.js';
3
- import { Paragraph } from '../Paragraph.js';
4
- import { Table } from '../Table.js';
5
- import { parseSize, LengthUsage } from '../../../parse/parseSize.js';
6
- import { parseShdColor } from '../../../parse/parseColor.js';
7
- import { parseBorders, parseBorder } from '../../../parse/parseBorder.js';
8
- import { parseTextDirection } from '../../../parse/parseTextDirection.js';
9
- import { ST_Merge, ST_VerticalJc, ST_TblWidth } from '../../Types.js';
10
-
11
- // http://officeopenxml.com/WPtableCellProperties-Margins.php
12
- function parseCellMargin(element, style) {
13
- var e_1, _a;
14
- try {
15
- for (var _b = __values(element.children), _c = _b.next(); !_c.done; _c = _b.next()) {
16
- var child = _c.value;
17
- var tagName = child.tagName;
18
- switch (tagName) {
19
- case 'w:left':
20
- case 'w:start':
21
- style['padding-left'] = parseSize(child, 'w:w');
22
- break;
23
- case 'w:right':
24
- case 'w:end':
25
- style['padding-right'] = parseSize(child, 'w:w');
26
- break;
27
- case 'w:top':
28
- style['padding-top'] = parseSize(child, 'w:w');
29
- break;
30
- case 'w:bottom':
31
- style['padding-bottom'] = parseSize(child, 'w:w');
32
- break;
33
- }
34
- }
35
- }
36
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
37
- finally {
38
- try {
39
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
40
- }
41
- finally { if (e_1) throw e_1.error; }
42
- }
43
- }
44
- function parseVAlign(element, style) {
45
- var vAlign = getVal(element);
46
- switch (vAlign) {
47
- case ST_VerticalJc.bottom:
48
- style['vertical-align'] = 'bottom';
49
- break;
50
- case ST_VerticalJc.center:
51
- style['vertical-align'] = 'middle';
52
- break;
53
- case ST_VerticalJc.top:
54
- style['vertical-align'] = 'top';
55
- break;
56
- }
57
- }
58
- function parseTblCellSpacing(element, style) {
59
- var width = parseTblWidth(element);
60
- if (width) {
61
- style['cell-spacing'] = width;
62
- }
63
- }
64
- /**
65
- * parseBorders 不支持 insideH 和 insideV,所以单独支持一下
66
- * 实际显示时需要过滤掉第一列
67
- */
68
- function parseInsideBorders(word, element) {
69
- var H;
70
- var insideH = element.querySelector('insideH');
71
- if (insideH) {
72
- H = parseBorder(word, insideH);
73
- }
74
- var V;
75
- var insideV = element.querySelector('insideV');
76
- if (insideV) {
77
- V = parseBorder(word, insideV);
78
- }
79
- return {
80
- H: H,
81
- V: V
82
- };
83
- }
84
- /**
85
- * http://officeopenxml.com/WPtableWidth.php
86
- */
87
- function parseTblWidth(element) {
88
- var type = element.getAttribute('w:type');
89
- if (!type || type === ST_TblWidth.dxa) {
90
- return parseSize(element, 'w:w');
91
- }
92
- else if (type === ST_TblWidth.pct) {
93
- return parseSize(element, 'w:w', LengthUsage.Percent);
94
- }
95
- else if (type === ST_TblWidth.auto) {
96
- return 'auto';
97
- }
98
- else {
99
- console.warn('parseTblWidth: ignore type', type, element);
100
- }
101
- return '';
102
- }
103
- function parseTcW(element, style) {
104
- var width = parseTblWidth(element);
105
- if (width) {
106
- style.width = width;
107
- }
108
- }
109
1
  var Tc = /** @class */ (function () {
110
2
  function Tc() {
111
3
  this.properties = {};
@@ -116,119 +8,7 @@ var Tc = /** @class */ (function () {
116
8
  this.children.push(child);
117
9
  }
118
10
  };
119
- Tc.parseTcPr = function (word, element) {
120
- var e_2, _a;
121
- var properties = {};
122
- var style = {};
123
- properties.cssStyle = style;
124
- try {
125
- for (var _b = __values(element.children), _c = _b.next(); !_c.done; _c = _b.next()) {
126
- var child = _c.value;
127
- var tagName = child.tagName;
128
- switch (tagName) {
129
- case 'w:tcMar':
130
- parseCellMargin(child, style);
131
- break;
132
- case 'w:shd':
133
- style['background-color'] = parseShdColor(word, child);
134
- break;
135
- case 'w:tcW':
136
- parseTcW(child, style);
137
- break;
138
- case 'w:noWrap':
139
- // http://webapp.docx4java.org/OnlineDemo/ecma376/WordML/noWrap.html
140
- var noWrap = getValBoolean(child);
141
- if (noWrap) {
142
- style['white-space'] = 'nowrap';
143
- }
144
- break;
145
- case 'w:vAlign':
146
- parseVAlign(child, style);
147
- break;
148
- case 'w:tcBorders':
149
- parseBorders(word, child, style);
150
- properties.insideBorder = parseInsideBorders(word, child);
151
- break;
152
- case 'w:gridSpan':
153
- properties.gridSpan = getValNumber(child);
154
- break;
155
- case 'w:vMerge':
156
- properties.vMerge = getVal(child) || ST_Merge.continue;
157
- break;
158
- case 'w:textDirection':
159
- parseTextDirection(child, style);
160
- break;
161
- case 'w:cnfStyle':
162
- // 目前是自动计算的,所以不需要这个了
163
- break;
164
- default:
165
- console.warn('parseTcPr: ignore', tagName, child);
166
- }
167
- }
168
- }
169
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
170
- finally {
171
- try {
172
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
173
- }
174
- finally { if (e_2) throw e_2.error; }
175
- }
176
- return properties;
177
- };
178
- Tc.fromXML = function (word, element, currentCol, rowSpanMap) {
179
- var e_3, _a;
180
- var tc = new Tc();
181
- try {
182
- for (var _b = __values(element.children), _c = _b.next(); !_c.done; _c = _b.next()) {
183
- var child = _c.value;
184
- var tagName = child.tagName;
185
- switch (tagName) {
186
- case 'w:tcPr':
187
- tc.properties = Tc.parseTcPr(word, child);
188
- break;
189
- case 'w:p':
190
- tc.add(Paragraph.fromXML(word, child));
191
- break;
192
- case 'w:tbl':
193
- tc.add(Table.fromXML(word, child));
194
- break;
195
- }
196
- }
197
- }
198
- catch (e_3_1) { e_3 = { error: e_3_1 }; }
199
- finally {
200
- try {
201
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
202
- }
203
- finally { if (e_3) throw e_3.error; }
204
- }
205
- var lastCol = rowSpanMap[currentCol.index];
206
- // 如果是 continue 意味着这个被合并了
207
- if (tc.properties.vMerge) {
208
- if (tc.properties.vMerge === ST_Merge.restart) {
209
- tc.properties.rowSpan = 1;
210
- rowSpanMap[currentCol.index] = tc;
211
- }
212
- else if (lastCol) {
213
- if (lastCol.properties && lastCol.properties.rowSpan) {
214
- lastCol.properties.rowSpan = lastCol.properties.rowSpan + 1;
215
- var colSpan_1 = tc.properties.gridSpan || 1;
216
- currentCol.index += colSpan_1;
217
- return null;
218
- }
219
- else {
220
- console.warn('Tc.fromXML: continue but not found lastCol', currentCol.index, tc, rowSpanMap);
221
- }
222
- }
223
- }
224
- else {
225
- delete rowSpanMap[currentCol.index];
226
- }
227
- var colSpan = tc.properties.gridSpan || 1;
228
- currentCol.index += colSpan;
229
- return tc;
230
- };
231
11
  return Tc;
232
12
  }());
233
13
 
234
- export { Tc, parseCellMargin, parseInsideBorders, parseTblCellSpacing, parseTblWidth };
14
+ export { Tc };
@@ -1,6 +1,5 @@
1
1
  import { CSSStyle } from '../../Style';
2
2
  import { Tc } from './Tc';
3
- import Word from '../../../Word';
4
3
  export interface TrPr {
5
4
  cssStyle?: CSSStyle;
6
5
  /**
@@ -11,8 +10,4 @@ export interface TrPr {
11
10
  export declare class Tr {
12
11
  properties: TrPr;
13
12
  tcs: Tc[];
14
- static parseTrPr(word: Word, element: Element): TrPr;
15
- static fromXML(word: Word, element: Element, rowSpanMap: {
16
- [key: string]: Tc;
17
- }): Tr;
18
13
  }
@@ -1,105 +1,8 @@
1
- import { __values } from '../../../node_modules/tslib/tslib.es6.js';
2
- import { getVal, getValBoolean } from '../../../OpenXML.js';
3
- import { parseTblCellSpacing, Tc } from './Tc.js';
4
- import { parseTrHeight } from '../../../parse/parseTrHeight.js';
5
- import { jcToTextAlign } from '../../../parse/jcToTextAlign.js';
6
- import { Table } from '../Table.js';
7
-
8
1
  var Tr = /** @class */ (function () {
9
2
  function Tr() {
10
3
  this.properties = {};
11
4
  this.tcs = [];
12
5
  }
13
- Tr.parseTrPr = function (word, element) {
14
- var e_1, _a;
15
- var cssStyle = {};
16
- var tcStyle = {};
17
- try {
18
- for (var _b = __values(element.children), _c = _b.next(); !_c.done; _c = _b.next()) {
19
- var child = _c.value;
20
- var tagName = child.tagName;
21
- switch (tagName) {
22
- case 'w:hidden':
23
- if (getValBoolean(child)) {
24
- cssStyle.display = 'none';
25
- }
26
- break;
27
- case 'w:trHeight':
28
- parseTrHeight(child, cssStyle);
29
- break;
30
- case 'w:jc':
31
- cssStyle['text-align'] = jcToTextAlign(getVal(child));
32
- break;
33
- case 'w:cantSplit':
34
- // 目前也不支持分页
35
- break;
36
- case 'w:tblPrEx':
37
- // http://webapp.docx4java.org/OnlineDemo/ecma376/WordML/tblPrEx_1.html
38
- var tablePr = Table.parseTablePr(word, child);
39
- Object.assign(cssStyle, tablePr.cssStyle);
40
- break;
41
- case 'w:tblCellSpacing':
42
- parseTblCellSpacing(child, tcStyle);
43
- break;
44
- case 'w:cnfStyle':
45
- // 目前是自动计算的,所以不需要这个了
46
- break;
47
- default:
48
- console.warn("Tr: Unknown tag ", tagName, child);
49
- }
50
- }
51
- }
52
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
53
- finally {
54
- try {
55
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
56
- }
57
- finally { if (e_1) throw e_1.error; }
58
- }
59
- return {
60
- cssStyle: cssStyle
61
- };
62
- };
63
- Tr.fromXML = function (word, element, rowSpanMap) {
64
- var e_2, _a;
65
- var tr = new Tr();
66
- // 做成对象是为了传递引用来修改
67
- var currentCol = {
68
- index: 0
69
- };
70
- try {
71
- for (var _b = __values(element.children), _c = _b.next(); !_c.done; _c = _b.next()) {
72
- var child = _c.value;
73
- var tagName = child.tagName;
74
- switch (tagName) {
75
- case 'w:tc':
76
- var tc = Tc.fromXML(word, child, currentCol, rowSpanMap);
77
- if (tc) {
78
- tr.tcs.push(tc);
79
- }
80
- break;
81
- case 'w:trPr':
82
- tr.properties = Tr.parseTrPr(word, child);
83
- break;
84
- case 'w:tblPrEx':
85
- // http://webapp.docx4java.org/OnlineDemo/ecma376/WordML/tblPrEx_1.html
86
- var tablePr = Table.parseTablePr(word, child);
87
- Object.assign(tr.properties.cssStyle || {}, tablePr.cssStyle);
88
- break;
89
- default:
90
- console.warn("Tr: Unknown tag ", tagName, child);
91
- }
92
- }
93
- }
94
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
95
- finally {
96
- try {
97
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
98
- }
99
- finally { if (e_2) throw e_2.error; }
100
- }
101
- return tr;
102
- };
103
6
  return Tr;
104
7
  }());
105
8
 
@@ -0,0 +1,14 @@
1
+ /**
2
+ * 图形组,目前是当成 wps 用了
3
+ */
4
+ import { WPS } from './WPS';
5
+ import Word from '../../../Word';
6
+ import { ShapePr } from '../../drawing/ShapeProperties';
7
+ import { Pic } from '../../drawing/Pic';
8
+ export declare class WPG {
9
+ wps: WPS[];
10
+ wpg: WPG[];
11
+ spPr?: ShapePr;
12
+ pic?: Pic;
13
+ static fromXML(word: Word, element: Element): WPG;
14
+ }
@@ -0,0 +1,56 @@
1
+ import { __values } from 'tslib';
2
+ import { WPS } from './WPS.js';
3
+ import { ShapePr } from '../../drawing/ShapeProperties.js';
4
+ import { Pic } from '../../drawing/Pic.js';
5
+
6
+ /**
7
+ * 图形组,目前是当成 wps 用了
8
+ */
9
+ var WPG = /** @class */ (function () {
10
+ function WPG() {
11
+ }
12
+ WPG.fromXML = function (word, element) {
13
+ var e_1, _a;
14
+ var wpg = new WPG();
15
+ var wps = [];
16
+ wpg.wps = wps;
17
+ wpg.wpg = [];
18
+ try {
19
+ for (var _b = __values(element.children), _c = _b.next(); !_c.done; _c = _b.next()) {
20
+ var child = _c.value;
21
+ var tagName = child.tagName;
22
+ switch (tagName) {
23
+ case 'wpg:cNvGrpSpPr':
24
+ // 和展现无关
25
+ break;
26
+ case 'wpg:grpSpPr':
27
+ wpg.spPr = ShapePr.fromXML(word, child);
28
+ break;
29
+ case 'wps:wsp':
30
+ wps.push(WPS.fromXML(word, child));
31
+ break;
32
+ case 'pic:pic':
33
+ wpg.pic = Pic.fromXML(word, child);
34
+ break;
35
+ case 'wpg:grpSp':
36
+ // 组合中的组合
37
+ wpg.wpg.push(WPG.fromXML(word, child));
38
+ break;
39
+ default:
40
+ console.warn('WPS: Unknown tag ', tagName, child);
41
+ }
42
+ }
43
+ }
44
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
45
+ finally {
46
+ try {
47
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
48
+ }
49
+ finally { if (e_1) throw e_1.error; }
50
+ }
51
+ return wpg;
52
+ };
53
+ return WPG;
54
+ }());
55
+
56
+ export { WPG };
@@ -0,0 +1,18 @@
1
+ import { Paragraph } from '../Paragraph';
2
+ import { ShapePr } from '../../drawing/ShapeProperties';
3
+ /**
4
+ * wps 指的是 wordprocessingShape,在 drawing 里 word 相关的 shape 定义
5
+ * 目前主要是支持 textbox,
6
+ */
7
+ import Word from '../../../Word';
8
+ import { Table } from '../Table';
9
+ import { CSSStyle } from '../../../openxml/Style';
10
+ import { WPSStyle } from './WPSStyle';
11
+ export type TxbxContentChild = Paragraph | Table;
12
+ export declare class WPS {
13
+ spPr?: ShapePr;
14
+ wpsStyle?: WPSStyle;
15
+ txbxContent: TxbxContentChild[];
16
+ style: CSSStyle;
17
+ static fromXML(word: Word, element: Element): WPS;
18
+ }
@@ -0,0 +1,148 @@
1
+ import { __values } from 'tslib';
2
+ import { Paragraph } from '../Paragraph.js';
3
+ import { ShapePr } from '../../drawing/ShapeProperties.js';
4
+ import { parseTable } from '../../../parse/parseTable.js';
5
+ import { convertAngle } from '../../../parse/parseSize.js';
6
+ import { WPSStyle } from './WPSStyle.js';
7
+
8
+ /**
9
+ * 文档 20.4.2.22,不过大部分属性不支持
10
+ */
11
+ function parseBodyPr(element, style) {
12
+ var e_1, _a;
13
+ try {
14
+ for (var _b = __values(element.attributes), _c = _b.next(); !_c.done; _c = _b.next()) {
15
+ var attribute = _c.value;
16
+ var name_1 = attribute.name;
17
+ var value = attribute.value;
18
+ switch (name_1) {
19
+ case 'numCol':
20
+ if (value !== '1') {
21
+ style['column-count'] = value;
22
+ }
23
+ break;
24
+ case 'vert':
25
+ var val = value;
26
+ switch (val) {
27
+ case 'vert':
28
+ style['writing-mode'] = 'vertical-rl';
29
+ style['text-orientation'] = 'sideways';
30
+ break;
31
+ case 'vert270':
32
+ case 'eaVert':
33
+ // 不太准确,但 css 也只能做到这样
34
+ style['writing-mode'] = 'vertical-rl';
35
+ style['text-orientation'] = 'mixed';
36
+ break;
37
+ default:
38
+ break;
39
+ }
40
+ break;
41
+ case 'anchor':
42
+ var anchor = value;
43
+ switch (anchor) {
44
+ case 'b':
45
+ style['vertical-align'] = 'bottom';
46
+ break;
47
+ case 't':
48
+ style['vertical-align'] = 'top';
49
+ break;
50
+ case 'ctr':
51
+ style['vertical-align'] = 'middle';
52
+ break;
53
+ }
54
+ break;
55
+ case 'rot':
56
+ var rot = convertAngle(value);
57
+ if (rot) {
58
+ style['transform'] = "rotate(".concat(rot, "deg)");
59
+ }
60
+ break;
61
+ }
62
+ }
63
+ }
64
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
65
+ finally {
66
+ try {
67
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
68
+ }
69
+ finally { if (e_1) throw e_1.error; }
70
+ }
71
+ }
72
+ var WPS = /** @class */ (function () {
73
+ function WPS() {
74
+ // 外层容器样式
75
+ this.style = {};
76
+ }
77
+ WPS.fromXML = function (word, element) {
78
+ var e_2, _a, e_3, _b;
79
+ var wps = new WPS();
80
+ wps.txbxContent = [];
81
+ try {
82
+ for (var _c = __values(element.children), _d = _c.next(); !_d.done; _d = _c.next()) {
83
+ var child = _d.value;
84
+ var tagName = child.tagName;
85
+ switch (tagName) {
86
+ case 'wps:cNvSpPr':
87
+ case 'wps:cNvPr':
88
+ // 和展现无关
89
+ break;
90
+ case 'wps:spPr':
91
+ wps.spPr = ShapePr.fromXML(word, child);
92
+ break;
93
+ case 'wps:txbx':
94
+ // 文本框内容
95
+ // http://webapp.docx4java.org/OnlineDemo/ecma376/WordML/txbxContent.html
96
+ var txbxContent = child.firstElementChild;
97
+ if (txbxContent) {
98
+ try {
99
+ for (var _e = (e_3 = void 0, __values(txbxContent.children)), _f = _e.next(); !_f.done; _f = _e.next()) {
100
+ var txbxContentChild = _f.value;
101
+ var txbxContentTagName = txbxContentChild.tagName;
102
+ switch (txbxContentTagName) {
103
+ case 'w:p':
104
+ wps.txbxContent.push(Paragraph.fromXML(word, txbxContentChild));
105
+ break;
106
+ case 'w:tbl':
107
+ wps.txbxContent.push(parseTable(word, txbxContentChild));
108
+ break;
109
+ }
110
+ }
111
+ }
112
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
113
+ finally {
114
+ try {
115
+ if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
116
+ }
117
+ finally { if (e_3) throw e_3.error; }
118
+ }
119
+ }
120
+ else {
121
+ console.warn('unknown wps:txbx', child);
122
+ }
123
+ break;
124
+ case 'wps:style':
125
+ // http://webapp.docx4java.org/OnlineDemo/ecma376/DrawingML/style_1.html
126
+ wps.wpsStyle = WPSStyle.fromXML(word, child);
127
+ break;
128
+ case 'wps:bodyPr':
129
+ parseBodyPr(child, wps.style);
130
+ break;
131
+ default:
132
+ console.warn('WPS: Unknown tag ', tagName, child);
133
+ }
134
+ }
135
+ }
136
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
137
+ finally {
138
+ try {
139
+ if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
140
+ }
141
+ finally { if (e_2) throw e_2.error; }
142
+ }
143
+ return wps;
144
+ };
145
+ return WPS;
146
+ }());
147
+
148
+ export { WPS };
@@ -0,0 +1,10 @@
1
+ /**
2
+ * 没去不太清楚这个是什么,目前主要用于形状的颜色
3
+ */
4
+ import Word from '../../../Word';
5
+ export declare class WPSStyle {
6
+ lineColor?: string;
7
+ fillColor?: string;
8
+ fontColor?: string;
9
+ static fromXML(word: Word, element: Element): WPSStyle;
10
+ }
@@ -0,0 +1,42 @@
1
+ import { __values } from 'tslib';
2
+ import { parseChildColor } from '../../../parse/parseChildColor.js';
3
+
4
+ /**
5
+ * 没去不太清楚这个是什么,目前主要用于形状的颜色
6
+ */
7
+ var WPSStyle = /** @class */ (function () {
8
+ function WPSStyle() {
9
+ }
10
+ WPSStyle.fromXML = function (word, element) {
11
+ var e_1, _a;
12
+ var wpsStyle = new WPSStyle();
13
+ try {
14
+ for (var _b = __values(element.children), _c = _b.next(); !_c.done; _c = _b.next()) {
15
+ var child = _c.value;
16
+ var tagName = child.tagName;
17
+ switch (tagName) {
18
+ case 'a:fillRef':
19
+ wpsStyle.fillColor = parseChildColor(word, child);
20
+ break;
21
+ case 'a:lnRef':
22
+ wpsStyle.lineColor = parseChildColor(word, child);
23
+ break;
24
+ case 'a:fontRef':
25
+ wpsStyle.fontColor = parseChildColor(word, child);
26
+ break;
27
+ }
28
+ }
29
+ }
30
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
31
+ finally {
32
+ try {
33
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
34
+ }
35
+ finally { if (e_1) throw e_1.error; }
36
+ }
37
+ return wpsStyle;
38
+ };
39
+ return WPSStyle;
40
+ }());
41
+
42
+ export { WPSStyle };
@@ -12,7 +12,7 @@ export interface PackageParser {
12
12
  /**
13
13
  * 根据类型读取文件
14
14
  */
15
- getFileByType(filePath: string, type: 'string' | 'blob'): string | Blob;
15
+ getFileByType(filePath: string, type: 'string' | 'blob' | 'uint8array'): string | Blob | Uint8Array | null;
16
16
  /**
17
17
  * 文件是否存在
18
18
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * openxml 默认是 zip 格式,导致构造比较麻烦,所以增加了这种单一格式,所有内容都放在一个 xml 文件里
2
+ * openxml 默认是 zip 格式构造起来比较麻烦,这个格式可以方便文本编辑,word 也能直接打开
3
3
  */
4
4
  import { PackageParser } from './PackageParser';
5
5
  export default class XMLPackageParser implements PackageParser {
@@ -9,7 +9,7 @@ export default class XMLPackageParser implements PackageParser {
9
9
  /**
10
10
  * 加载 zip 文件
11
11
  */
12
- load(fileContent: ArrayBuffer | string): void;
12
+ load(fileContent: ArrayBuffer | string | Uint8Array): void;
13
13
  /**
14
14
  * 读取 xml 文件,转成 json 对象
15
15
  * @param filePath 文件路径
@@ -19,7 +19,7 @@ export default class XMLPackageParser implements PackageParser {
19
19
  /**
20
20
  * 在 xml 下基本不用这个
21
21
  */
22
- getFileByType(filePath: string, type: 'string' | 'blob'): string;
22
+ getFileByType(filePath: string, type: 'string' | 'blob'): string | Uint8Array | Blob | null;
23
23
  /**
24
24
  * 判断文件是否存在
25
25
  */