Diagramming for JavaScript, V2.3

We are happy to share the newly added features to the latest version of MindFusion JavaScript diagramming library:

Styled text in nodes
You can use HTML-like formatting tags with the ShapeNode.EnableStyledText and apply various attributes to the node’s text. Currently JsDiagram supports:

  • <b> specifies bold text
  • <i> specifies italic text
  • <u> specifies underlined text
  • <color=value> specifies text color
  • <br /> specifies line break
Diagramming for JavaScript Library: Styled Text

Diagramming for JavaScript Library: Styled Text

Text rendering improvements

  • We have greatly improved the general text rendering quality. The component now removes scale transformations applied for MeasureUnit and ZoomFactor before drawing text on the canvas, and instead specifies a scaled font size, which helps improve text appearance in Firefox and older versions of Chrome.
  • You can draw the items’ text underlined. To enable this, set the underline attribute of the Font class.
  • You can specify Font styles via the Style instance by calling its setFontStyle() method with a combination of MindFusion.Drawing.FontStyle enumeration members (Bold, Italic, Underline).

Miscellaneous

  • You can draw items with dashed lines in browsers that support the setLineDash function. To enable this, set the StrokeDashStyle property of DiagramItem or Style to a member of the MindFusion.Drawing.DashStyle enumeration (Solid, Dash, Dot, DashDot, DashDotDot).
  • TreeLayout supports organizational charts with assistant nodes as in Microsoft Office diagrams. To mark nodes as assistants, set node.getLayoutTraits().treeLayoutAssistant to a member of the MindFusion.Graphs.AssistantType enumeration (Normal, Left, Right). Set treeLayout.enableAssistants = true; to arrange assistant nodes in a separate branch between the main node levels.
  • You can specify if separate connected components of a graph should be arranged horizontally or vertically relatively to each other by setting the multipleGraphsPlacement attribute of layout classes.
  • The type of LinkLabel.Margin property has been changed from number to Thickness, letting you specify different margin sizes at each side of the label.

You can download the trial version directly from the following link:

Download Diagramming for JavaScript, V2.3 Trial Version

We shall be glad to receive any comments, suggestions and feedback. You can write us at e-mail support@mindfusion.eu or use the help desk. You can use the JsDiagram section on MindFusion forum to post questions about the tool.

About Diagramming for JavaScript Library: Written 100% in JavaScript, this tool uses HTML5 Canvas to draw impressive diagrams, schemes, flowcharts, trees and many more. It is browser independent, easy to use and integrate into any web application. JsDiagram supports a variety of predefined node shapes, customizable links, rich event set and many appearance options.

The user interaction model includes resizing / moving / selecting and modifying any diagram element. The tool boasts an elegant API, which is documented in details as well numerous step-by-step guides and tutorials. Various samples are provided to let you learn quickly how to use the most important features of the library – check them here. JsDiagram is not only the perfect choice for creating any type of diagram in the browser – it can also arrange it the way you wish with a mouse click using one of its automatic graph layout algorithms. For more details about the features of the component, please visit the JsDiagram page.

Diagramming for Java Swing, V4.1.1

MindFusion has released a new version of its Diagramming component for Java. It contains a few new features as well improvements of existing ones. Here are details:

Improved arrowhead rendering

  • arrowheads are rendered as a single path when possible and several arrowhead Shape definitions have been changed to implement mitered joints when HeadPen is set to a thick pen.
  • the point where end segments connect to arrowheads can be specified via the Shape.LinkSegmentInset property. Shape definitions from the ArrowHeads class set it to suitable default value. This allows using transparent or semi-transparent brushes without seeing the link line drawn behind arrowheads.
  • arrowhead shadows are no longer filled if the link’s EffectiveBrush is null or fully transparent.
  • IntermediateShape is now also rendered for Bezier links.
New vs. old arrowheads rendering

New vs. old arrowheads rendering

Miscellaneous

  • Set the LinkLabel.Brush property to fill the background of link labels.
  • Multiple-resize of rotated nodes fixed to apply same offsets in nodes’ local coordinate system.
  • Fixed a bug where setting the CaptionBackBrush property of containers would hide the caption-bar borders.
  • Java 8 update 20 fix from this patch now included in released version.
Labels at links

Labels at links

The trial version is available for download from the following link:

Download MindFusion.Diagramming for Java Swing, V4.1.1 Trial Version

Technical support
MindFusion puts special effort in providing high quality technical support to all its clients and evaluators. You can post your questions about Diagramming for Java or any other of our components at the forum, help desk or at support@mindfusion.eu. All support inquiries are usually answered within hours of being received.

About Diagramming for Java Swing: MindFusion.Diagramming for Java Swing provides your Java application with all necessary functionality to create and customize a diagram. The library is very easy to integrate and program. There are numerous utility methods, rich event set, more than 100 predefined shapes. The tool supports a variety of ways to render or export the diagram, advanced node types like TreeView nodes, hierarchical nodes, tables, container nodes and many more. There are 15 automatic layouts, various input / output options and fully customizable appearance. A detailed list with JDiagram’s features is uploaded here. You can check the online demo to see some of the functionality implemented.

Diagramming for Java Swing is royalty free, there are no distribution fees. Licenses depend on the count of developers using the tool – check here the prices.

New Versions for Diagramming for ASP.NET, JavaScript and ASP.NET MVC

MindFusion has released new versions of its diagramming components for JavaScript, ASP.NET and ASP.NET MVC. The new features are almost identical and we list them below:

Zoom control
You can use the ZoomControl class to let users change interactively the current zoom level and scroll position of a DiagramView. First, add a ZoomControl element to the page and set the control’s TargetId property to the id of a DiagramView. Then set the ZoomStep and ScrollStep properties to specify the amount added to diagram’s zoom level or scroll position by ZoomControl’s buttons. You can customize the control’s appearance by setting properties such as Fill, BorderColor, CornerRadius and TickPosition.

Note: The Zoom control is not available in JavaApplet mode in Diagramming for ASP.NET.

The zoom control.

The zoom control.

Shadow styles
The Diagram.ShadowsStyle property and ShadowsStyle enumeration let you switch shadow rendering order between rendering all shadows in a single background layer (OneLevel) and drawing each shadow close to its node, possibly overlapping other nodes (ZOrder). ShadowsStyle.None lets you disable shadows altogether.

Miscellaneous

  • Set the LinkLabel.Brush property to fill the background of link labels.
  • Number of link segments can now be set by calling the DiagramLink.setSegmentCount() method.
  • The BackgroundImageAlign property specifies the alignment of diagram’s BackgroundImage.
  • The TextPadding property specifies the padding distance between the borders of a node and its text.
  • Nodes of all classes can be rotated.

You can download the trie versions of the components from the following links:

Download Diagramming for ASP.NET, V5.4

Download Diagramming for JavaScript, V2.2

Download Diagramming for ASP.NET MVC, V2.3

About Diagramming for JavaScript, ASP.NET and ASP.NET MVC: Web developers can use the tools to draw impressive diagrams, schemes, flowcharts, trees and many more. They are browser independent, easy to use and integrate into any web application. The components supports a variety of predefined node shapes, customizable links, rich event set and many appearance options.

The user interaction model includes resizing / moving / selecting and modifying any diagram element. The tools boast an elegant API, which is documented in details as well numerous step-by-step guides and tutorials. Various samples are provided to let you learn quickly how to use the most important features each library. The diagramming components are not only the perfect choice for creating any type of diagram in the browser – they can also arrange it the way you wish with a mouse click using one of the automatic graph layout algorithms. For more details about the features of each component, please visit its page:

Diagramming for Android, V1.1.1

MindFusio has recently released a new version of Diagramming for Android programming library. Here are details about the new features:

Improved arrowhead rendering

  • Arrowheads are rendered as a single path when possible and several arrowhead Shape definitions have been changed to implement mitered joints when HeadPen is set to a thick pen.
  • The point where end segments connect to arrowheads can be specified via the LinkSegmentInset property of shapes. Shape definitions from the ArrowHeads class set it to suitable default value. This allows using transparent or semi-transparent brushes without seeing the link line drawn behind arrowheads.
  • Arrowhead shadows are no longer filled if the link’s EffectiveBrush is null or fully transparent.
  • IntermediateShape is now also rendered for Bezier links.
Arrowheads

Arrowheads

Miscellaneous

  • Link segments and node borders are now drawn anti-aliased.
  • Improved DiagramLink rendering speed.
  • Improved text layout in TextComponent and LinkLabel.
  • Fixed null-reference exception in some situations when tap is outside of diagram boundaries.

The new version is available for download from the following link:

Download Diagramming for Android, V1.1.1

If you require technical support, please use the forum or write us at support@mindfusion.eu. A help desk is also available. Providing fast and competent technical support is among the priorities of MindFusion. We answer most support inquiries within hours of receiving them.

About Diagramming for Android: A native Java class library, which provides your Android application with a powerful set of features for creating, customizing and displaying flowcharts, genealogy trees, class hierarchies, networks, algorithms and much more. The component offers a rich choice of predefined shapes, many pen and brush options as well HTML-like formatting of text. Diagram nodes can hold text as well images, can be semi-transparent and support glass reflection effects. The component offers various automatic layout algorithms and a rich user interaction model, which supports zoom, scroll, alignment guides and more. You can read the features list at the features web page of the component. For pricing and licenses check this link.

Diagramming for Android, V1.1 Beta

MindFusion has just released a beta version of its Diagramming for Android library. Here is an overview of the new features:

Tree map layout
Tree maps represent hierarchies by nesting child nodes within their parents, where the areas of leaf nodes are proportional to their Weight values. Unlike other layout algorithms, TreeMapLayout expects hierarchies to be defined via grouping or containment (see AttachTo method and ContainerNode class), and will ignore any links in the diagram. The diagram area covered by the topmost nodes in a hierarchy is specified via the LayoutArea property. By default, the layout tries to keep the ratio of node sides as close as possible to one.

The tree map layout.

The tree map layout.

Decision flowchart layout
DecisionLayout arranges simple flowcharts consisting of decision boxes with up to three outgoing links per node and activity boxes with a single outgoing link per node. The nodes are arranged in columns and rows, whose distance depends on the HorizontalPadding and VerticalPadding property values. When links share the same row or column, they are placed at a distance specified via LinkPadding. The layout arranges nodes recursively starting from StartNode.

The decision flowchart layout.

The decision flowchart layout.

Composite nodes
The CompositeNode class implements nodes whose appearance can be defined via composition of components and layout containers. You can load the content of a composite node from XML files similar to .NET Xaml templates and Android XML layouts. This initial release includes layout containers such as StackPanel and GridPanel, and read-only components like ImageComponent, TextComponent, ShapeComponent, BorderComponent. Future versions will add interactive components like buttons and text editors.

Resize multiple nodes
Now you can resize multiple selected nodes simultaneously. To enable that, set the AllowMultipleResize property to true. When enabled, dragging a corner or side adjustment handle of any node resizes all nodes in the selection. The operation will be cancelled for all nodes if any of them does not accept its new size, e.g. if it’s smaller than minimum allowed node size.

Binary serialization
Use the new saveTo and loadFrom methods, which implement serialization using Java Serializable interface. In addition, saveToString now creates base64-encoded string from a byte stream containing the binary-serialized form of the diagram. Binary format requires less memory and is much faster to process, which makes it more suitable for saving the diagram as part of Android Activity state.

Miscellaneous

  • Layout algorithms now automatically resize diagram’s Bounds if it’s not large enough to fit the
    arranged content.
  • LinkLabels are now copied by DiagramLink copy constructor and clipboard methods.

The new version is available for download from the following link:

Download Diagramming for Android, V1.1 Beta

If you require technical support, please use the forum or write us at support@mindfusion.eu. A help desk is also available. Providing fast and competent technical support is among the priorities of MindFusion. We answer most support inquiries within hours of receiving them.

About Diagramming for Android: A native Java class library, which provides your Android application with a powerful set of features for creating, customizing and displaying flowcharts, genealogy trees, class hierarchies, networks, algorithms and much more. The component offers a rich choice of predefined shapes, many pen and brush options as well HTML-like formatting of text. Diagram nodes can hold text as well images, can be semi-transparent and support glass reflection effects. The component offers various automatic layout algorithms and a rich user interaction model, which supports zoom, scroll, alignment guides and more. You can read the features list at the features web page of the component. For pricing and licenses check this link.