我正在制作一个python项目,我需要在屏幕上打印规则。我正在使用simplegui模块,这就是我所拥有的。
text = """You will be given a number
and a number of operations. The number
on the top is the answer to the problem.
You must fill the blanks with numbers that
make the answer. Hit enter when you are
done, hit delete to go back."""
canvas.draw_text(text, (150, 250), 30, 'white')
它给了我错误:
ValueError: text may not contain non-printing characters
我该如何解决这个错误?
答案 0 :(得分:0)
draw_text()
函数无法绘制多行。你必须逐行绘制。
但是......我写了一个绘制多行的函数:
的 draw_text_multi()
强>
您必须导入simplegui_lib_draw
模块,因为它不是CodeSkulptor的功能。
try:
import simplegui
import user40_AeChfAkzlcqs3wG as simplegui_lib_draw
except ImportError:
import SimpleGUICS2Pygame.simpleguics2pygame as simplegui
import SimpleGUICS2Pygame.simplegui_lib as simplegui_lib_draw
def draw(canvas):
…
draw_text_multi(canvas,
"""line 1
line 2
line 3""", (x, y), size, 'white', 'serif')
…
另请阅读 Tips 文档中的 SimpleGUICS2Pygame 部分。