【发布时间】:2021-06-03 13:02:58
【问题描述】:
更新:我尝试增加 chess.svg.board 的大小,它以某种方式清除了大小 = 900 1800 时的所有渲染问题
我尝试使用 svglib 和 reportlab 从 .svg 制作 .png 文件,代码如下所示:
import sys
import chess.svg
import chess
from svglib.svglib import svg2rlg
from reportlab.graphics import renderPM
board = chess.Board("rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR")
drawing = chess.svg.board(board, size=350)
f = open('file.svg', 'w')
f.write(drawing)
drawing = svg2rlg("file.svg")
renderPM.drawToFile(drawing, "file.png", fmt="png")
如果您尝试打开 file.png,图像中有很多缺失的部分,我猜这是渲染问题。你怎么能解决这个问题?
旁注:也得到了很多 'x_order_2: colinear!'在不和谐机器人上运行它时的消息,但我不确定这是否会影响任何东西。
【问题讨论】:
-
这似乎是 Reportlab 3.5.60 的问题;有一个错误报告here。也许尝试更新或更旧的版本?