


So erstellen Sie mit Python ein dynamisches Hintergrundbild mit Uhrzeit und Datum
Wenn Sie sich schon immer ein Hintergrundbild gewünscht haben, das automatisch mit der aktuellen Uhrzeit und dem aktuellen Datum aktualisiert wird, ist dieses Tutorial genau das Richtige für Sie. Wir werden Python und einige Bibliotheken wie PIL (Pillow) verwenden, um ein Bild zu generieren, dynamischen Text mit Uhrzeit und Datum hinzuzufügen und dieses Bild dann als Hintergrundbild unter Windows festzulegen.
Was brauchen wir?
Python installiert: Wenn Sie Python noch nicht installiert haben, können Sie es von python.org herunterladen.
-
Bibliotheken installieren:
- Kissen: Zum Arbeiten mit Bildern.
- ctypes: Zur Interaktion mit dem Betriebssystem und zum Ändern des Hintergrundbilds in Windows.
Sie können Pillow installieren, indem Sie den folgenden Befehl in Ihrem Terminal oder cmd ausführen: pip install Pillow
- Eine Schriftartdatei: Wir benötigen eine TrueType-Schriftart (.ttf), um den Text auf dem Bild darzustellen. Im Beispielcode verwenden wir die Schriftart FiraCode, Sie können jedoch jede beliebige Schriftart verwenden.
1. Importe und Erstkonfiguration
Zu Beginn des Skripts importieren wir die notwendigen Bibliotheken und definieren einige anfängliche Parameter wie Hintergrundfarbe, Textfarbe, Schriftgröße und Pfad der Schriftdatei:
from PIL import Image, ImageDraw, ImageFont import ctypes, os, time, io from datetime import datetime background_color = (0, 0, 0) # Color de fondo (negro) text_color = (22, 230, 69) # Color del texto (verde) font_size = 30 font_path = r"c:/Users/david/Desktop/FiraCodeRegular.ttf" # Ruta de la fuente font = ImageFont.truetype(font_path, font_size) screen_width = 1920 screen_height = 1080
- Pillow (Image, ImageDraw, ImageFont) wird verwendet, um das Bild zu erstellen und den Text zu zeichnen.
- ctypes wird verwendet, um das Hintergrundbild in Windows zu ändern.
- Zeit und Datum/Uhrzeit ermöglichen uns die Verwaltung von Zeiten und Daten.
- Hintergrundfarbe und Textfarbe sind die Farben, die wir für den Hintergrund und den Text verwenden werden.
2. Formatieren von Datum und Uhrzeit
Wir definieren eine Funktion, um sicherzustellen, dass die Datums- und Uhrzeitzahlen immer mit zwei Ziffern formatiert werden:
def two_digits_format(number): return f"0{number}" if number <p>Zum Beispiel wird Tag „5“ als „05“ formatiert, und das Gleiche gilt für Stunde, Minute und Sekunde.</p> <h2> 3. Erzeugen Sie das Bild mit Datum und Uhrzeit </h2> <p>Die Funktion add_text_to_image() erstellt ein neues leeres Bild mit der Größe des Bildschirms (in diesem Fall 1920 x 1080) und zeichnet den Text in die Mitte:<br> </p> <pre class="brush:php;toolbar:false">def agregar_texto_a_imagen(): now = datetime.now() texto = f"""{{ "date": {{ "day": {two_digits_format(now.day)}, "month": {two_digits_format(now.month)}, "year": {now.year} }}, "time": {{ "hour": {two_digits_format(now.hour)}, "minute": {two_digits_format(now.minute)}, "second": {two_digits_format(now.second)}, "meridiem": "{now.strftime("%p")}" }} }}"""
In dieser Funktion rufen wir das aktuelle Datum und die aktuelle Uhrzeit mit datetime.now() ab und formatieren den Text dann im JSON-Format. Dies wird in dem von uns erstellten Bild wiedergegeben.
Dann berechnen wir die Mitte des Bildschirms, um den Text dort zu platzieren:
bbox = draw.textbbox((0, 0), texto, font=font) ancho_texto = bbox[2] - bbox[0] altura_texto = bbox[3] - bbox[1] posicion_x = (ancho_imagen - ancho_texto) // 2 posicion_y = (altura_imagen - altura_texto) // 2 posicion = (posicion_x, posicion_y)
4. Legen Sie das Bild als Hintergrundbild fest
Die Funktion set_as_wallpaper() speichert das generierte Bild als temporäre Datei und legt es dann als Hintergrundbild fest:
from PIL import Image, ImageDraw, ImageFont import ctypes, os, time, io from datetime import datetime background_color = (0, 0, 0) # Color de fondo (negro) text_color = (22, 230, 69) # Color del texto (verde) font_size = 30 font_path = r"c:/Users/david/Desktop/FiraCodeRegular.ttf" # Ruta de la fuente font = ImageFont.truetype(font_path, font_size) screen_width = 1920 screen_height = 1080
Hier ist ctypes.windll.user32.SystemParametersInfoW eine Windows-Funktion, mit der Sie das Hintergrundbild ändern können.
5. Kontinuierliche Aktualisierung des Hintergrundbilds
In der while True:-Schleife wird das Bild einmal pro Sekunde generiert und als Hintergrundbild festgelegt:
def two_digits_format(number): return f"0{number}" if number <p>Diese Schleife stellt sicher, dass das Hintergrundbild jede Sekunde mit der aktuellen Uhrzeit und dem aktuellen Datum aktualisiert wird.</p> <p>Vollständiger Code hier: GitHub</p> <h2> Abschluss </h2> <p>Dieser Code bietet eine einfache Möglichkeit, ein dynamisches Hintergrundbild zu generieren, das immer die aktuelle Uhrzeit und das aktuelle Datum anzeigt. Sie können das Erscheinungsbild des Hintergrundbilds anpassen, indem Sie die Farben, die Schriftart und die Bildgröße anpassen. Darüber hinaus ist der Code auf Effizienz ausgelegt, da das Hintergrundbild jede Sekunde aktualisiert wird.</p> <p>Wenn Sie nach einer unterhaltsamen Möglichkeit suchen, etwas über die Bildmanipulation in Python und die Interaktion mit dem Betriebssystem zu lernen, ist dieses Projekt ein guter Ausgangspunkt.</p>
Das obige ist der detaillierte Inhalt vonSo erstellen Sie mit Python ein dynamisches Hintergrundbild mit Uhrzeit und Datum. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

PythonusesahybridmodelofCompilation und Interpretation: 1) thepythonInterPreterCompilessourceCodeIntoplatform-unintenpendentBytecode.2) Thepythonvirtualmachine (PVM) ThenexexexexecthisByTeCode, BalancingeAnsewusewithperformance.

Pythonisbothinterpreted und kompiliert.1) ItscompiledToByteCodeForPortabilityAcrossplatform.2) thytecodeTheninterpreted, und das ErlaubnisfordyNamictyPingandRapidDevelopment zulässt, obwohl es sich

ForloopsaridealWenyouKnowtHenumberofofiterationssinadvance, während whileloopsarebetterForsituationswhereyouneedtoloopuntilaconditionismet.forloopsaremoreffictionAndable, geeigneter Verfaserungsverlust, whereaswiloopsofofermorcontrolanduseusefulfulf

Forloopsareusedwhenthenumberofiterationsisknowninadvance,whilewhileloopsareusedwhentheiterationsdependonacondition.1)Forloopsareidealforiteratingoversequenceslikelistsorarrays.2)Whileloopsaresuitableforscenarioswheretheloopcontinuesuntilaspecificcond

Pythonisnotpurelyinterpretiert; itusesahybridapproachofByteCodecompilation undruntimeinterpretation.1) PythoncompilessourcecodeIntoBytecode, die ISthenexecutBythepythonvirtualmachine (Pvm)

ToconcatenatelistsinpythonWithThesameElements, Verwendung: 1) Die Operatortokeepduplikate, 2) asettoremoveduplicate, or3) listenConpRectionforControloverDuplikate, EvermethodhasDifferentPerformanceInDormplocate.

PythonisaninterpretedLuage, OfferingaseofuseandflexibilitätsbutfacingPerformancelimitationsincriticalApplications.1) InterpretedLanguages LikePythonexecutine-by-Line, ermöglicht, dassmediateFeedbackandrapidPrototyping.2) CompiledLanguagesslikec/C.5.

Useforloopswhenthenumberofofiterationssisknowninadvance und wileloopswhenCiterationsDependonacondition.1) Forloopsardealforsequencelistorranges.2) Während


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

SublimeText3 Linux neue Version
SublimeText3 Linux neueste Version

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

WebStorm-Mac-Version
Nützliche JavaScript-Entwicklungstools

MinGW – Minimalistisches GNU für Windows
Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

Dreamweaver CS6
Visuelle Webentwicklungstools
