Answers.Body: <p>A <em>vector format</em> would suit.</p>
  
  <p>As you may know, a vector format represents graphic not as a bitmap but geometrically, as a mathematical description which can be rendered at any scale.</p>
  
  <p>For web display, you can use the SVG format. <a href="https://commons.wikimedia.org/wiki/Template:SVG_chess_pieces" rel="nofollow">Here</a> are some chessmen in the SVG format. (If you follow the link, for each chessman, click through to "original file (SVG file)." Until you click through, all you will get is a bitmapped, PNG approximation to the SVG. You want the real SVG.)</p>
  
  <p>For PDF display, TeX has several packages you can use. <a href="https://packages.debian.org/sid/tex/texlive-games" rel="nofollow">Here</a> is a list. (This is convenient only if you are familiar with TeX or LaTeX; but the resultant diagrams are good. For example, see p. 4 of <a href="http://wikitex.org/doc/skakdoc.pdf" rel="nofollow">this PDF example</a> in the Skak style. Moreover, I believe that p. 4 of <a href="http://www.accademiadelproblema.org/archivio/RIVISTE/Estero/HARMONIE-AKTIV/2014/h122.pdf" rel="nofollow">this PDF example</a> shows the Schwalbe-chess style, which you might prefer, though its documentation seems to be all in German. All these are open source, at any rate.)</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2016-06-14T06:15:30.447Z
Answers.Text: I think the diagrams in your last example (harmonie) are of low quality. White squares use too little horizontal space, so they are too far to the left, leaving big gaps between the h-file and the board edge. Those diagrams look to me as if they were made with the LaTeX package "chess-problem-diagrams", which is available at https://www.ctan.org/tex-archive/macros/latex/contrib/chess-problem-diagrams?lang=en . The diagrams I've made using that package have that same bug.
Answers.UserDisplayName: Rosie F
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2016-06-13T23:17:19.857Z
Answers.LastActivityDate: 2016-06-13T23:17:19.857Z
Answers.UserDisplayName: thb
Answers.Body: <p>As thb pointed out, you need vectors. I suggest you use a python-chess to generate SVG vector images.</p>
  
  <h2>Prerequisites:</h2>
  
  <ol>
  <li><a href="http://www.python.org" rel="noreferrer">Python</a> 2.6+ or 3.3+</li>
  <li><a href="https://pypi.python.org/pypi/python-chess#installing" rel="noreferrer">Python-chess</a>:
  
  <ul>
  <li>Install form <a href="https://pypi.python.org/pypi/python-chess#installing" rel="noreferrer">pypi</a> using pip: <code>pip install python-chess[uci,gaviota]</code></li>
  </ul></li>
  </ol>
  
  <h2>Creating a script</h2>
  
  <p>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:</p>
  
  <pre><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()
  </code></pre>
  
  <p>If you are on linux, start script with <code>#!/usr/bin/env python3</code>.</p>
  
  <h2>Usage</h2>
  
  <p>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:</p>
  
  <p><code>./FENtoSVG.py "examplefen" "morefen"</code></p>
  
  <p>Say I want two SVGs for the FEN <code>"8/8/8/8/4N3/8/8/8 w - - 0 1"</code> and <code>"8/8/8/8/4Q3/8/8/8 w - - 0 1"</code>
  , I would enter:</p>
  
  <p><code>./FENtoSVG.py "8/8/8/8/4N3/8/8/8 w - - 0 1" "8/8/8/8/4Q3/8/8/8 w - - 0 1"</code></p>
  
  <p>This would create two files: <code>88884N3888 w - - 0 1.SVG</code> and <code>88884Q3888 w - - 0 1.SVG</code></p>
  
  <p>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.     </p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2016-09-28T18:45:30.120Z
Answers.Text: Congrats on the clear, easy-to-use and comprehensive recommendation, @Fluxenein.  I'm taking a look at this approach for my publishing needs. Welcome to the community!
Answers.UserDisplayName: jaxter
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2016-10-01T07:57:19.857Z
Answers.Text: Thanks! It's still rather tedious a task for me so I'll probably keep updating till I make/ find a fast enough solution for my needs too.
Answers.UserDisplayName: MrFregg
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2016-10-01T23:28:52.870Z
Answers.Text: Awarding the bounty because this is the best so far, but we have a ways to go for something well-integrated with word processing.
Answers.UserDisplayName: Andrew Lazarus
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2018-05-24T16:05:38.367Z
Answers.Text: great tips on a great library. is there an example of specifying arrows for the last move, or the style of the board ? to clarify - looking to do it not via ./FENtoSVG.py, but rather in my own script via python-chess.
Answers.UserDisplayName: Joe
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2016-09-28T09:47:20.457Z
Answers.LastActivityDate: 2017-01-07T17:12:14.810Z
Answers.LastEditDate: 2017-01-07T17:12:14.810Z
Answers.UserDisplayName: MrFregg
Body: <p>I'm looking for software that can take FEN and generate a <em>high-quality</em> 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.</p>
  
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2016-06-13T20:12:00.640Z
Comments.Text: Check out http://www.apronus.com/chess/diagram/editor/?d=PRNBQKBNRPPPPPPPP________________________________pppppppprnbqkbnr&p=115&s=0&c=BBBBBBEEEEEE969696000000&r=FEFEFE&z=w - Perhaps diagrams this large will meet your needs after all. In any case, you can contact the webmaster (me) about tailoring the tool to your specific needs.
Comments.UserDisplayName: MichalRyszardWojcik
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2016-09-28T15:39:20.853Z
Comments.Text: Like I wrote in my previous comment I can supply the tool that you need. I am thinking of creating an SVG diagram from individual SVG files for each piece. You have started a bounty without contacting me like I suggested.
Comments.UserDisplayName: MichalRyszardWojcik
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2017-12-05T09:33:47.577Z
Comments.Text: Have you considered the Latex package "skak": [link](https://da.sharelatex.com/learn/Chess_notation) ? It can directly take a FEN string.
Comments.UserDisplayName: Ulrik Hørlyk Hjort
Tags: <software><fen><recommendations><diagram>
Title: High-quality (not bitmap) diagram software
ThreadText: # High-quality (not bitmap) diagram software
  
  (Asked by: username_0 on 2016-06-13)
  
  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.
  
  **Tags:** software, fen, recommendations, diagram
  
  > **Comments:**
  > **username_1**: Check out http://www.apronus.com/chess/diagram/editor/?d=PRNBQKBNRPPPPPPPP________________________________pppppppprnbqkbnr&p=115&s=0&c=BBBBBBEEEEEE969696000000&r=FEFEFE&z=w - Perhaps diagrams this large will meet your needs after all. In any case, you can contact the webmaster (me) about tailoring the tool to your specific needs.  
  > **username_1**: Like I wrote in my previous comment I can supply the tool that you need. I am thinking of creating an SVG diagram from individual SVG files for each piece. You have started a bounty without contacting me like I suggested.  
  > **username_2**: Have you considered the Latex package "skak": [link](https://da.sharelatex.com/learn/Chess_notation) ? It can directly take a FEN string.  
  
  ---
  
  ## 2 answers
  
  ### Answer by username_5 on 2016-09-28. Score: 16 | Accepted answer
  
  As thb pointed out, you need vectors. I suggest you use a python-chess to generate SVG vector images.
  
  ## Prerequisites:
  
  1. [Python](http://www.python.org) 2.6+ or 3.3+
  2. [Python-chess](https://pypi.python.org/pypi/python-chess#installing):
     * Install form [pypi](https://pypi.python.org/pypi/python-chess#installing) 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.
  
  > **Comments:**
  > **username_6**: Congrats on the clear, easy-to-use and comprehensive recommendation, @Fluxenein.  I'm taking a look at this approach for my publishing needs. Welcome to the community!  
  > **username_5**: Thanks! It's still rather tedious a task for me so I'll probably keep updating till I make/ find a fast enough solution for my needs too.  
  > **username_0**: Awarding the bounty because this is the best so far, but we have a ways to go for something well-integrated with word processing.  
  > **username_7**: great tips on a great library. is there an example of specifying arrows for the last move, or the style of the board ? to clarify - looking to do it not via ./FENtoSVG.py, but rather in my own script via python-chess.  
  
  ---
  
  ### Answer by username_3 on 2016-06-13. Score: 4
  
  A *vector format* would suit.
  
  As you may know, a vector format represents graphic not as a bitmap but geometrically, as a mathematical description which can be rendered at any scale.
  
  For web display, you can use the SVG format. [Here](https://commons.wikimedia.org/wiki/Template:SVG_chess_pieces) are some chessmen in the SVG format. (If you follow the link, for each chessman, click through to "original file (SVG file)." Until you click through, all you will get is a bitmapped, PNG approximation to the SVG. You want the real SVG.)
  
  For PDF display, TeX has several packages you can use. [Here](https://packages.debian.org/sid/tex/texlive-games) is a list. (This is convenient only if you are familiar with TeX or LaTeX; but the resultant diagrams are good. For example, see p. 4 of [this PDF example](http://wikitex.org/doc/skakdoc.pdf) in the Skak style. Moreover, I believe that p. 4 of [this PDF example](http://www.accademiadelproblema.org/archivio/RIVISTE/Estero/HARMONIE-AKTIV/2014/h122.pdf) shows the Schwalbe-chess style, which you might prefer, though its documentation seems to be all in German. All these are open source, at any rate.)
  
  > **Comments:**
  > **username_4**: I think the diagrams in your last example (harmonie) are of low quality. White squares use too little horizontal space, so they are too far to the left, leaving big gaps between the h-file and the board edge. Those diagrams look to me as if they were made with the LaTeX package "chess-problem-diagrams", which is available at https://www.ctan.org/tex-archive/macros/latex/contrib/chess-problem-diagrams?lang=en . The diagrams I've made using that package have that same bug.  
  
  ---
  
  