Crossword Puzzle Displayer

> > download the crossword displayer < <

This is a viewer for the .puz files provided by They recommend the use of a program called Across Lite, which is proprietary. I may be enough of a sucker to pay three dollars a month for crosswords, but I am not enough of a sucker to use proprietary software while I do it.

So, on a night when I should have been getting sleep instead, I wrote a little viewer for the .puz files. It's not a perfect replacement for Across Lite, but it outputs a HTML page with the puzzle and clues so you can print it.

This program is available under the Gnu GPL. It requires Perl, but no modules. It may even be cross-platform (I've only tested it on GNU/Linux PPC).


The HTML output does download a graphic (of a 25x25 black square) from Without this graphic, many browsers won't print the black squares on the crossword grid. You may want to change the black square's URL in the script to point to a black square hosted on a computer of your own. You can download the square to the left here; that's the one I use.

With the -P option, this program can also output to postscript. (Use the ps2pdf utility to convert this to a pdf). It doesn't require a graphic, and best of all, it can wrap the columns to make a layout similar to the regular nytimes weekly layout. The HTML output still prints the clues in one long column that usually runs off the page.

Documentation on the .puz format can be found here, along with a C library that understands the format.

download crossword displayer v1.3 (clues are now indented properly in the postscript output)

download crossword displayer v1.2 (better resizing & text flow in the postscript output)

download crossword displayer v1.1 (now with ability to output to postscript - thanks Marty)

download crossword displayer v1.0 (single-column html output only)


# print the puzzle as a PDF -P foo.puz | ps2pdf - foo.pdf
# then view and print the pdf.
# create a HTML display of the puzzle foo.puz > foo.html
# then go to /home/you/foo.html in your browser and hit Print