viewhack

Open a Visio drawing (.vsdx) without Visio

Someone sent you a network diagram, floor plan or flowchart as a .vsdx, and you have no Visio licence, or you are on a Mac, a Chromebook or a phone. Drop the file here: every page is drawn with its shapes, connectors, text and pictures; you can zoom in, search the text on every page, read each shape's data fields, and save a page as SVG or PNG.

The file is read on your device. It is not uploaded, its links are not followed and its macros are never run.

What it shows

What is inside a .vsdx file

Since Visio 2013, a drawing is a ZIP archive of XML files (the same Open Packaging Conventions as .docx and .xlsx), which is why the file starts with PK. visio/pages/pages.xml lists the pages with their sizes, each visio/pages/pageN.xml holds that page's shapes, visio/masters/ holds the master shapes from the stencils that were used, visio/document.xml holds the styles and colours, and pictures sit in visio/media/.

A shape is a list of named cells, like a tiny spreadsheet: PinX and PinY place it on the page, Width, Height and Angle size and turn it, LineColor and FillForegnd colour it, and Geometry sections draw its outline row by row (MoveTo, LineTo, ArcTo and so on). Lengths are stored in inches, even in a metric drawing, and angles in radians. A cell missing from a shape comes from its master shape, then from its style; this page follows that chain. For example, a Pentagon dragged from Basic Shapes and stretched to 3 inches wide stores its new width and its stretched corner points, while its line weight still comes from the master.

The .vsdm form adds VBA macros (never run here), .vstx is a template and .vssx a stencil, a file of master shapes without pages; this page lists a stencil's masters but has no page to draw.

What this cannot do