Notes on preparing a 'proceedings' with Acrobat

1997sep04 Dan Ellis <>


I have been involved in putting together the printed proceedings for the 1997 IEEE Mohonk Audio Workshop, and I've found out a lot about using Acrobat Exchange and Distiller to do this; I'd like to write it down while it's fresh to help me remember it, and maybe to help other people in similar situations.

Our submissions were exclusively as postscript files. About 10% of these didn't print when we received them. Sometimes the errors were quite subtle, like files truncated by disk-fulls; sometimes the file was just garbage. Negotiating with authors got acceptable postscript in due course.


I wanted to have a PDF-format proceedings, so I wanted to convert all the files to PDF and have them look nice on the screen. A third or more of the submissions were generated from TeX source, and many of these used bitmap versions of the standard TeX fonts. What happens is that dvips decides the resolution of the output printer, and generates bitmaps for the characters needed from each font at the appropriate resolution. The resolutions were a mix of 300, 400 and 600 dpi. The problem with bitmapped fonts is that when you generate PDF and view it with Acrobat on a screen (i.e. 72 or 100 dpi), the subsampled bitmap glyphs look awful. If, on the other hand, the document defines its fonts with scalable "type 1" definitions, Acrobat is smart enough to 'hint' these at small point sizes for optimal appearance and readability.

This is a common problem discussed in web documents from Emerge and Adobe. Authors can obtain Type 1 outline versions of the TeX fonts (the freeware 'BoKaMa' set) and use an option (-O?) to dvips to get it to include them. But there is also an ugly and uncertain 'patching' procedure: from the web page, I found a freeware Unix program called "substitute" (in the FixFont package) that managed to fix up the body font in all my bitmapped TeX files (although not all fonts, and I had to build a special reference dictionary to make it recognize the fonts in 'compressed' TeX output). Sometimes it managed to substitute the wrong font - making all the justification look awful - if you reduced its heuristic limit checks too small. You have to check the results visually.


I was using the Unix version of Acrobat distiller to convert PostScript to PDF. Piping a series of postscript files into the distill program (which acts as a filter) generated a single PDF file for the entire program. However, we naturally had a mixture of letter-size (8.5" x 11") and A4-sized (8.26"x11.7" or something) papers. By default, the integrated output just switched page sizes (as viewed in acrobat) between the papers.

Our printer was interested in having a single PDF to print from, and having it incorporate all the margin adjustments (and not including paper size changes!). I was able to do this, but it was quite a lot of work. Firstly, I wrote a little postscript program that redefined the commands that I saw the papers using to set the paper size (setpagedevice, lettertray, letter and a4) so they did nothing. I put this at the head of the pipe, and amazingly it disabled all the paper-size-setting commands. Then I used the -pagesize option to distiller to build the entire pdf on 8.5" x 12" paper; I needed the extra margin at the top to get back the top margin on A4-formatted files. Then in Acrobat Exchange, I used the Document/Crop command first to crop the extra inch off the top of all the pages, then went through looking at the top margin on each page. For the documents formatted for A4, I generally had to use the Document/Crop command again to change the top crop to 0.5" and 0.5" at the bottom (i.e. moving the page down by 0.5" on the same size paper). Document/Crop can apply to the whole file or to subsets, so I was able to do each paper in a single stroke.

There were also some extraneous pieces in the files - some authors had put headers and footers (e.g. page numbers) on their papers. You can't do anything with these in Unix Acrobat Exchange, but on the PC (or Mac), there is a touch up tool, which I think allows you to delete or modify extraneous pieces.

For completeness, here's the code fragment I used:

| %!PS-Adobe-2.0
| %
| %
| %
| % Disable the commands that following documents might use to try to 
| % set the paper size (so several documents can be run together 
| % and forced to image on a single default paper size).
| % 1997sep04
| statusdict begin
| /lettertray {} bind def
| end
| userdict begin
| /setpagedevice {pop} bind def
| /letter {} bind def
| /a4 {} bind def
| end


Acrobat Exchange does not provide the capability to add new elements to pages, much less to automatically add increasing page numbers (the "touch up" tool on Mac and Windows allows you to alter the text in an element, but it's a very limited function). Of course, adding things to PDF files is a common problem, and there exist a number of commercial 3rd-party products to do this. I haven't ever seen any of them, but I've seen discussions of the following products for this task: