Avatar billede molehonter Mester
14. maj 2021 - 19:27 Der er 4 kommentarer og
1 løsning

Turtle gem output som jpg fil

from turtle import Turtle, Screen

import datetime

# get the current time and convert to the hand's angles
wn = Screen()
wn.title("Clock")
wn.bgcolor("white") #saddlebrown
wn.setup(width=500, height=500)
currentDT = datetime.datetime.now()

******
# moving hour hand
def moveHourHand():
  currentHourInternal = Piktogram_Time()
  degree = (currentHourInternal - 15) * -30
  currentMinuteInternal = datetime.datetime.now().minute
  degree = degree + -0.5 * currentMinuteInternal
  hourHand.setheading(degree)
  wn.ontimer(moveHourHand, 60000)


# moving minute hand
def moveMinuteHand():
    currentMinuteInternal = Piktogram_Min()
    degree = (currentMinuteInternal - 15) * -6
    currentSecondInternal = datetime.datetime.now().second
    degree = degree + (-currentSecondInternal * 0.1)
    minuteHand.setheading(degree)
    wn.ontimer(moveMinuteHand, 1000)


if __name__ == "__main__":
  #moveHourHand()
  #moveMinuteHand()
  wn.ontimer(moveHourHand, 1)
  wn.ontimer(moveMinuteHand, 1)
  wn.exitonclick()

Jeg har brug for lidt hjælp til at gemme outputtet på en JPG fil, jeg har søgt har ikke fået brugbart.
Jeg har ikke kopiret hele koden her, da det virker som det skal men har behov for at kunne gemme det billede som turtle laver.

Hilsen

Peter
Avatar billede ejvindh Guru
15. maj 2021 - 12:11 #1
En mulighed kunne jo være, at lave et helt almindeligt screendump af det, som er på skærmen?
Avatar billede ejvindh Guru
15. maj 2021 - 12:17 #2
Alternativt, hvis det skal være automatisk: Først lave en svg-fil:
https://stackoverflow.com/a/45625195
...og så herefter konvertere denne svg til en jpg:
https://stackoverflow.com/a/62876618
Avatar billede molehonter Mester
17. maj 2021 - 22:26 #3
Hej
Det vil jeg lige prøve det ser enkelt ud.
Avatar billede molehonter Mester
23. maj 2021 - 22:54 #4
Jeg fik det endelig det til at fungere, med nogle hint fra dig.

def main_ur():
  moveHourHand()
  moveMinuteHand()
  turtle.update()
  fileName = 'test'
  wn.tracer(False)
  wn.tracer(True)
  canvas = wn.getcanvas()
  canvas.postscript(file= fileName+'.eps', width=400, height=500)
  EpsImagePlugin.gs_windows_binary = r'C:\Program Files\gs\gs9.54.0\bin\gswin64c'
  img = Image.open(fileName + '.eps')
  img.save(fileName + '.png')
  wn.exitonclick()

if __name__ == "__main__":
  main_ur()
Avatar billede ejvindh Guru
24. maj 2021 - 18:48 #5
Dejligt at du fik det til at virke :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester





Premium
Test: Duer Samsungs første Pro-pc'er til noget?
Samsung Galaxy Book Pro serien er et bevis på, at de etablerede pc-producenter får sig en formidabel udfordrer i den sydkoreanske supersværvægter.
CIO
Der findes ikke noget vigtigere for din virksomhedskultur end psychological safety
Klumme: Forskningen er entydig: Vidensarbejde er mere effektiv, når du tør stille spørgsmål, rejse kritik og indrømme fejl helt uden frygt for at blive straffet eller gjort til grin. Hvis du ikke har fokus på denne del af din virksomhedskultur, så lever din virksomhed og dine medarbejdere ikke op til deres fulde potentiale.
White paper
Helt nye spilleregler: Sådan får du succes på cloudrejsen
Skiftet til cloud udfordrer din forretning og stiller helt nye krav til, hvordan du håndterer projektet – teknisk og strategisk. Få overblik, råd og konkret viden her.