February 27, 2006

Desktop publishing with Writer and Scribus

Author: Dmitri Popov

Although OpenOffice.org Writer offers many tools that allow you to create sophisticated layouts, you might want to use a dedicated desktop publishing application to lay out a brochure or a book. The latest version of the open source DTP application Scribus, 1.3.2, can import Writer's .odt documents, which makes Writer and Scribus a perfect combo for DTP work. Here's a brief overview of Scribus' essential tools and features from Writer users' point of view.

Although Scribus usually does a good job of importing Writer files, you should keep in mind that Scribus does not import embedded images, and it's not very good at importing tables and footnotes. This means that you must prepare your Writer document before you import them.

  • Make sure you have all the images used in Writer as separate graphics files in a format supported by Scribus, such as EPS, TIFF, JPEG, and PNG. If you don't have the images, you can extract them from the document using a simple trick. Make a copy of your Writer file, change its extension to .zip, and unzip the resulting archive. The unzipped folder contains the Pictures folder with all the pictures from the document in PNG format.
  • To prevent Scribus from messing up the tables during the import, you might want to convert them to text. To do this, select the table and use the Table -> Convert -> Table to Text command to convert the selection into text.
  • If the Writer document contains footnotes, you can use a workaround to preserve them during the import. In Writer, save the document as HTML and then import it into Scribus. The imported text will probably need manual tweaking, though.
  • Scribus doesn't support character styles, which you should also take into account when importing Writer documents. Since all the character-based formatting will be lost during the import, you might want to go through your document in Writer and replace character styles with manual formatting.
  • Scribus replaces spaces in the styles' names with _20_, so you might want to edit the styles' names before import to avoid confusion.

Once you've prepared your Writer file, you can import it into a Scribus document. In Scribus, insert a new text frame (Insert -> Text Frame) and choose File -> Import -> Get Text. Select the Writer file you want to import and press OK. In the OpenDocument Importer Options windows, you can specify how Scribus manages styles during the import:

  • Update Paragraph Styles -- This option changes the formatting of any created styles in your Scribus document to follow those in the Writer document.
  • Merge Paragraph Styles -- This option looks at the actual attributes (such as fonts and size) of the Writer document and merges styles that have common attributes. This can help to eliminate differently named but similar styles.
  • Use Document Name as a prefix for paragraph styles -- This option can be useful for sorting styles when importing from several documents.

Scribus doesn't reflow the inserted text automatically. This means that if you have imported a multi-page document into a one-page frame, you must first insert additional pages, then add frames to each page, and finally link the frames together. To insert a new page, choose Page -> Insert, select at End from the drop-down list, and press OK. Insert a text frame into the new page using the Insert -> Text Frame command. To link two frames together, select the frame containing text, press the Link Text Frames, and click on the new empty frame. If the frames are successfully linked, you will see a connection arrow between them, and the text will automatically spill over into the new frame. Repeat this procedure until the entire text is displayed properly.

Editing text

Although Scribus is not on a par with Writer when it comes to editing text, it does offer some powerful editing tools. Like Writer, Scribus supports paragraph styles. If you are familiar with the styles feature in Writer, you won't have any troubles with paragraph styles in Scribus. To add a new style in Scribus, choose Edit -> Paragraph Styles and press the New button. The Edit Style dialogue window provides access to all style settings, but there are fewer options compared to Writer. For example, you can't link styles, you can't apply borders, and you can't specify language. Scribus allows you to edit text directly in the text frame, but it also includes a so-called Story Editor, which is sort of a bare-bones word processor. It is, indeed, bare-bones: there is no WYSIWYG text editing, no spell checker, no other tools that Writer users take for granted. This leads to an obvious conclusion -- do all the heavyweight editing in Writer before you import the document into Scribus. Still, using Story Editor shouldn't cause any problems, even for users not familiar with Scribus. To invoke Story Editor, click in the text you want to edit and press Ctrl-Y.

Note: Scribus doesn't support bold and italics, meaning you can't just select some word and press the Bold or Italics button. You can cheat the application to work around this limitation, but a better approach could be to apply bold and italics in the Writer document prior to import.

Working with images

Inserting images into a Scribus document is easy: insert a new image frame (Insert -> Image Frame), right-click on the frame and choose Get Image, then select the image you want. (Keep in mind that, unlike Writer, Scribus doesn't insert images themselves but rather links to them.)

To resize an inserted image, right-click on the image frame, select Properties, click on the Shape tab, select the Scale to Frame Size option, and tick the Proportional check box. Right-click on the image frame and select Adjust Frame to Image. Now you can resize the image by dragging one of the frame's corner handles.

The next step is to make the surrounding text flow around the image. To do this, right-click on the image frame, select Properties, and click on the Shape tab. Tick the Text Flows Around Frame and Use Contour Line check boxes. Press the Edit Shape button, tick the Edit Contour Line check box. Now, use the blue round handles to adjust the contour line as you see fit.

You can also add captions to the images using the legende.py script. Select the image you want, choose Scripts -> Execute Script, and select the legende.py script (on Linux, the path to it may be usr/share/scribus/samples/legende.py). The script inserts a new text frame containing the name of the image.

Working with master pages

As any DTP application worth its salt, Scribus uses Master pages, which are roughly similar to page styles in Writer. Master pages can be immediately useful for a number of things -- for example, for adding automatic page numbering and running footers. To add page numbers to your Scribus document, choose Edit -> Master Pages. In the master page insert a text frame where you want to display the page numbers, then click in the frame and press Shift-Ctrl-Alt-P to insert the # symbol, which signifies the page numbers. If the Shift-Ctrl-Alt-P shortcut doesn't do the trick, go to Edit -> Preferences -> Keyboard Shortcuts and check the Page Number shortcut. Now, close the Edit Master pages window, and you should see the page numbers. If you don't, make sure that the master page is applied to the current pages: Choose Page -> Apply Master Page, then select and apply the appropriate master page.

By default, Scribus uses Arabic numbers, but you can quickly switch to Roman numbers, if necessary. To do this, choose File -> Document Setup -> Sections and select the numbering style you want from the Style drop-down list. Keep in mind that in order to display multiple-digit page numbers, you have to insert the corresponding number of the # signs. For example, for numbers equal or bigger than III, you must add three # signs, so the code looks like this: Page ###.

Naturally, Scribus supports multiple paginations and different numbering styles. Let's say you want to create two separate paginations: one with the Roman numbering style for use with the book's preface, and another with Arabic numbering for use with the rest of the book. Choose File -> Document Setup -> Sections and define two sections with the Roman and the Arabic numbering styles. Use the From and To fields to specify the paginations' ranges and the Start field to specify the page offset. If you hover the mouse over a field, you can read a more detailed description of each field in a tool tip.

In a similar way, you can add running headers and footers. However, unlike Writer, Scribus doesn't allow you to add dynamic fields with chapter names. This means that you have to create a separate master page for each chapter and hard-code chapter names in the master page.


Scribus may feel like uncharted territory for many Writer users, but it's pretty easy to come to grips with, and many Writer skills can be translated to Scribus. Of course, both applications have their strengths and weak spots, but combined they provide a powerful end-to-end publishing solution.

Dmitri Popov is a freelance writer whose articles have appeared in Russian, British, and Danish computer magazines.

Click Here!