Version 2.0.0

Version 2.0.0 introduces the VsdxIO class, which provides a more powerful API than VsdxExport. It allows you to render multiple diagrams into a single VSDX file, gives better control over the diagram position, and can parse and modify existing VSDX files.

  • The semantics of the VsdxExportConfiguration.scale property changed. Previously, it scaled the entire page coordinate system including the margins and pageSize properties. Now, it will only scale the diagram itself and not the margins and pageSize. This allows for better control over the margins, pageSize and diagram position.

  • When providing a VsdxExportConfiguration.pageSize in combination with VsdxExport, the diagram will now be scaled to fit the page.

  • The new VsdxIO class allows to render multiple diagrams on one or multiple VSDX pages. It also allows parsing and extending existing VSDX files.

  • Removed the dependencies on the Node.js built-in module fs, making stubbing it with Webpack or other build tools obsolete.

  • All properties of the DocumentSettings element are now serialized with the correct name.

  • The VsdxExportConfiguration.margins property is no longer applied twice, thus the margins are no longer twice as large as specified. To keep the previous default behavior, the initial value of this property is now 60px instead of 30px.

  • Added missing required polyfills to the lib/polyfills file and documentation.

  • Added missing public API members Shape.nameId and Shape.master to typings and documentation.

  • The new Multi-Graph Demo shows how to render multiple diagrams into a single VSDX file using the new VsdxIO class.