Importing Complex and OpenDocument Drawings

From Scribus Wiki
Jump to: navigation, search
This article is part of the Tips & Tricks series.
Installation Usage PDF issues Other Draw allows for the creation of fairly complex drawings, including some typical "Office" features, like graphs, shapes automatically connected by special lines called "connectors" etc. While Scribus can import OO.o/ODG graphics with standard vector features reliably, it fails to import most of Draw's specialties.

Below you see a screenshot of an OO.o Draw sample file with complex content:


From top left to bottom right the drawing contains: 1) a graph, 2) two shapes, one filled with a colour, the other one filled with a hatching. The shapes are connected with two different types of connectors 3) a shape with an applied "extrusion" (3D) effect) 4) a 3D object and 5) a text frame with special characters, non-Latin glyphs and a symbol glyph from a dingbat font.

If you import this ODG or SXD file as saved by into Scribus, the result is more than disappointing:


There is, however, an easy workaround. Like almost any program that allows for printing, provides an option to print to a file instead of sending the data to a printer. Simply go to File > Print in OO.o and check the "Print to File" option. On Linux and Mac OS X this will create a PostScript file.

On Windows you have to install a PostScript printer driver (e.g. Apple Color Laser Writer) first. When you are asked to insert a name for the file you will print to, make sure you select or add "ps" as the file extension.

Next you can open the file or import it as a vector file into Scribus. This time, the content looks almost if not 100 % like the original:


Note that both 3D objects (3 and 4) are denoted by a frame after import. After ungrouping the imported/opened file you will see that both objects are actually image frames. This means that you cannot edit them as vector items anymore, but the good news is that you can apply all available image effects instead.

Caveats: saves some parts (like gradients) as raster files in a PostScript file. As a result, Scribus will create/extract bitmap files in the directory, in which the PostScript file resides. Depending on the content, the number can be huge, and if you are running out of disk space, the reason may be the large number of files necessary to import the PostScript file into Scribus. In this case importing the PS file into an image frame may be an alternative.