I have been running my Visio consultancy for over 20 years now, and I have created Visio solutions for many organisations, big and small, across many countries. Most of them know that Visio can do much more than they know how to do, but they do not know how it can be done. I usually do a short demo to explain where the smartness in Visio comes from, so I thought I would share a little bit of this knowledge with a couple of videos that, I think, show why Visio is so smart!
[Read more…] about What makes Visio smart?Shape Design
Narrated Text in Visio for Accessibility
One of the ways that Visio supports accessibility is to provide text that is read out by a screen reader, such as Windows Narrator or JAWS. This Alt Text can be set using Format Shape / Size & Properties tab using the Title and Description text boxes. The Title is the initial text that is read out when a shape is attentioned, and the Description will only read out if the user pauses. The Description text box only allows 255 characters to be entered and displayed, but this is not actually the limit!
[Read more…] about Narrated Text in Visio for AccessibilityUnderstanding Visio Navigation Order
Visio defaults to tabbing from shape to shape in the order that the shapes are added to the page. However, this can end up with an illogical order if you are trying to navigate a diagram with the keyboard, which is often an accessibility requirement. Fortunately, Visio provides a Diagram Navigation pane so that the tab order can be changed, but how does it do it? The following short video shows how the navigation order, displayed as numbers in each shape, is assigned a value as soon as the order is edited.
Accessibility is important in my current project, so understanding how this happens was important to understand, and to surface this order to JavaScript, as we want to list the shapes in a logical order too.
I managed this by adding a User.visNavOrder to the master shape of all the significant masters, and a hidden Shape Data row, labelled “Navigation Order“. This has the following formula for its value:
Triggering Shape Mouse Enter and Leave JavaScript events in Visio Online
I am working on a project where Visio Online process diagrams are embedded within a SharePoint web page, and was surprised that the JavaScript onShapeMouseEnter() event was not being triggered as the mouse cursor moved over some of my shapes. After much searching by myself, and my colleague Seb Craft, we found that only the sub-shapes in the group were firing the event … So what was the problem?
[Read more…] about Triggering Shape Mouse Enter and Leave JavaScript events in Visio OnlineFormatting SharePoint Columns with RGB Color
I wrote about ensuring high contrast between text and the background of Visio shapes in my last article. The RGB values actually came from an imported SharePoint list that has a lookup to a list that contains the RGB values of named colours. Having solved how to display the correct text colour for high contrast in Visio, I wanted to the same in a SharePoint column, but first I had to learn how to use the RGB values to format the background colour.
My good friend Chris Roth, aka VisGuy, has already produced Visio ShapeSheet formulas to convert RGB values to Hex values. so I adaptively re-used his idea to create a formula that I could use in a SharePoint calculated column, called Hex.
First, I compressed his multiple User-defined Cells rows into a single formula:
Ensuring High Contrast Text in Visio Shapes
I am working on a project where I need to ensure high contrast of the text in the Visio shapes for accessibility. At first, I attempted to write my own formula but a colleague pointed my to a website that confirms if the contrast is acceptable ( contrast-ratio.com ), and showed me that a few of my examples failed. So the search was on for a better formula than my own. This lead me to a Stack Exchange answer with just what I was looking for (Formula for Color Contrast between Text and Background). All I needed to do was to convert this into a ShapeSheet formula or two, and then I could apply it to the text inside the shapes.
Any text created with Data Graphic Text Callouts cannot have the high contrast formula applied to because they can be moved independent of the background. However any text added with Insert / Field inside the shape changes between black and white with respect to the FillForegnd value in its background.
Following the article above, it is necessary to calculate the lightness, L, of the FillForegnd, and then to check if black or white text is going to provide satisfactory contrast.