在 python 上偏心图像

Decenter an image on python

我想在我的程序中偏心图像。如您所见,我将边框设置为 -230、-300,但我作为背景放置的图像居中。我想把它放在边框内。

    #SET UP WINDOW
    wn = turtle.Screen()
    wn.bgcolor("black")
    wn.title("x")
    wn.setup(width=800, height=800)
    wn.bgpic("spacebg.png")


    #DRAW GAME BORDER
    border_pen = turtle.Turtle()
    border_pen.speed(0)
    border_pen.color("white")
    border_pen.penup()
    border_pen.setposition(-230, -300)
    border_pen.pendown()
    border_pen.pensize(3)
    for side in range(4):
        border_pen.fd(600)
        border_pen.lt(90)
    border_pen.hideturtle()

由于图像总是以(0, 0)为中心,我们可以使用setworldcoordinates()来改变(0, 0)所在的位置:

import turtle

# SET UP WINDOW
wn = turtle.Screen()
wn.bgcolor('black')
wn.title("x")
wn.setup(width=800, height=800)
wn.setworldcoordinates(-470, -400, 330, 400)  # 70 pixel shift
wn.bgpic("spacebg.png")

# DRAW GAME BORDER
border_pen = turtle.Turtle()
border_pen.speed('fastest')
border_pen.color('white')
border_pen.pensize(3)

border_pen.penup()
border_pen.setposition(-300, -300)
border_pen.pendown()

for side in range(4):
    border_pen.fd(600)
    border_pen.lt(90)

border_pen.hideturtle()

wn.mainloop()