SVG rendering¶
The chess.svg module renders SVG Tiny images (mostly for IPython/Jupyter
Notebook integration). The piece images by
Colin M.L. Burnett are triple
licensed under the GFDL, BSD and GPL.
-
chess.svg.piece(piece: chess.Piece, size: Optional[int] = None) → str[source]¶ Renders the given
chess.Pieceas an SVG image.>>> import chess >>> import chess.svg >>> >>> chess.svg.piece(chess.Piece.from_symbol("R"))
-
chess.svg.board(board: Optional[chess.BaseBoard] = None, *, squares: Optional[chess.IntoSquareSet] = None, flipped: bool = False, coordinates: bool = True, lastmove: Optional[chess.Move] = None, check: Optional[chess.Square] = None, arrows: Iterable[Union[chess.svg.Arrow, Tuple[chess.Square, chess.Square]]] = [], size: Optional[int] = None, colors: Dict[str, str] = {}, style: Optional[str] = None) → str[source]¶ Renders a board with pieces and/or selected squares as an SVG image.
- Parameters
board – A
chess.BaseBoardfor a chessboard with pieces orNone(the default) for a chessboard without pieces.squares – A
chess.SquareSetwith selected squares.flipped – Pass
Trueto flip the board.coordinates – Pass
Falseto disable the coordinate margin.lastmove – A
chess.Moveto be highlighted.check – A square to be marked as check.
arrows – A list of
Arrowobjects like[chess.svg.Arrow(chess.E2, chess.E4)]or a list of tuples like[(chess.E2, chess.E4)]. An arrow from a square pointing to the same square is drawn as a circle, like[(chess.E2, chess.E2)].size – The size of the image in pixels (e.g.,
400for a 400 by 400 board) orNone(the default) for no size limit.colors – Dictionary to override default colors. Possible keys are
square light,square dark,square light lastmove,square dark lastmove,margin,coord,arrow green,arrow blue,arrow red, andarrow yellow. Values should look like#ffce9e(opaque) or#15781B80(transparent).style – A CSS stylesheet to include in the SVG image.
>>> import chess >>> import chess.svg >>> >>> board = chess.Board("8/8/8/8/4N3/8/8/8 w - - 0 1") >>> squares = board.attacks(chess.E4) >>> chess.svg.board(board=board, squares=squares)