Importing Complex OpenOffice.org and OpenDocument Drawings
Installation • Usage • PDF issues • Other |
OpenOffice.org Draw allows for the creation of fairly complex drawings, including some typical "Office" features, like graphs, shapes automatically connected by special lines called "connectors." While Scribus can import graphics with standard features reliably, it fails to import most of OpenOffice.org Draw's specialties.
Below you see a screenshot of an OO.o Draw 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 OpenOffice.org into Scribus, the result is more than disappointing:
There is, however, an easy workaround. Like almost any program that allows for printing, OpenOffice.org 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 "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 % as the original:
Caveats: OpenOffice.org saves some parts (like gradients) as raster files. 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. In this case importing the PS file into an image frame may be an alternative.