有什么办法可以在Python中用乌龟来调整gif形状的大小?

发布于 2021-01-29 17:08:37

我正在使用Turtle制作一个小游戏,并意识到我可以使用带有的图像文件turtle.registershape(filename)。我知道您可以使用turtle.shapesizeturtle.resizemode("auto")和更改大小来调整默认形状pensize,但是有什么方法可以使用这些方法来调整gif文件的大小?

import turtle

turtle.addshape("example.gif")

t = turtle.Turtle()

t.shape("example.gif")

t.resizemode("auto")
t.pensize(24)
t.stamp()

turtle.exitonclick()

我希望像这样的东西工作,但是乌龟会正常显示,而不是调整大小。

关注者
0
被浏览
50
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    我查看了适用的乌龟代码,我相信答案是:“不,不在乌龟本身内。”

    引入乌龟基础的tkinter,可以给我们提供一些有限的(整体)乌龟图像扩展和缩小功能:

    from tkinter import PhotoImage
    from turtle import Turtle, Screen, Shape
    
    screen = Screen()
    
    # substitute 'subsample' for 'zoom' if you want to go smaller:
    larger = PhotoImage(file="example.gif").zoom(2, 2)
    
    screen.addshape("larger", Shape("image", larger))
    
    tortoise = Turtle("larger")
    
    tortoise.stamp()
    
    tortoise.hideturtle()
    
    screen.exitonclick()
    

    如果需要更大的灵活性,标准方法似乎是在Turtle / tkinter外部调整图形大小,
    使用PIL模块动态调整图形大小并将其移交给turtle / tkinter。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看