Previous  Contents Next

Optimizing Your Linux Workstation for Scribus and DTP


This is a primer based on the author's experience attempting (sometimes frustrating) to optimize Red Hat 7.x for DTP layout and printing to work with Scribus since version 0.3.7, along with the supporting tools like GIMP, Sketch, as well as commercial programs like Cameleo, the Corel Linux applications and testing Artstream, a vector editor migrated from SGI's Irix. This essay will also include many hints and concepts for Linux users who have migrated from Windows or the Mac platform like me. Also interspersed are some tips for preparing files for output for the highest quality possible in an office setting or for later output at a commercial printer.

The future of DTP on Linux has much promise. As Scribus, GIMP, Sketch and Ghostscript continue to be refined, users will have excellent tools to do layouts and publications.

Some of these suggestions may or may not apply depending on the vintage of your particular distribution, but will give you things to consider when using Linux as a publishing platform. Moreover, working within a pre-press or professional printing environment will sometimes necessitate working with closed source programs owning to patents or copyright protections.

Linux for Desktop Publishing ?

Scribus and some Linux applications have many, if not most, of the ingredients for producing publications for several purposes; web, internal corporate presentations, brochures or in preparation for commercial reproduction. As more and more service bureaus and printers can handle high resolution v.1.3 & 1.4 PDF, the excellent support for PDF with Scribus means platform compatibility is a non-issue. Moreover, Scribus from every test I have made, exports reliable postscript and EPS files, which has have been later opened/edited in a number of commercial programs, along with printing to high end level 3 postscript devices.

The good news is many of the subsystems of Linux and open source Unixes are becoming much more adept at serving the needs of What You See Is What You Really Will Get on the Paper. The continuing improvements in Xfree86 4.x have helped. The newest Freetype rendering libraries do a great job of rendering both Type 1 and True Type fonts on screen. On screen rendering with good Type 1 and True Type fonts is getting much nearer to the quality of the the closed PC platforms. The new fontconfig mechanism in RH 8 and XFree86 cvs will make font management much easier in the future.

One of the great strengths of Linux and its UNIX cousins is the robust and mature support for Postscript - the lingua franca of professional and commercial printing. The 7.x versions of Ghostscript remove some of the previous limitations to working with CMYK images, specifically icc profile support and better True Type handling. Scribus is the exact type of program which will benefit and push the need for these ongoing developments. The coders who are working on these important bits of Linux deserve our appreciation.

Historically, Sun and other proprietary Unixes have been relied upon to do the heavy lifting duty in the back end of commercial pre-press. Taking a look at available higher end RIP's ( Raster Image Processors), which convert postscript for creating printing plates or film, you will see a number of solutions which almost uniformly have been been proprietary UNIX based. Reliability is extremely important in the commercial press industry. Some newer RIP's are based on Windows NT, but not until recently. Linux is making great strides in this area too. One leading company, Dalim has ported almost their entire line of pre-press work flow applications to Linux.

Hardware Needs

Scribus, for a graphics application program is rather efficient and is not a monster consumer of resources, unlike some other graphics programs. It will rarely need more than 8-12Mb of ram for itself on x86. As images are linked, files are small and save quickly. I have been running Scribus on a PII400 / 256MB, now 640Mb, with no real urge to upgrade hardware. As the saying goes, yuo can never have enough money or too much ram. For a modern Linux distro, serious DTP will probably need a minimum of 256 MB or more of ram. If you are working with large image files like Tiffs or full page EPS and converting to hi-res PDF, more ram will definitely speed up PDF exporting. You should be running X at 24 bit color for good color fidelity. Most monitors are set for 9300K color which is not ideal for on-screen color fidelity with printing. The Color Management intro will have the details for setting this and monitor gamma properly.

Fonts, Fonts, Fonts

Fonts are often where the trouble starts and often ends. Getting the fonts right and understanding how applications like Scribus access them is the first step. Font management, rendering and printing are all handled quite differently than Windows or Mac platforms. This alone can be the biggest source of frustration for refugees from other PC platforms. Understanding the how to work with Xfree86 and sub-systems like the printer daemon and Ghostscript will reduce the frustration in the beginning.

A bit of history... When X Windows, on which Xfree86 is based, was developed, the way the display handled fonts became a completely separate system from printing. Applications display fonts and image data in a rather abstract way, as they depend on the capabilities of X to handle the details. This makes a DTP programmer's job sometimes a bit difficult, as it is difficult to guarantee a dimensionally accurate on-screen representation of the document to be printed. Today, there is a lot of effort within the Xfree86 team to add much better font management, rendering and printing support to future versions in Xfree86. Xfree86 4.3 will see new font descriptors for better on-screen representation and much better support for Unicode True Type fonts. This is an important step to make Linux a much more user friendly place for desktop publishers.

Where's my fonts??

Thus, many commercial,as well as, open source programs have resorted to various workarounds to overcome the font management limitation of the X server. Corel's Draw and Photopaint programs which were ported using the Wine libraries, carry their own separate True Type fonts and Bitstream font server. Abiword also insists on installing its own set of fonts. Star Office 5.2 and 6.0 similarly install their own set of fonts, as well as modifying the X font path upon program launch. Even KDE will modify the font path upon launching.

Moreover, the default Linux installation will include various and heretofore never seen fonts by Windows or Mac users. These fonts might include bit-mapped fonts for X itself, BDF, PCF, SNF,Speedo fonts and often as well as a complete set of fonts for Latex.

These differing flavors of fonts, usually end up installed in separate directories. Do not be surprised to have as many as 12-14 different font directories on fully loaded Linux Desktop. The first workaround is to explicitly tell Scribus where your Type 1 and True Type Fonts are. Create a simple text file like this:

/usr/X11R6/lib/X11/fonts/TTF,
/usr/X11R6/lib/X11/fonts/Type1,
/usr/share/fonts/default/TrueType,
/usr/share/fonts/default/Type1,
/usr/share/fonts/userfonts,
/usr/share/fonts/wprequired,

Then name it .scribusfonts.rc and save it in your home directory. You do not need to add the bitmap fonts directories and I advise against this if you plan to export to EPS or PDF for printing on other platforms. Macs and Windows can handle TT and Type 1 fonts embedded in Postscript or a properly prepared PDF file just fine, but I doubt they would handle a Speedo or Xwindows bitmap font properly.

Scribus will typically be able to find the default fonts just fine. In directory listing above, we have high quality licensed Bitstream fonts from Corel Photo Paint. These fonts are known for their reliability in Postscript printing. Depending on your needs, these might be desirable to make available to Scribus. Star Office 5.2 will also include high quality, mostly Monotype, Type 1 fonts, but simply opening Star Office will add these to your font path.

The next is to check that each font directory has the correct fonts.dir and fonts.scale files. Fonts.alias is not important to Scribus, but if you have Type 1 .pfb files, make sure the corresponding .afm files are installed as well. Scribus can read these for font metrics. When adding True Type fonts from a Windows platform, the names should be in lower case, if they are in upper case, this can cause some unintended effects.

High quality fonts are essential for reliable output, no matter which platform. Another good source of fonts for Linux is the URW fonts, which are available at the gimp ftp site. Be aware ,some older versions of these fonts have been known to cause problems with PDF export in Scribus. Do not be surprised when shareware or clone True Type fonts from the Internet disappoint when printed. Sometimes shareware True Type fonts do not follow proper the proper encoding specs, so they are unreliable in a Postscript environment. Making good dependable fonts is not easy and requires a lot of QA testing. Also, do not be put off by the lack of a great screen preview with the URW fonts - they are excellent printer fonts. Font faces like Palladio and Utopia for example, are not really attractive on screen, but they make excellent fonts for printed documents and generally good readable fonts for documents. There is a reason service bureaus and printers spend literally thousands of dollars for high quality font libraries.

For those leery of messing around with the command line tools for font installation, KDE 3 includes an improved version of Keith Drummond's kfontinstaller program. See the links page for more details I have used this and it has worked fairly well on KDE 2.2.2 and 3.0.3 with some minor bugs. It also applies fixes to allow you to work with good True Type fonts and Star Office 5.2, which has been the Achilles heel of Star Office on Linux. This panel module has a superb font pre-viewer and makes installation of True Type fonts fairly easy. Be aware it really should be run from root, so the fonts you installed are available all the time. For desktop publishing, I would avoid using the anti-aliasing available in KDE 2.2x or KDE 3. This merely slows down the redisplay and you actually lose some on-screen precision.

KDE 3 Is A Must

Two hours after loading KDE 3, tells me this is a very important upgrade for several reasons. Qt3 has a number improvements which will enhance Scribus, now and in the future. Under the new pretty face, Qt3, on which KDE 3 is based, are a number of enhancements to improve font handling, postscript output, plus added speed improvements, and new widgets sets will only help Scribus in the future. Kudos's to the KDE team and Trolltech.

Printing Issues

If you are a Red Hat 7.1 or 7.2 user, seriously consider replacing the whole Lprng / Printconf-gui printing system with CUPS and the GIMP CUPS printer driver. If you simply want to print high quality RGB prints from Scribus direct to your ink jet printer, this combination is superb. I was so fed up with the old system that this alone made me seriously consider abandoning Red Hat for Mandrake or SuSE. Red Hat 7.3 finally has CUPS and it works great. Moreover,getting rid of the printconf-gui and LPRrng combo relieves you of the dependency on Ghostscript 6.5x releases. You can then upgrade to the latest 7.x version, which continues to improve support for high end color printing.

The CUPS daemon replaces lpr and has an easy to use browser based interface. You can add the Gimp Print driver for fine tuning colors and resolution in RGB mode. CUPS uses the foomatic database for printers, so you can go to www.linuxprinting.org and get a custom .ppd, which you can also use with Star Office. I have never had such good looking documents from either Scribus or Star Office until I installed this combination. The output with images in documents rivals or exceeds Windows printers with these programs. The latest good news is recently CUPS added true CMYK printing support in 1.1.15.

KDE 3 has a vastly improved kprinter interface to CUPS. The other tool, which is quite useful for printing with CUPS is XPP, a nice graphical front end for accessing the extended features at print time, especially if you have installed the CUPS Gimp Print Drivers. From the printer panel, Scribus can optionally call external print programs so you can use the and adjust the CUPS Gimp Print driver at print time to fine tune printing.

Export to PDF

The PDF driver in Scribus is a separate library in its third generation, custom designed for high resolution output from the Ghostscript interpreter. The included pdfwriter from Ghostscript is limited to 600 dpi. Full font embedding can also be enabled, so cross platform printing should be trouble free - a constant problem with creating pre press PDF's. My Scribus documents print from Acrobat Reader on Linux, Windows and Mac exactly the same. I have also distilled Scribus postscript files with large high resolution tiffs at 3600 dpi with Acrobat 5.0.5 without problem. Currently, the export library only performs flate compression on images, with no re-sampling so you need not be worried about image degradation.

If you are creating PDF's for the web or internal printing and file size is a concern, you can substitute PNG's in place of high res (and large) TIFFs. For Windows and Mac refugees, learn more about PNG, it is an excellent candidate to replace JPEGs and gifs in many instances. My only caution is when printing to raw postscript, some image setters may have problems with its more advanced alpha transparency features. Also, you may be tempted to upgrade to the latest version of PNG, but Qt2 and Qt3 is usually compiled with a specific version, so check your distribution's options. Lastly, the PDF driver enables bookmarks, annotations and presentation effects, so your printouts can match your screen presentation exactly - a nice touch for a DTP program.

Other DTP Tools

You will probably want and need other programs to support Scribus. My bias is clearly towards creating documents which will be later sent to a commercial printer for 4 color output, if your needs are different, you might find other choices more compelling. The short list:

Vector Editing

One of the major additions to Scribus in the 0.7.x releases has been the addition of many new vector editing capabilities which can be placed in layers on the Scribus canvas. While they are not a replacement for a complete vector editing application, the feature set includes: polygons, bezier curves, 2D shading and text on a path. All of these tools have easy to use palettes. The Text on Path tool is the easiest I have used in any vector editor.

Really it comes down to two programs mature enough for publishing; one closed source, one open source. Sketch is comparable to Illustrator or Corel Draw in that it handles a multitude of vector operations including text on a path, 3D models, rendering gradients and bezier curves. Sketch requires Python and the Python imaging libraries, so make sure you have the required libraries or installing will be painful. The more I use this program the more I like it. My thinking is to export EPS which Scribus can place and print properly. Soon Scribus will have SVG importing capabilities. Kontour is simply currently not polished enough in my opinion, though I am sure the KDE folks will put a lot of shine on the next version of Koffice.

The other option is Artstream from Mediascape. This application was originally developed for SGI workstations, so as you can imagine, this is a serious, polished program for professional level vector editing. It has some specific hardware needs, including enabling the backing store in Xfree86, so check the download page for details. You can get a fully functional demo from their website. It performs fairly well, but without the backing store enabled in Xfree86, it will not perform properly.

Star Office / Open Office Draw also have some 3D and vector editing capabilities, including 3D text editing, Goraud shading and bezier curves. Though it is not as complete as dedicated programs, it was surprisingly good within its feature set. It was a snap to convert some 3D drawings to full color PNG's with shading and transparency intact.

Sodipodi is a Gnome based editor with a lot of promise. On the website is a couple of conversion tools, including one for Illustrator to SVG (Scalable Vector Graphics) . Sodipodi is in included in many newer versions of Gnome and Ximian. Installation and compiling is tricky and a new version has just been released.

Bitmap Editing

Everybody loves the GIMP. It is one of the leading examples of open source development. However, the current versions are seriously lacking in support for a professional printing environment, mostly in the area of CMYK support. Version 2.0 is planned to have this included, as it will need features not easily included with the current GIMP code base. So where can go? Two choices which include both ICC support and CMYK color; Corel Photopaint and Cameleo Light. I would urge you to install both and try them. Each has their strengths and weaknesses. Cameleo Light has excellent batch processing capabilities, where Photopaint has loads of filters and effects.

Corel Photopaint 9.0
Fortunately, Corel makes Photopaint 9.0 a freely available download. While Photopaint is not the equal to Photoshop and lacks some of GIMP's nicer features, it has several important components for pre-press; proper support for Pantone and other color systems used for spot and process color printing. It has a wide array of import and export filters, it has complete support for color management and device icc profiles. Lastly all the image formats commonly used for images such as gray scale, duo-tones and both CMYK and RGB color. For bringing in proprietary formats like Autocad DFX drawings or wmf, Corel applications have usually been quite good at exporting EPS on Windows. I cannot imagine it why it would not work the same on Linux. It can also open XCF (Gimp native files) and convert them to CMYK TIFFs.

Your import choices for Scribus should be either TIFF or EPS, depending on the content of the file. EPS will be necessary for image files which are vector based or have transparency or special effects like text on a path. TIFF will work well with images such as photos, where loss less compression and color fidelity are important. (TIFF fully supports and Scribus can read embedded icc profiles.) These two file formats have proven to be most reliable when printing commercially and are recommended by other layout programs, such as Quark, Pagemaker and InDesign. Do not take anything else but CMYK TIFFs or EPS for images if you want an easy time at a service bureau.

Diagrams and Flow Charts

Dia works very well for creating flow charts and diagrams. We use it both on Win32 and Linux for creating network diagrams. It will export EPS which can be placed by Scribus or it can export a PNG file which can be placed in Scribus or converted to a TIFF. The advantage of converting to TIFF is you will have an on-screen preview which you can then use to accurately place the image. CMYK TIFFs are also good at supporting icc profiles. While I like the PNG format a lot, Scribus has had to re-code PDF exporting work around alpha transparency problems with earlier versions of Ghostscript.

Scanning / Image File Management

Caldera Graphics, a division of Caldera offers a free version of Cameleo Light, part of their larger professional Cameleo suite which includes a RIP and other image handling tools on Linux, SGI and Sun hardware. Cameleo Light is actually a group of eight separate applications. This group of programs can handle batch processing and conversions quite easily and has icc color management support. The user interface, based on Motif is a bit odd, but is once you poke around the menus, you will find this a very serviceable program. It can also spot out of gamma colors á la Photoshop. This is a Motif application, so you will need the lesstif or open motif packages installed. You will also need to install an RPC daemon to support the keyserver, a minor annoyance for obtaining a part of an expensive and well supported Linux application. Cameleo Light is supplied with the Caldera's Open Linux distribution.

Xsane - My first impression with Xsane was quite favorable. Right after installation it rendered good color fidelity and the layout of the dialogs was well done. A couple of word of caution for using this with Scribus: 1) Xsane generates RGB Tiffs, which should be converted to CMYK if printing to a high end printer.2) The default resolution is 72 dpi, which is too low for anything except screen based documents. Any image meant to be printed, should be at least 200dpi or 300dpi for best printing results. More to be added on this in the future. 3) If you plan to adjust / edit colors after scanning disable the auto color adjustments and scan full range. Experience has shown this will render good fidelity if you have color icm profiles for your scanner.

Viewing

Adobe has just released a new version of their Acrobat Reader v. 5.0.6 for Linux and Solaris. (Note 5.0.6 is a bug fix for 5.0.5) Download Links

This release appears to remove many of the color display bugs of the previous 4.05 release and does seem to run much quicker. Regretfully, it still does not have all the color management features and options are available on other platforms, nor is a full editor available. Moreover, it can display all of the new interactive forms available in Scribus 0.7.5+ Upgrading from 4.0.5 on Linux is highly recommended.

Color Management

Elsewhere this is documented for Scribus, but the above is intended to work hand in hand with the built-in color management within Scribus. With careful preparation, you can have a fairly good representation on screen of what will print in a commercial environment.

Preparing your files you plan for commercial output should always be done in consultation with your printer, especially as they may not be familiar with Scribus. When they say "Scribus ?", at least you can tell them it is not Publisher, the bane of most pre press folks ;)


Previous  Contents Next