abstract-image 3.1.1 → 3.2.1

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 (357) hide show
  1. package/CHANGELOG.md +27 -15
  2. package/LICENSE +21 -21
  3. package/README.md +71 -71
  4. package/lib/__stories__/react-svg-export/example-1.stories.d.ts.map +1 -1
  5. package/lib/__stories__/react-svg-export/example-1.stories.js +1 -1
  6. package/lib/__stories__/react-svg-export/example-1.stories.js.map +1 -1
  7. package/lib/exporters/__tests__/dxf2d-export-image/export-test-def.d.ts +11 -0
  8. package/lib/exporters/__tests__/dxf2d-export-image/export-test-def.d.ts.map +1 -0
  9. package/lib/exporters/__tests__/dxf2d-export-image/export-test-def.js +6 -0
  10. package/lib/exporters/__tests__/dxf2d-export-image/export-test-def.js.map +1 -0
  11. package/lib/exporters/__tests__/dxf2d-export-image/export.test.d.ts +3 -0
  12. package/lib/exporters/__tests__/dxf2d-export-image/export.test.d.ts.map +1 -0
  13. package/lib/exporters/__tests__/dxf2d-export-image/export.test.js +17 -0
  14. package/lib/exporters/__tests__/dxf2d-export-image/export.test.js.map +1 -0
  15. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-ellipse.d.ts +3 -0
  16. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-ellipse.d.ts.map +1 -0
  17. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-ellipse.js +413 -0
  18. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-ellipse.js.map +1 -0
  19. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-group.d.ts +3 -0
  20. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-group.d.ts.map +1 -0
  21. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-group.js +160 -0
  22. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-group.js.map +1 -0
  23. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-line.d.ts +3 -0
  24. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-line.d.ts.map +1 -0
  25. package/lib/exporters/__tests__/{svg-export-image.test.js → dxf2d-export-image/test-defs/dxf2d-line.js} +68 -14
  26. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-line.js.map +1 -0
  27. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-polygon.d.ts +3 -0
  28. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-polygon.d.ts.map +1 -0
  29. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-polygon.js +123 -0
  30. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-polygon.js.map +1 -0
  31. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-polyline.d.ts +3 -0
  32. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-polyline.d.ts.map +1 -0
  33. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-polyline.js +113 -0
  34. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-polyline.js.map +1 -0
  35. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-rectangle.d.ts +3 -0
  36. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-rectangle.d.ts.map +1 -0
  37. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-rectangle.js +133 -0
  38. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-rectangle.js.map +1 -0
  39. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-text-growth-directions.d.ts +3 -0
  40. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-text-growth-directions.d.ts.map +1 -0
  41. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-text-growth-directions.js +172 -0
  42. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-text-growth-directions.js.map +1 -0
  43. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-text.d.ts +3 -0
  44. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-text.d.ts.map +1 -0
  45. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-text.js +97 -0
  46. package/lib/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-text.js.map +1 -0
  47. package/lib/exporters/__tests__/eps-export-image/export-test-def.d.ts +11 -0
  48. package/lib/exporters/__tests__/eps-export-image/export-test-def.d.ts.map +1 -0
  49. package/lib/exporters/__tests__/eps-export-image/export-test-def.js +6 -0
  50. package/lib/exporters/__tests__/eps-export-image/export-test-def.js.map +1 -0
  51. package/lib/exporters/__tests__/eps-export-image/export.test.d.ts +3 -0
  52. package/lib/exporters/__tests__/eps-export-image/export.test.d.ts.map +1 -0
  53. package/lib/exporters/__tests__/eps-export-image/export.test.js +17 -0
  54. package/lib/exporters/__tests__/eps-export-image/export.test.js.map +1 -0
  55. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-ellipse.d.ts +3 -0
  56. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-ellipse.d.ts.map +1 -0
  57. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-ellipse.js +58 -0
  58. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-ellipse.js.map +1 -0
  59. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-empty-text.d.ts +3 -0
  60. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-empty-text.d.ts.map +1 -0
  61. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-empty-text.js +60 -0
  62. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-empty-text.js.map +1 -0
  63. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-group.d.ts +3 -0
  64. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-group.d.ts.map +1 -0
  65. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-group.js +68 -0
  66. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-group.js.map +1 -0
  67. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-line.d.ts +3 -0
  68. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-line.d.ts.map +1 -0
  69. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-line.js +54 -0
  70. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-line.js.map +1 -0
  71. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-polygon.d.ts +3 -0
  72. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-polygon.d.ts.map +1 -0
  73. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-polygon.js +74 -0
  74. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-polygon.js.map +1 -0
  75. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-polyline.d.ts +3 -0
  76. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-polyline.d.ts.map +1 -0
  77. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-polyline.js +68 -0
  78. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-polyline.js.map +1 -0
  79. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-rectangle.d.ts +3 -0
  80. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-rectangle.d.ts.map +1 -0
  81. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-rectangle.js +54 -0
  82. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-rectangle.js.map +1 -0
  83. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-text-growth-directions.d.ts +3 -0
  84. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-text-growth-directions.d.ts.map +1 -0
  85. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-text-growth-directions.js +96 -0
  86. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-text-growth-directions.js.map +1 -0
  87. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-text.d.ts +3 -0
  88. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-text.d.ts.map +1 -0
  89. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-text.js +60 -0
  90. package/lib/exporters/__tests__/eps-export-image/test-defs/eps-text.js.map +1 -0
  91. package/lib/exporters/__tests__/exception/png-unsupported.test.d.ts +2 -0
  92. package/lib/exporters/__tests__/exception/png-unsupported.test.d.ts.map +1 -0
  93. package/lib/exporters/__tests__/exception/png-unsupported.test.js +33 -0
  94. package/lib/exporters/__tests__/exception/png-unsupported.test.js.map +1 -0
  95. package/lib/exporters/__tests__/exception/react-svg-direction-exception.test.d.ts +2 -0
  96. package/lib/exporters/__tests__/exception/react-svg-direction-exception.test.d.ts.map +1 -0
  97. package/lib/exporters/__tests__/exception/react-svg-direction-exception.test.js +45 -0
  98. package/lib/exporters/__tests__/exception/react-svg-direction-exception.test.js.map +1 -0
  99. package/lib/exporters/__tests__/exception/svg-direction-exception.test.d.ts +2 -0
  100. package/lib/exporters/__tests__/exception/svg-direction-exception.test.d.ts.map +1 -0
  101. package/lib/exporters/__tests__/exception/svg-direction-exception.test.js +45 -0
  102. package/lib/exporters/__tests__/exception/svg-direction-exception.test.js.map +1 -0
  103. package/lib/exporters/__tests__/png-export-image/export-test-def.d.ts +11 -0
  104. package/lib/exporters/__tests__/png-export-image/export-test-def.d.ts.map +1 -0
  105. package/lib/exporters/__tests__/png-export-image/export-test-def.js +6 -0
  106. package/lib/exporters/__tests__/png-export-image/export-test-def.js.map +1 -0
  107. package/lib/exporters/__tests__/png-export-image/export.test.d.ts +3 -0
  108. package/lib/exporters/__tests__/png-export-image/export.test.d.ts.map +1 -0
  109. package/lib/exporters/__tests__/png-export-image/export.test.js +17 -0
  110. package/lib/exporters/__tests__/png-export-image/export.test.js.map +1 -0
  111. package/lib/exporters/__tests__/png-export-image/test-defs/png-createPNG.d.ts +3 -0
  112. package/lib/exporters/__tests__/png-export-image/test-defs/png-createPNG.d.ts.map +1 -0
  113. package/lib/exporters/__tests__/png-export-image/test-defs/png-createPNG.js +33 -0
  114. package/lib/exporters/__tests__/png-export-image/test-defs/png-createPNG.js.map +1 -0
  115. package/lib/exporters/__tests__/react-svg-export-image/export-test-def.d.ts +12 -0
  116. package/lib/exporters/__tests__/react-svg-export-image/export-test-def.d.ts.map +1 -0
  117. package/lib/exporters/__tests__/react-svg-export-image/export-test-def.js +6 -0
  118. package/lib/exporters/__tests__/react-svg-export-image/export-test-def.js.map +1 -0
  119. package/lib/exporters/__tests__/react-svg-export-image/export.test.d.ts +3 -0
  120. package/lib/exporters/__tests__/react-svg-export-image/export.test.d.ts.map +1 -0
  121. package/lib/exporters/__tests__/react-svg-export-image/export.test.js +17 -0
  122. package/lib/exporters/__tests__/react-svg-export-image/export.test.js.map +1 -0
  123. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-binary-png.d.ts +3 -0
  124. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-binary-png.d.ts.map +1 -0
  125. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-binary-png.js +33 -0
  126. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-binary-png.js.map +1 -0
  127. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-binary.d.ts +3 -0
  128. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-binary.d.ts.map +1 -0
  129. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-binary.js +33 -0
  130. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-binary.js.map +1 -0
  131. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-callback.d.ts +3 -0
  132. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-callback.d.ts.map +1 -0
  133. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-callback.js +59 -0
  134. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-callback.js.map +1 -0
  135. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-ellipse.d.ts +3 -0
  136. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-ellipse.d.ts.map +1 -0
  137. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-ellipse.js +34 -0
  138. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-ellipse.js.map +1 -0
  139. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-empty-text.d.ts +3 -0
  140. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-empty-text.d.ts.map +1 -0
  141. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-empty-text.js +34 -0
  142. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-empty-text.js.map +1 -0
  143. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-group.d.ts +3 -0
  144. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-group.d.ts.map +1 -0
  145. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-group.js +37 -0
  146. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-group.js.map +1 -0
  147. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-line.d.ts +3 -0
  148. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-line.d.ts.map +1 -0
  149. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-line.js +34 -0
  150. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-line.js.map +1 -0
  151. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-polygon.d.ts +3 -0
  152. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-polygon.d.ts.map +1 -0
  153. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-polygon.js +40 -0
  154. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-polygon.js.map +1 -0
  155. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-polyline.d.ts +3 -0
  156. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-polyline.d.ts.map +1 -0
  157. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-polyline.js +42 -0
  158. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-polyline.js.map +1 -0
  159. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-rectangle.d.ts +3 -0
  160. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-rectangle.d.ts.map +1 -0
  161. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-rectangle.js +34 -0
  162. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-rectangle.js.map +1 -0
  163. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-subimage.d.ts +3 -0
  164. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-subimage.d.ts.map +1 -0
  165. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-subimage.js +33 -0
  166. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-subimage.js.map +1 -0
  167. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-bold.d.ts +3 -0
  168. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-bold.d.ts.map +1 -0
  169. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-bold.js +35 -0
  170. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-bold.js.map +1 -0
  171. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-growth-directions.d.ts +3 -0
  172. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-growth-directions.d.ts.map +1 -0
  173. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-growth-directions.js +37 -0
  174. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-growth-directions.js.map +1 -0
  175. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-italic.d.ts +3 -0
  176. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-italic.d.ts.map +1 -0
  177. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-italic.js +36 -0
  178. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-italic.js.map +1 -0
  179. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-sub.d.ts +3 -0
  180. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-sub.d.ts.map +1 -0
  181. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-sub.js +34 -0
  182. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-sub.js.map +1 -0
  183. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text.d.ts +3 -0
  184. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text.d.ts.map +1 -0
  185. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text.js +34 -0
  186. package/lib/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text.js.map +1 -0
  187. package/lib/exporters/__tests__/svg-export-image/export-test-def.d.ts +11 -0
  188. package/lib/exporters/__tests__/svg-export-image/export-test-def.d.ts.map +1 -0
  189. package/lib/exporters/__tests__/svg-export-image/export-test-def.js +6 -0
  190. package/lib/exporters/__tests__/svg-export-image/export-test-def.js.map +1 -0
  191. package/lib/exporters/__tests__/svg-export-image/export.test.d.ts +3 -0
  192. package/lib/exporters/__tests__/svg-export-image/export.test.d.ts.map +1 -0
  193. package/lib/exporters/__tests__/svg-export-image/export.test.js +17 -0
  194. package/lib/exporters/__tests__/svg-export-image/export.test.js.map +1 -0
  195. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-binary.d.ts +3 -0
  196. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-binary.d.ts.map +1 -0
  197. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-binary.js +33 -0
  198. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-binary.js.map +1 -0
  199. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-ellipse.d.ts +3 -0
  200. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-ellipse.d.ts.map +1 -0
  201. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-ellipse.js +34 -0
  202. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-ellipse.js.map +1 -0
  203. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-empty-text.d.ts +3 -0
  204. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-empty-text.d.ts.map +1 -0
  205. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-empty-text.js +34 -0
  206. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-empty-text.js.map +1 -0
  207. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-group.d.ts +3 -0
  208. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-group.d.ts.map +1 -0
  209. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-group.js +37 -0
  210. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-group.js.map +1 -0
  211. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-line.d.ts +3 -0
  212. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-line.d.ts.map +1 -0
  213. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-line.js +34 -0
  214. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-line.js.map +1 -0
  215. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-polygon.d.ts +3 -0
  216. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-polygon.d.ts.map +1 -0
  217. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-polygon.js +40 -0
  218. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-polygon.js.map +1 -0
  219. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-polyline.d.ts +3 -0
  220. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-polyline.d.ts.map +1 -0
  221. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-polyline.js +42 -0
  222. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-polyline.js.map +1 -0
  223. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-rectangle.d.ts +3 -0
  224. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-rectangle.d.ts.map +1 -0
  225. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-rectangle.js +34 -0
  226. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-rectangle.js.map +1 -0
  227. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text-bold.d.ts +3 -0
  228. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text-bold.d.ts.map +1 -0
  229. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text-bold.js +35 -0
  230. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text-bold.js.map +1 -0
  231. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text-growth-directions.d.ts +3 -0
  232. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text-growth-directions.d.ts.map +1 -0
  233. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text-growth-directions.js +37 -0
  234. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text-growth-directions.js.map +1 -0
  235. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text-italic.d.ts +3 -0
  236. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text-italic.d.ts.map +1 -0
  237. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text-italic.js +36 -0
  238. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text-italic.js.map +1 -0
  239. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text.d.ts +3 -0
  240. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text.d.ts.map +1 -0
  241. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text.js +34 -0
  242. package/lib/exporters/__tests__/svg-export-image/test-defs/svg-text.js.map +1 -0
  243. package/lib/exporters/react-svg-export-image.js +2 -2
  244. package/lib/exporters/react-svg-export-image.js.map +1 -1
  245. package/lib/model/__tests__/color/export-test-def.d.ts +12 -0
  246. package/lib/model/__tests__/color/export-test-def.d.ts.map +1 -0
  247. package/lib/model/__tests__/color/export-test-def.js +6 -0
  248. package/lib/model/__tests__/color/export-test-def.js.map +1 -0
  249. package/lib/model/__tests__/color/export.test.d.ts +3 -0
  250. package/lib/model/__tests__/color/export.test.d.ts.map +1 -0
  251. package/lib/model/__tests__/color/export.test.js +18 -0
  252. package/lib/model/__tests__/color/export.test.js.map +1 -0
  253. package/lib/model/__tests__/color/test-defs/color-from-string.d.ts +3 -0
  254. package/lib/model/__tests__/color/test-defs/color-from-string.d.ts.map +1 -0
  255. package/lib/model/__tests__/color/test-defs/color-from-string.js +65 -0
  256. package/lib/model/__tests__/color/test-defs/color-from-string.js.map +1 -0
  257. package/lib/model/__tests__/color/test-defs/color-to-string.d.ts +3 -0
  258. package/lib/model/__tests__/color/test-defs/color-to-string.d.ts.map +1 -0
  259. package/lib/model/__tests__/color/test-defs/color-to-string.js +54 -0
  260. package/lib/model/__tests__/color/test-defs/color-to-string.js.map +1 -0
  261. package/lib/model/__tests__/color/test-defs/color-undefined-2.d.ts +3 -0
  262. package/lib/model/__tests__/color/test-defs/color-undefined-2.d.ts.map +1 -0
  263. package/lib/model/__tests__/color/test-defs/color-undefined-2.js +29 -0
  264. package/lib/model/__tests__/color/test-defs/color-undefined-2.js.map +1 -0
  265. package/lib/model/__tests__/color/test-defs/color-undefined.d.ts +3 -0
  266. package/lib/model/__tests__/color/test-defs/color-undefined.d.ts.map +1 -0
  267. package/lib/model/__tests__/color/test-defs/color-undefined.js +29 -0
  268. package/lib/model/__tests__/color/test-defs/color-undefined.js.map +1 -0
  269. package/lib/model/component.d.ts +3 -2
  270. package/lib/model/component.d.ts.map +1 -1
  271. package/lib/model/component.js +12 -11
  272. package/lib/model/component.js.map +1 -1
  273. package/package.json +2 -2
  274. package/src/__stories__/react-svg-export/example-1.stories.tsx +54 -53
  275. package/src/__stories__/svg-export/example-1.stories.tsx +42 -42
  276. package/src/exporters/__tests__/dxf2d-export-image/export-test-def.ts +11 -0
  277. package/src/exporters/__tests__/dxf2d-export-image/export.test.tsx +13 -0
  278. package/src/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-ellipse.ts +405 -0
  279. package/src/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-group.ts +166 -0
  280. package/src/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-line.ts +80 -0
  281. package/src/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-polygon.ts +114 -0
  282. package/src/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-polyline.ts +103 -0
  283. package/src/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-rectangle.ts +125 -0
  284. package/src/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-text-growth-directions.ts +214 -0
  285. package/src/exporters/__tests__/dxf2d-export-image/test-defs/dxf2d-text.ts +97 -0
  286. package/src/exporters/__tests__/eps-export-image/export-test-def.ts +11 -0
  287. package/src/exporters/__tests__/eps-export-image/export.test.tsx +13 -0
  288. package/src/exporters/__tests__/eps-export-image/test-defs/eps-ellipse.ts +50 -0
  289. package/src/exporters/__tests__/eps-export-image/test-defs/eps-empty-text.ts +60 -0
  290. package/src/exporters/__tests__/eps-export-image/test-defs/eps-group.ts +74 -0
  291. package/src/exporters/__tests__/eps-export-image/test-defs/eps-line.ts +45 -0
  292. package/src/exporters/__tests__/eps-export-image/test-defs/eps-polygon.ts +65 -0
  293. package/src/exporters/__tests__/eps-export-image/test-defs/eps-polyline.ts +58 -0
  294. package/src/exporters/__tests__/eps-export-image/test-defs/eps-rectangle.ts +46 -0
  295. package/src/exporters/__tests__/eps-export-image/test-defs/eps-text-growth-directions.ts +138 -0
  296. package/src/exporters/__tests__/eps-export-image/test-defs/eps-text.ts +60 -0
  297. package/src/exporters/__tests__/exception/png-unsupported.test.tsx +25 -0
  298. package/src/exporters/__tests__/exception/react-svg-direction-exception.test.tsx +65 -0
  299. package/src/exporters/__tests__/exception/svg-direction-exception.test.tsx +65 -0
  300. package/src/exporters/__tests__/png-export-image/export-test-def.ts +11 -0
  301. package/src/exporters/__tests__/png-export-image/export.test.tsx +13 -0
  302. package/src/exporters/__tests__/png-export-image/test-defs/png-createPNG.tsx +26 -0
  303. package/src/exporters/__tests__/react-svg-export-image/export-test-def.tsx +13 -0
  304. package/src/exporters/__tests__/react-svg-export-image/export.test.tsx +13 -0
  305. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-binary-png.tsx +27 -0
  306. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-binary.tsx +26 -0
  307. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-callback.tsx +60 -0
  308. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-ellipse.tsx +28 -0
  309. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-empty-text.tsx +35 -0
  310. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-group.tsx +44 -0
  311. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-line.tsx +26 -0
  312. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-polygon.tsx +32 -0
  313. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-polyline.tsx +33 -0
  314. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-rectangle.tsx +27 -0
  315. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-subimage.tsx +36 -0
  316. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-bold.tsx +50 -0
  317. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-growth-directions.tsx +80 -0
  318. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-italic.tsx +65 -0
  319. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text-sub.tsx +35 -0
  320. package/src/exporters/__tests__/react-svg-export-image/test-defs/react-svg-text.tsx +35 -0
  321. package/src/exporters/__tests__/svg-export-image/export-test-def.ts +11 -0
  322. package/src/exporters/__tests__/svg-export-image/export.test.tsx +13 -0
  323. package/src/exporters/__tests__/svg-export-image/test-defs/svg-binary.tsx +26 -0
  324. package/src/exporters/__tests__/svg-export-image/test-defs/svg-ellipse.ts +27 -0
  325. package/src/exporters/__tests__/svg-export-image/test-defs/svg-empty-text.ts +34 -0
  326. package/src/exporters/__tests__/svg-export-image/test-defs/svg-group.ts +44 -0
  327. package/src/exporters/__tests__/svg-export-image/test-defs/svg-line.ts +26 -0
  328. package/src/exporters/__tests__/svg-export-image/test-defs/svg-polygon.ts +32 -0
  329. package/src/exporters/__tests__/svg-export-image/test-defs/svg-polyline.ts +33 -0
  330. package/src/exporters/__tests__/svg-export-image/test-defs/svg-rectangle.ts +27 -0
  331. package/src/exporters/__tests__/svg-export-image/test-defs/svg-text-bold.ts +50 -0
  332. package/src/exporters/__tests__/svg-export-image/test-defs/svg-text-growth-directions.ts +80 -0
  333. package/src/exporters/__tests__/svg-export-image/test-defs/svg-text-italic.ts +65 -0
  334. package/src/exporters/__tests__/svg-export-image/test-defs/svg-text.ts +35 -0
  335. package/src/exporters/dxf2d-export-image.ts +218 -218
  336. package/src/exporters/eps-export-image.ts +154 -154
  337. package/src/exporters/index.ts +3 -3
  338. package/src/exporters/png-export-image.ts +12 -12
  339. package/src/exporters/react-svg-export-image.tsx +298 -298
  340. package/src/exporters/svg-export-image.ts +334 -334
  341. package/src/index.ts +11 -11
  342. package/src/model/__tests__/color/export-test-def.ts +13 -0
  343. package/src/model/__tests__/color/export.test.tsx +14 -0
  344. package/src/model/__tests__/color/test-defs/color-from-string.ts +46 -0
  345. package/src/model/__tests__/color/test-defs/color-to-string.ts +35 -0
  346. package/src/model/__tests__/color/test-defs/color-undefined-2.ts +8 -0
  347. package/src/model/__tests__/color/test-defs/color-undefined.ts +8 -0
  348. package/src/model/abstract-image.ts +25 -25
  349. package/src/model/color.ts +52 -52
  350. package/src/model/component.ts +266 -279
  351. package/src/model/index.ts +5 -5
  352. package/src/model/point.ts +11 -11
  353. package/src/model/size.ts +11 -11
  354. package/lib/exporters/__tests__/svg-export-image.test.d.ts +0 -2
  355. package/lib/exporters/__tests__/svg-export-image.test.d.ts.map +0 -1
  356. package/lib/exporters/__tests__/svg-export-image.test.js.map +0 -1
  357. package/src/exporters/__tests__/svg-export-image.test.ts +0 -30
@@ -0,0 +1,74 @@
1
+ import { ExportTestDef } from "../export-test-def";
2
+ import * as AbstractImage from "../../../../../src/index";
3
+
4
+ const components = [
5
+ AbstractImage.createGroup("group", [
6
+ AbstractImage.createText(
7
+ AbstractImage.createPoint(200, 200),
8
+ "Test",
9
+ "Helvetica",
10
+ 12,
11
+ AbstractImage.black,
12
+ "normal",
13
+ 0,
14
+ "center",
15
+ "uniform",
16
+ "uniform",
17
+ 0,
18
+ AbstractImage.black,
19
+ false
20
+ ),
21
+ AbstractImage.createRectangle(
22
+ AbstractImage.createPoint(10, 50),
23
+ AbstractImage.createPoint(50, 60),
24
+ AbstractImage.blue,
25
+ 2,
26
+ AbstractImage.red
27
+ ),
28
+ ]),
29
+ ];
30
+ const image = AbstractImage.createAbstractImage(
31
+ AbstractImage.createPoint(0, 0),
32
+ AbstractImage.createSize(400, 400),
33
+ AbstractImage.white,
34
+ components
35
+ );
36
+
37
+ const eps = AbstractImage.epsExportImage(image);
38
+
39
+ export const test: ExportTestDef = {
40
+ name: "eps group",
41
+ abstractImage: eps,
42
+ expectedImage: `%!PS-Adobe-3.0 EPSF-3.0
43
+ %%BoundingBox: 0 0 400 400
44
+ /ellipse {7 dict begin
45
+ /endangle exch def
46
+ /startangle exch def
47
+ /yradius exch def
48
+ /xradius exch def
49
+ /yC exch def
50
+ /xC exch def
51
+ /savematrix matrix currentmatrix def
52
+ xC yC translate
53
+ xradius yradius scale
54
+ 0 0 1 startangle endangle arc
55
+ savematrix setmatrix
56
+ end
57
+ } def
58
+ 0 0 0 setrgbcolor
59
+ gsave
60
+ /Helvetica findfont
61
+ 12 scalefont setfont
62
+ 200 200 moveto
63
+ (Test) stringwidth pop neg 0.5 mul
64
+ gsave (Test) true charpath pathbbox exch pop 3 -1 roll pop sub 0.5 mul grestore
65
+ rmoveto
66
+ 0 rotate
67
+ (Test) show
68
+ grestore
69
+ 1 0 0 setrgbcolor
70
+ 10 340 40 10 rectfill
71
+ 0 0 1 setrgbcolor
72
+ 2 setlinewidth
73
+ 10 340 40 10 rectstroke`,
74
+ };
@@ -0,0 +1,45 @@
1
+ import { ExportTestDef } from "../export-test-def";
2
+ import * as AbstractImage from "../../../../../src/index";
3
+
4
+ const components = [
5
+ AbstractImage.createLine(
6
+ AbstractImage.createPoint(10, 100),
7
+ AbstractImage.createPoint(40, 70),
8
+ AbstractImage.black,
9
+ 2
10
+ ),
11
+ ];
12
+ const image = AbstractImage.createAbstractImage(
13
+ AbstractImage.createPoint(0, 0),
14
+ AbstractImage.createSize(400, 400),
15
+ AbstractImage.white,
16
+ components
17
+ );
18
+
19
+ const eps = AbstractImage.epsExportImage(image);
20
+
21
+ export const test: ExportTestDef = {
22
+ name: "eps line",
23
+ abstractImage: eps,
24
+ expectedImage: `%!PS-Adobe-3.0 EPSF-3.0
25
+ %%BoundingBox: 0 0 400 400
26
+ /ellipse {7 dict begin
27
+ /endangle exch def
28
+ /startangle exch def
29
+ /yradius exch def
30
+ /xradius exch def
31
+ /yC exch def
32
+ /xC exch def
33
+ /savematrix matrix currentmatrix def
34
+ xC yC translate
35
+ xradius yradius scale
36
+ 0 0 1 startangle endangle arc
37
+ savematrix setmatrix
38
+ end
39
+ } def
40
+ 0 0 0 setrgbcolor
41
+ 10 300 moveto
42
+ 40 330 lineto
43
+ 2 setlinewidth
44
+ stroke`,
45
+ };
@@ -0,0 +1,65 @@
1
+ import { ExportTestDef } from "../export-test-def";
2
+ import * as AbstractImage from "../../../../../src/index";
3
+
4
+ const components = [
5
+ AbstractImage.createPolygon(
6
+ [
7
+ AbstractImage.createPoint(110, 10),
8
+ AbstractImage.createPoint(100, 20),
9
+ AbstractImage.createPoint(110, 30),
10
+ AbstractImage.createPoint(100, 40),
11
+ AbstractImage.createPoint(110, 50),
12
+ ],
13
+ AbstractImage.blue,
14
+ 2,
15
+ AbstractImage.red
16
+ ),
17
+ ];
18
+ const image = AbstractImage.createAbstractImage(
19
+ AbstractImage.createPoint(0, 0),
20
+ AbstractImage.createSize(400, 400),
21
+ AbstractImage.white,
22
+ components
23
+ );
24
+
25
+ const eps = AbstractImage.epsExportImage(image);
26
+
27
+ export const test: ExportTestDef = {
28
+ name: "eps polygon",
29
+ abstractImage: eps,
30
+ expectedImage: `%!PS-Adobe-3.0 EPSF-3.0
31
+ %%BoundingBox: 0 0 400 400
32
+ /ellipse {7 dict begin
33
+ /endangle exch def
34
+ /startangle exch def
35
+ /yradius exch def
36
+ /xradius exch def
37
+ /yC exch def
38
+ /xC exch def
39
+ /savematrix matrix currentmatrix def
40
+ xC yC translate
41
+ xradius yradius scale
42
+ 0 0 1 startangle endangle arc
43
+ savematrix setmatrix
44
+ end
45
+ } def
46
+ 1 0 0 setrgbcolor
47
+ 110 390 moveto
48
+ 110 390 lineto
49
+ 100 380 lineto
50
+ 110 370 lineto
51
+ 100 360 lineto
52
+ 110 350 lineto
53
+ closepath
54
+ 2 setlinewidth
55
+ fill
56
+ 0 0 1 setrgbcolor
57
+ 110 390 moveto
58
+ 110 390 lineto
59
+ 100 380 lineto
60
+ 110 370 lineto
61
+ 100 360 lineto
62
+ 110 350 lineto
63
+ closepath
64
+ stroke`,
65
+ };
@@ -0,0 +1,58 @@
1
+ import { ExportTestDef } from "../export-test-def";
2
+ import * as AbstractImage from "../../../../../src/index";
3
+
4
+ const components = [
5
+ AbstractImage.createPolyLine(
6
+ [
7
+ AbstractImage.createPoint(10, 40),
8
+ AbstractImage.createPoint(20, 30),
9
+ AbstractImage.createPoint(30, 40),
10
+ AbstractImage.createPoint(40, 30),
11
+ AbstractImage.createPoint(50, 40),
12
+ AbstractImage.createPoint(60, 30),
13
+ AbstractImage.createPoint(70, 40),
14
+ ],
15
+ AbstractImage.black,
16
+ 2
17
+ ),
18
+ ];
19
+ const image = AbstractImage.createAbstractImage(
20
+ AbstractImage.createPoint(0, 0),
21
+ AbstractImage.createSize(400, 400),
22
+ AbstractImage.white,
23
+ components
24
+ );
25
+
26
+ const eps = AbstractImage.epsExportImage(image);
27
+
28
+ export const test: ExportTestDef = {
29
+ name: "eps polyline",
30
+ abstractImage: eps,
31
+ expectedImage: `%!PS-Adobe-3.0 EPSF-3.0
32
+ %%BoundingBox: 0 0 400 400
33
+ /ellipse {7 dict begin
34
+ /endangle exch def
35
+ /startangle exch def
36
+ /yradius exch def
37
+ /xradius exch def
38
+ /yC exch def
39
+ /xC exch def
40
+ /savematrix matrix currentmatrix def
41
+ xC yC translate
42
+ xradius yradius scale
43
+ 0 0 1 startangle endangle arc
44
+ savematrix setmatrix
45
+ end
46
+ } def
47
+ 0 0 0 setrgbcolor
48
+ 10 360 moveto
49
+ 10 360 lineto
50
+ 20 370 lineto
51
+ 30 360 lineto
52
+ 40 370 lineto
53
+ 50 360 lineto
54
+ 60 370 lineto
55
+ 70 360 lineto
56
+ 2 setlinewidth
57
+ stroke`,
58
+ };
@@ -0,0 +1,46 @@
1
+ import { ExportTestDef } from "../export-test-def";
2
+ import * as AbstractImage from "../../../../../src/index";
3
+
4
+ const components = [
5
+ AbstractImage.createRectangle(
6
+ AbstractImage.createPoint(10, 50),
7
+ AbstractImage.createPoint(50, 60),
8
+ AbstractImage.blue,
9
+ 2,
10
+ AbstractImage.red
11
+ ),
12
+ ];
13
+ const image = AbstractImage.createAbstractImage(
14
+ AbstractImage.createPoint(0, 0),
15
+ AbstractImage.createSize(400, 400),
16
+ AbstractImage.white,
17
+ components
18
+ );
19
+
20
+ const eps = AbstractImage.epsExportImage(image);
21
+
22
+ export const test: ExportTestDef = {
23
+ name: "eps rectangle",
24
+ abstractImage: eps,
25
+ expectedImage: `%!PS-Adobe-3.0 EPSF-3.0
26
+ %%BoundingBox: 0 0 400 400
27
+ /ellipse {7 dict begin
28
+ /endangle exch def
29
+ /startangle exch def
30
+ /yradius exch def
31
+ /xradius exch def
32
+ /yC exch def
33
+ /xC exch def
34
+ /savematrix matrix currentmatrix def
35
+ xC yC translate
36
+ xradius yradius scale
37
+ 0 0 1 startangle endangle arc
38
+ savematrix setmatrix
39
+ end
40
+ } def
41
+ 1 0 0 setrgbcolor
42
+ 10 340 40 10 rectfill
43
+ 0 0 1 setrgbcolor
44
+ 2 setlinewidth
45
+ 10 340 40 10 rectstroke`,
46
+ };
@@ -0,0 +1,138 @@
1
+ import { ExportTestDef } from "../export-test-def";
2
+ import * as AbstractImage from "../../../../../src/index";
3
+
4
+ const components = [
5
+ AbstractImage.createText(
6
+ AbstractImage.createPoint(10, 10),
7
+ "Hello World",
8
+ "Arial",
9
+ 12,
10
+ AbstractImage.black,
11
+ "bold",
12
+ 0,
13
+ "center",
14
+ "left",
15
+ "up",
16
+ 2,
17
+ AbstractImage.red,
18
+ false
19
+ ),
20
+ AbstractImage.createText(
21
+ AbstractImage.createPoint(10, 30),
22
+ "Hello World",
23
+ "Arial",
24
+ 12,
25
+ AbstractImage.black,
26
+ "bold",
27
+ 0,
28
+ "center",
29
+ "uniform",
30
+ "uniform",
31
+ 2,
32
+ AbstractImage.red,
33
+ false
34
+ ),
35
+ AbstractImage.createText(
36
+ AbstractImage.createPoint(10, 50),
37
+ "Hello World",
38
+ "Arial",
39
+ 12,
40
+ AbstractImage.black,
41
+ "bold",
42
+ 0,
43
+ "left",
44
+ "right",
45
+ "down",
46
+ 2,
47
+ AbstractImage.red,
48
+ false
49
+ ),
50
+ AbstractImage.createText(
51
+ AbstractImage.createPoint(10, 70),
52
+ "Hello World",
53
+ "Arial",
54
+ 12,
55
+ AbstractImage.black,
56
+ "bold",
57
+ 0,
58
+ "right",
59
+ "right",
60
+ "down",
61
+ 2,
62
+ AbstractImage.red,
63
+ false
64
+ ),
65
+ ];
66
+ const image = AbstractImage.createAbstractImage(
67
+ AbstractImage.createPoint(0, 0),
68
+ AbstractImage.createSize(400, 400),
69
+ AbstractImage.white,
70
+ components
71
+ );
72
+
73
+ const eps = AbstractImage.epsExportImage(image);
74
+
75
+ export const test: ExportTestDef = {
76
+ name: "eps text growth directions",
77
+ abstractImage: eps,
78
+ expectedImage: `%!PS-Adobe-3.0 EPSF-3.0
79
+ %%BoundingBox: 0 0 400 400
80
+ /ellipse {7 dict begin
81
+ /endangle exch def
82
+ /startangle exch def
83
+ /yradius exch def
84
+ /xradius exch def
85
+ /yC exch def
86
+ /xC exch def
87
+ /savematrix matrix currentmatrix def
88
+ xC yC translate
89
+ xradius yradius scale
90
+ 0 0 1 startangle endangle arc
91
+ savematrix setmatrix
92
+ end
93
+ } def
94
+ 0 0 0 setrgbcolor
95
+ gsave
96
+ /Arial findfont
97
+ 12 scalefont setfont
98
+ 10 390 moveto
99
+ (Hello World) stringwidth pop neg
100
+ 0
101
+ rmoveto
102
+ 0 rotate
103
+ (Hello World) show
104
+ grestore
105
+ 0 0 0 setrgbcolor
106
+ gsave
107
+ /Arial findfont
108
+ 12 scalefont setfont
109
+ 10 370 moveto
110
+ (Hello World) stringwidth pop neg 0.5 mul
111
+ gsave (Hello World) true charpath pathbbox exch pop 3 -1 roll pop sub 0.5 mul grestore
112
+ rmoveto
113
+ 0 rotate
114
+ (Hello World) show
115
+ grestore
116
+ 0 0 0 setrgbcolor
117
+ gsave
118
+ /Arial findfont
119
+ 12 scalefont setfont
120
+ 10 350 moveto
121
+ 0
122
+ gsave (Hello World) true charpath pathbbox exch pop 3 -1 roll pop sub grestore
123
+ rmoveto
124
+ 0 rotate
125
+ (Hello World) show
126
+ grestore
127
+ 0 0 0 setrgbcolor
128
+ gsave
129
+ /Arial findfont
130
+ 12 scalefont setfont
131
+ 10 330 moveto
132
+ 0
133
+ gsave (Hello World) true charpath pathbbox exch pop 3 -1 roll pop sub grestore
134
+ rmoveto
135
+ 0 rotate
136
+ (Hello World) show
137
+ grestore`,
138
+ };
@@ -0,0 +1,60 @@
1
+ import { ExportTestDef } from "../export-test-def";
2
+ import * as AbstractImage from "../../../../../src/index";
3
+
4
+ const components = [
5
+ AbstractImage.createText(
6
+ AbstractImage.createPoint(10, 10),
7
+ "Hello World",
8
+ "Arial",
9
+ 12,
10
+ AbstractImage.black,
11
+ "bold",
12
+ 0,
13
+ "center",
14
+ "right",
15
+ "down",
16
+ 2,
17
+ AbstractImage.red,
18
+ false
19
+ ),
20
+ ];
21
+ const image = AbstractImage.createAbstractImage(
22
+ AbstractImage.createPoint(0, 0),
23
+ AbstractImage.createSize(400, 400),
24
+ AbstractImage.white,
25
+ components
26
+ );
27
+
28
+ const eps = AbstractImage.epsExportImage(image);
29
+
30
+ export const test: ExportTestDef = {
31
+ name: "eps text",
32
+ abstractImage: eps,
33
+ expectedImage: `%!PS-Adobe-3.0 EPSF-3.0
34
+ %%BoundingBox: 0 0 400 400
35
+ /ellipse {7 dict begin
36
+ /endangle exch def
37
+ /startangle exch def
38
+ /yradius exch def
39
+ /xradius exch def
40
+ /yC exch def
41
+ /xC exch def
42
+ /savematrix matrix currentmatrix def
43
+ xC yC translate
44
+ xradius yradius scale
45
+ 0 0 1 startangle endangle arc
46
+ savematrix setmatrix
47
+ end
48
+ } def
49
+ 0 0 0 setrgbcolor
50
+ gsave
51
+ /Arial findfont
52
+ 12 scalefont setfont
53
+ 10 390 moveto
54
+ 0
55
+ gsave (Hello World) true charpath pathbbox exch pop 3 -1 roll pop sub grestore
56
+ rmoveto
57
+ 0 rotate
58
+ (Hello World) show
59
+ grestore`,
60
+ };
@@ -0,0 +1,25 @@
1
+ import * as AbstractImage from "../../../../src/index";
2
+
3
+ const pngEncoded =
4
+ "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";
5
+
6
+ const binaryImage = AbstractImage.createBinaryImage(
7
+ AbstractImage.createPoint(0, 0),
8
+ AbstractImage.createPoint(400, 400),
9
+ "png",
10
+ Buffer.from(pngEncoded, "base64")
11
+ );
12
+ const abstractImage = AbstractImage.createAbstractImage(
13
+ AbstractImage.createPoint(0, 0),
14
+ AbstractImage.createSize(400, 400),
15
+ AbstractImage.white,
16
+ [binaryImage, binaryImage]
17
+ );
18
+
19
+ describe("svg text unknown direction", () => {
20
+ it("should throw an exception", () => {
21
+ expect(() => {
22
+ const png = AbstractImage.createPNG(abstractImage);
23
+ }).toThrow("Not supported!");
24
+ });
25
+ });
@@ -0,0 +1,65 @@
1
+ import * as AbstractImage from "../../../../src/index";
2
+
3
+ describe("react svg text unknown direction", () => {
4
+ it("should throw an exception", () => {
5
+ expect(() => {
6
+ const components = [
7
+ AbstractImage.createText(
8
+ AbstractImage.createPoint(10, 10),
9
+ "Hello World",
10
+ "Arial",
11
+ 12,
12
+ AbstractImage.black,
13
+ "bold",
14
+ 0,
15
+ "center",
16
+ "down",
17
+ "down",
18
+ 2,
19
+ AbstractImage.red,
20
+ false
21
+ ),
22
+ ];
23
+ const image = AbstractImage.createAbstractImage(
24
+ AbstractImage.createPoint(0, 0),
25
+ AbstractImage.createSize(400, 400),
26
+ AbstractImage.white,
27
+ components
28
+ );
29
+
30
+ const svg = AbstractImage.createReactSvg(image);
31
+ }).toThrow("Unknown text alignment down");
32
+ });
33
+ });
34
+
35
+ describe("react svg text unknown direction", () => {
36
+ it("should throw an exception", () => {
37
+ expect(() => {
38
+ const components = [
39
+ AbstractImage.createText(
40
+ AbstractImage.createPoint(10, 10),
41
+ "Hello World",
42
+ "Arial",
43
+ 12,
44
+ AbstractImage.black,
45
+ "bold",
46
+ 0,
47
+ "center",
48
+ "right",
49
+ "right",
50
+ 2,
51
+ AbstractImage.red,
52
+ false
53
+ ),
54
+ ];
55
+ const image = AbstractImage.createAbstractImage(
56
+ AbstractImage.createPoint(0, 0),
57
+ AbstractImage.createSize(400, 400),
58
+ AbstractImage.white,
59
+ components
60
+ );
61
+
62
+ const svg = AbstractImage.createReactSvg(image);
63
+ }).toThrow("Unknown text alignment right");
64
+ });
65
+ });
@@ -0,0 +1,65 @@
1
+ import * as AbstractImage from "../../../../src/index";
2
+
3
+ describe("svg text unknown direction", () => {
4
+ it("should throw an exception", () => {
5
+ expect(() => {
6
+ const components = [
7
+ AbstractImage.createText(
8
+ AbstractImage.createPoint(10, 10),
9
+ "Hello World",
10
+ "Arial",
11
+ 12,
12
+ AbstractImage.black,
13
+ "bold",
14
+ 0,
15
+ "center",
16
+ "down",
17
+ "down",
18
+ 2,
19
+ AbstractImage.red,
20
+ false
21
+ ),
22
+ ];
23
+ const image = AbstractImage.createAbstractImage(
24
+ AbstractImage.createPoint(0, 0),
25
+ AbstractImage.createSize(400, 400),
26
+ AbstractImage.white,
27
+ components
28
+ );
29
+
30
+ const svg = AbstractImage.createSVG(image);
31
+ }).toThrow("Unknown text alignment down");
32
+ });
33
+ });
34
+
35
+ describe("svg text unknown direction", () => {
36
+ it("should throw an exception", () => {
37
+ expect(() => {
38
+ const components = [
39
+ AbstractImage.createText(
40
+ AbstractImage.createPoint(10, 10),
41
+ "Hello World",
42
+ "Arial",
43
+ 12,
44
+ AbstractImage.black,
45
+ "bold",
46
+ 0,
47
+ "center",
48
+ "right",
49
+ "right",
50
+ 2,
51
+ AbstractImage.red,
52
+ false
53
+ ),
54
+ ];
55
+ const image = AbstractImage.createAbstractImage(
56
+ AbstractImage.createPoint(0, 0),
57
+ AbstractImage.createSize(400, 400),
58
+ AbstractImage.white,
59
+ components
60
+ );
61
+
62
+ const svg = AbstractImage.createSVG(image);
63
+ }).toThrow("Unknown text alignment right");
64
+ });
65
+ });
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Defines a data-type that represents a single test for the Docx render function
3
+ */
4
+
5
+ export type ExportTestDef = {
6
+ readonly name: string;
7
+ readonly only?: boolean;
8
+ readonly skip?: boolean;
9
+ readonly abstractImage: string;
10
+ readonly expectedImage: string;
11
+ };
@@ -0,0 +1,13 @@
1
+ import path from "path";
2
+ import { loadTests, onlySkip } from "@abstract-visuals/test-utils";
3
+ import { ExportTestDef } from "./export-test-def";
4
+
5
+ export const tests = loadTests<ExportTestDef>(path.join(__dirname, "test-defs/"));
6
+
7
+ describe("png-export-image", () => {
8
+ onlySkip(tests).forEach((item) => {
9
+ test(item.name, async () => {
10
+ expect(item.abstractImage).toEqual(item.expectedImage);
11
+ });
12
+ });
13
+ });