ניתן להשתמש ב פונקציות עיבוד SVG של פיתון-שח. זה יאפשר לך ליצור ויזואליזציה בפורמט SVG של כל מיקום לוח שנטען באמצעות פיתון-שח.
FEN ל- SVG
לדוגמא, בהינתן FEN כקלט (נגיד שאנחנו שומרים את סקריפט הפיתון שלנו כ- boardtosvg.py
)
שימוש ב- python3 ובגרסת ספריית השחמט של python 0.30.1
ייבוא chessimport chess.svgimport sysarguments = sys.argvfen = str (טיעונים [1]) לוח = שחמט. Board (fen) boardsvg = chess.svg.board (לוח = לוח) f = פתוח ("BoardVisualisedFromFEN.SVG", "w") f.write (boardsvg) f.close ()
-
דוגמה, FEN: 'rnbqkbnr / pppppppp / 8/8 / 4P3 / 8 / PPPP1PPP / RNBQKBNR b KQkq e3 0 1'
-
פקודה להפעלת הסקריפט מהמסוף :
python boardtosvg.py 'rnbqkbnr / pppppppp / 8/8 / 4P3 / 8 / PPPP1PPP / RNBQKBNR b KQkq e3 0 1'
קובץ שמור (אם אינך יכול לפתוח קובצי SVG, אתה יכול לפחות להשתמש בדפדפן כגון כרום כדי להציג את הקובץ) :
מיקום מ- a PGN ל- SVG
באופן דומה, אם הקלט הוא קובץ PGN, אז איך תשמור את ה- SVG של המיקום האחרון של המשחק (אתה יכול להאריך את זה לשמירת המיקום בכל מהלך ):
ייבא chessimport chess.svgimport chess.pgnimport sysarguments = sys.argvpgnfilename = str (טיעונים [1]) # קרא את קובץ ה- pgn: עם פתוח (pgnfilename) כ- f: game = chess. pgn.read_game (f) # עבור לסוף המשחק וצור שחמט. לוח () ממנו: game = game.end () board = game.board () boardsvg = chess.svg.board (board = board ) f = open ("BoardVisualisedFromPGN.SVG", "w") f.write (boardsvg) f.close ()
קובץ שמור:
כעת כל שנותר לעשות הוא להמיר את קבצי ה- SVG שנוצרו כך ל- PNG, מה שאפשר לעשות גם בפייתון, עיין בפתרונות בקישור למטה: