High-quality (not bitmap) diagram software I'm looking for software that can take FEN and generate a high-quality diagram, in PDF, Postscript, Windows metafile, or something else that will look good at 1200x1200 dpi or better. I thought the various chess engines would do it, but their diagrams are all bitmaps (as far as I can tell) and look like garbage when resized arbitrarily. Also, their own publishing export can’t be edited in anything standard, AFAICT. I am willing to pay.
As thb pointed out, you need vectors. I suggest you use a python-chess to generate SVG vector images.

Prerequisites:


Python 2.6+ or 3.3+
Python-chess:


Install form pypi using pip: pip install python-chess[uci,gaviota]



Creating a script

Since you might need to generate multiple SVGs, let's create a script.  So, you can use the script to generate multiple chess boards easily. The following is written in Python 3.x. Create a Python script, FENtoSVG.py for example. Insert the following code:

import chess, sys
from chess import svg
'''
This imports python-chess module and sys module. 
Python-chess will generate the boards while sys.argv will take 
arguments for your script.
'''
svgstomake = (list(sys.argv))[1:]
for svgs in svgstomake:
    board = chess.Board(svgs)
    nameoffile = svgs.replace("/", "")+".SVG"
    boardsvg = chess.svg.board(board = board)
    filetowriteto = open(nameoffile, "w")
    filetowriteto.write(boardsvg)
    filetowriteto.close()


If you are on linux, start script with #!/usr/bin/env python3.

Usage

Now, this is a very simple script if you know python but I want to keep it simple for those who don't code. To use the script, open CMD/Terminal where you saved the script. Then, use as follows:

./FENtoSVG.py "examplefen" "morefen"

Say I want two SVGs for the FEN "8/8/8/8/4N3/8/8/8 w - - 0 1" and "8/8/8/8/4Q3/8/8/8 w - - 0 1"
, I would enter:

./FENtoSVG.py "8/8/8/8/4N3/8/8/8 w - - 0 1" "8/8/8/8/4Q3/8/8/8 w - - 0 1"

This would create two files: 88884N3888 w - - 0 1.SVG and 88884Q3888 w - - 0 1.SVG

I suggest python-chess because of the customizations that can be easily made to the diagram using built-in functions. It is also well documented.