Dia (software)

related topics
{system, computer, user}
{math, number, function}
{@card@, make, design}
{work, book, publish}
{company, market, business}
{style, bgcolor, rowspan}

Dia (pronounced /ˈdiːə/[1]) is free and open source general-purpose diagramming software, developed as part of the GNOME project's office suite and was originally created by Alexander Larsson. Dia uses a controlled single document interface (CSDI) similar to GIMP and Sodipodi.

Dia has a modular design with several shape packages available for different needs: flowchart, network diagrams, circuit diagrams, and more. It does not restrict symbols and connectors from various categories from being placed together.

Dia can be used to draw many different kinds of diagrams. It has special objects to help draw entity-relationship models (tedia2sql can be used to create the SQL DDL), Unified Modeling Language (UML) diagrams, flowcharts, network diagrams, and simple electrical circuits. It is also possible to add support for new shapes by writing simple XML files, using a subset of Scalable Vector Graphics (SVG) to draw the shape.

Dia loads and saves diagrams in a custom XML format, which is, by default, gzipped to save space, and can print large diagrams spanning multiple pages.[2] It can also be scripted using the Python programming language.



Dia can export diagrams to various formats including the following:

  • EPS (Encapsulated PostScript)
  • SVG (Scalable Vector Graphics)
  • DXF (Autocad's Drawing Interchange format)
  • CGM (Computer Graphics Metafile defined by ISO standards)
  • WMF (Windows Meta File)
  • PNG (Portable Network Graphics)
  • JPEG (Joint Photographic Experts Group)
  • VDX (Microsoft's XML for Visio Drawing)


Dia was originally created by Alexander Larsson but he moved on to work on GNOME and other projects. After him James Henstridge took over as lead developer but also moved on to other projects.

Full article ▸

related documents
Longitudinal redundancy check
Common Intermediate Language
Grid network
Name server
A-law algorithm
Data stream
ABC (programming language)
Typed link
Common Language Runtime
Andrew Tridgell
Java Development Kit
Escape character
Numbering plan
Binary symmetric channel
Abbreviated Test Language for All Systems
Automatic data processing
Filter (Unix)
Steelman language requirements