Thursday, October 9, 2008

software: saving as EPS for free instead of for $600

I'm helping a friend make postcards for SF Open Studios. First we struggled with getting the front in CMYK, now we just want a little ID on the back in the corner:
Francisco de Zurbarán
Still Life with Lemons, Oranges and Rose

(It's an awesome painting.) There are probably 10,000 programs that can make that simple text, the problem is representing its layout and fonts and margins so that the printer can reliably reprint what you see in WordWrite Cheapsoft.

Rocket Postcards accepts EPS files. Encapsulated PostScript was developed by Adobe about 23 years ago to store PostScript printer instructions in a standard format so you could give them to someone else to print or embed in another program's printer output. One way to make an EPS file is simply pretend to print to a PostScript printer, add some EPS header information, and save the printer output to a file.

In the good old days when Microsoft gave a shit about helping its customers, their individual programs could directly Export or Save As EPS, and they provided a PSCRIPT.DRV printer driver for Windows that could save as EPS. Adobe also offered an ADOBEPS.DRV printer driver with some more options. But Microsoft can't stand any format they're unable to pervert and alter at will in order to f*** over competitors and make you pay to upgrade. So they stopped supporting the EPS format, stopped updating the PSCRIPT.DRV printer driver, and the aging driver doesn't run on Windows Vista.

Meanwhile Adobe is hardly blameless. They stopped offering ADOBEPS.DRV after Windows 98 and left it up to printer manufacturers to write their own driver or use Microsoft's, but printer manufacturers just dropped PostScript support from their low and mid-range printers altogether rather than pay Adobe for a PostScript printing engine. When Microsoft abandoned PSCRIPT.DRV, Adobe announced they would make a new fabulous PostScript printer driver for Windows, but they only distribute it through printer makers and I wasn't able to find it to download.

Adobe needs to make money. They used to promote EPS to make printers running PostScript popular so they would make money providing PostScript engines to printer manufacturers. Judging from Adobe's web site they aren't interested in that market any more, but they still like EPS because they make a drawing program that understands the PostScript printing commands. Adobe Illustrator can read EPS files and can create EPS files; indeed, Rocket Postcards has detailed instructions and templates for using it. But Illustrator costs $600. That's a stupid price to pay for two lines of text!

I was about to re-cable and plug in an old Windows 98 SE PC, on which PSCRIPT.DRV worked perfectly to make EPS files, when I realized there might be other programs that support the EPS format. Sure enough, Inkscape is a free and open source drawing program that can save as an EPS file. To save as EPS,
  • Start Inkscape
  • File > Document Properties > Page
    • set Default units to in
    • set Custom Size 6 in 4.25
  • use its Text tool to create the text block
  • File > Save as...
  • choose "Encapsulated PostScript (*.eps)"
  • click Save
  • in the Output dialog that appears:
    • check "Make bounding box around full page" (otherwise just the EPS is only the text box, not the document size)
    • check "Convert text to paths" (Rocket Postcards asks for this)
    • don't check "Embed fonts (Type 1 only)"
To confirm this worked, I opened the eps file in Photoshop Elements, which opened a dialog for the image size that intially showed the correct size in inches. I set the resolution to 600dpi in this dialog so the text wouldn't be jaggy, and Photoshop Elements displayed the text in the right location and looking sharp at high magnifications.

To be even more sure I also opened the eps file in Wordpad.
  • Should have %%BoundingBox: 0 0 432 306 , which is 6 by 4.25 inches in points
  • Should NOT have lots of gobbledygook like 13A7F563EB (that would represents a bitmap image)
  • instead it should instructions to draw each character outline: sort-of English words with lots of numbers
  • Should be smaller than a megabyte.
But when I sent this simple file to Rocket Postcards, they printed 500 postcards with the text centered in the back of the postcard!

It turns out Adobe's own programs Illustrator and InDesign ignore the bounding box in Adobe's own EPS format, and plop down the EPS they receive in the center of their page. Lame! You have to provide a white background or surrounding line to make them show the text positioned relative to its surroundings

Hooray for free software! Down with proprietary software from companies whose business models and focus inevitably change.

Labels: , , ,