python - 错误 Python:未定义名称“cairosvg”
问题描述
我已经有问题了。将 cairosvg 显示为未定义。我希望将 Turtle 对象保存为 png。Si hay otra forma de guardar como png lo dibujado por Turtle sugieranme 请。我已经安装了 canvasvg 和 cairosvg 库,但即便如此我仍然收到错误。我将我的代码作为示例。谢谢
from turtle import *
import os
import shutil
import tempfile
import canvasvg
from canvasvg import *
screen=Screen()
setup (640,520,0,0)
title("T")
tracer(0,0)
encendido='#51D1F6'
apagado='#922B3E'
pant=Turtle(visible=False)
pant.hideturtle()
pant.pensize(4)
pant.penup()
pant.goto(110,0)
pant.pendown()
pant.pendown()
pant.fillcolor(encendido)
pant.begin_fill()
pant.goto(-400,-180)
pant.goto(-400,-190)
pant.goto(-110,-190)
pant.end_fill()
Y=7
gb=Y*4
agua=Turtle(visible=False)
agua.pensize(4)
agua.penup()
agua.goto(110,-200)
agua.pendown()
agua.fillcolor(encendido)
agua.begin_fill()
agua.goto(110,-200+gb)
agua.penup()
agua.goto(-110,-200+gb)
agua.pendown()
agua.goto(-110,-200)
agua.goto(110,-200)
agua.end_fill()
update()
ts=getscreen().getcanvas()
tmpdir=tempfile.mkdtemp()
tmpfile=os.path.join(tmpdir,'tmp.svg')
canvasvg.saveall(tmpfile,ts)
name="image4.png"
with open(tmpfile) as svg_input, open(name, 'wb')as png_output:
cairosvg.svg2png(bytestring=svg_input.read(),write_to=png_output)
shutil.rmtree(tmpdir)
解决方案
推荐阅读
- reactjs - 您将如何引用具有状态对象的数组来对其执行数组方法?
- c# - 如何在 Twitter 适配器上实现实体框架脚本存储
- python - 使用漂亮的汤在多个 DIV 中提取正确的链接。这不是重复的问题
- python - 使用 PyInstaller 3.5 创建的 Exe 无法在最终用户的计算机上运行
- java - 如何在 Java Hibernate 中将 id 设为 String?
- python - 使用 tf.eager 训练复杂的 nn 模型(更好地使用 TF2 符号支持)
- postman - Postman中多部分表单数据和二进制文件上传有什么区别?
- asp.net - 什么可能是我的会话本身不断变化的原因?
- python - 如果嵌套,则创建整个目录层次结构
- python-3.x - 具有重复参数的列表的有限循环