


Jika anda pernah mahu mempunyai kertas dinding yang dikemas kini secara automatik mengikut masa dan tarikh semasa, tutorial ini adalah untuk anda. Kami akan menggunakan Python dan beberapa perpustakaan seperti PIL (Bantal) untuk menjana imej, menambah teks dinamik dengan masa dan tarikh, dan kemudian menetapkan imej ini sebagai kertas dinding pada Windows.
Apa yang kita perlukan?
Python dipasang: Jika anda belum memasang Python lagi, anda boleh memuat turunnya daripada python.org.
-
Pasang perpustakaan:
- Bantal: Untuk bekerja dengan imej.
- ctypes: Untuk berinteraksi dengan sistem pengendalian dan menukar kertas dinding dalam Windows.
Anda boleh memasang Bantal dengan menjalankan arahan berikut dalam terminal atau cmd anda: pip pasang bantal
- Fail fon: Kami memerlukan fon TrueType (.ttf) untuk memaparkan teks pada imej. Dalam kod contoh, kami menggunakan fon FiraCode, tetapi anda boleh menggunakan mana-mana fon yang anda suka.
1. Import dan konfigurasi awal
Pada permulaan skrip, kami mengimport perpustakaan yang diperlukan dan menentukan beberapa parameter awal seperti warna latar belakang, warna teks, saiz fon dan laluan fail fon:
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
- Bantal (Image, ImageDraw, ImageFont) digunakan untuk mencipta imej dan melukis teks.
- ctypes digunakan untuk menukar kertas dinding dalam Windows.
- masa dan tarikh masa membolehkan kami mengurus masa dan tarikh.
- warna_latar belakang dan warna_teks ialah warna yang akan kami gunakan untuk latar belakang dan teks.
2. Memformat tarikh dan masa
Kami mentakrifkan fungsi untuk memastikan nombor tarikh dan masa sentiasa diformatkan dengan dua digit:
def two_digits_format(number): return f"0{number}" if number <p>Sebagai contoh, hari "5" akan diformatkan sebagai "05", dan perkara yang sama akan berlaku dengan jam, minit dan saat.</p> <h2> 3. Hasilkan imej dengan tarikh dan masa </h2> <p>Fungsi add_text_to_image() mencipta imej kosong baharu dengan saiz skrin (dalam kes ini, 1920x1080) dan melukis teks di tengah:<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")}" }} }}"""
Dalam fungsi ini, kami mendapat tarikh dan masa semasa menggunakan datetime.now(), dan kemudian memformat teks ke dalam format JSON. Ini dipaparkan dalam imej yang kami hasilkan.
Kemudian, kami mengira bahagian tengah skrin untuk meletakkan teks di sana:
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. Tetapkan imej sebagai kertas dinding
Fungsi set_as_wallpaper() menyimpan imej yang dijana sebagai fail sementara dan kemudian menetapkannya sebagai kertas dinding:
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
Di sini, ctypes.windll.user32.SystemParametersInfoW ialah fungsi Windows yang membolehkan anda menukar kertas dinding.
5. Pengemaskinian berterusan kertas dinding
Dalam gelung while True:, imej dijana dan ditetapkan sebagai kertas dinding sekali sesaat:
def two_digits_format(number): return f"0{number}" if number <p>Gelung ini memastikan bahawa kertas dinding dikemas kini setiap saat dengan masa dan tarikh semasa.</p> <p>Kod penuh di sini: GitHub</p> <h2> Kesimpulan </h2> <p>Kod ini menawarkan cara mudah untuk menjana kertas dinding dinamik yang sentiasa menunjukkan masa dan tarikh semasa. Anda boleh menyesuaikan rupa kertas dinding dengan melaraskan warna, fon dan saiz imej. Selain itu, kod ini direka bentuk untuk cekap, dengan pengemaskinian kertas dinding berlaku setiap saat.</p> <p>Jika anda sedang mencari cara yang menyeronokkan untuk mengetahui tentang manipulasi imej dalam Python dan cara berinteraksi dengan sistem pengendalian, projek ini merupakan titik permulaan yang bagus.</p>
Atas ialah kandungan terperinci Cara membuat Kertas Dinding dinamik dengan Masa dan Tarikh menggunakan Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Tutorial ini menunjukkan cara menggunakan Python untuk memproses konsep statistik undang -undang ZIPF dan menunjukkan kecekapan membaca dan menyusun fail teks besar Python semasa memproses undang -undang. Anda mungkin tertanya -tanya apa maksud pengedaran ZIPF istilah. Untuk memahami istilah ini, kita perlu menentukan undang -undang Zipf. Jangan risau, saya akan cuba memudahkan arahan. Undang -undang Zipf Undang -undang Zipf hanya bermaksud: Dalam korpus bahasa semulajadi yang besar, kata -kata yang paling kerap berlaku muncul kira -kira dua kali lebih kerap sebagai kata -kata kerap kedua, tiga kali sebagai kata -kata kerap ketiga, empat kali sebagai kata -kata kerap keempat, dan sebagainya. Mari kita lihat contoh. Jika anda melihat corpus coklat dalam bahasa Inggeris Amerika, anda akan melihat bahawa perkataan yang paling kerap adalah "th

Artikel ini menerangkan cara menggunakan sup yang indah, perpustakaan python, untuk menghuraikan html. Ia memperincikan kaedah biasa seperti mencari (), find_all (), pilih (), dan get_text () untuk pengekstrakan data, pengendalian struktur dan kesilapan HTML yang pelbagai, dan alternatif (sel

Berurusan dengan imej yang bising adalah masalah biasa, terutamanya dengan telefon bimbit atau foto kamera resolusi rendah. Tutorial ini meneroka teknik penapisan imej di Python menggunakan OpenCV untuk menangani isu ini. Penapisan Imej: Alat yang berkuasa Penapis Imej

Python, kegemaran sains dan pemprosesan data, menawarkan ekosistem yang kaya untuk pengkomputeran berprestasi tinggi. Walau bagaimanapun, pengaturcaraan selari dalam Python memberikan cabaran yang unik. Tutorial ini meneroka cabaran -cabaran ini, memberi tumpuan kepada Interprete Global

Artikel ini membandingkan tensorflow dan pytorch untuk pembelajaran mendalam. Ia memperincikan langkah -langkah yang terlibat: penyediaan data, bangunan model, latihan, penilaian, dan penempatan. Perbezaan utama antara rangka kerja, terutamanya mengenai grap pengiraan

Tutorial ini menunjukkan mewujudkan struktur data saluran paip tersuai di Python 3, memanfaatkan kelas dan pengendali yang berlebihan untuk fungsi yang dipertingkatkan. Fleksibiliti saluran paip terletak pada keupayaannya untuk menggunakan siri fungsi ke set data, GE

Serialization dan deserialization objek Python adalah aspek utama dari mana-mana program bukan remeh. Jika anda menyimpan sesuatu ke fail python, anda melakukan siri objek dan deserialization jika anda membaca fail konfigurasi, atau jika anda menjawab permintaan HTTP. Dalam erti kata, siri dan deserialization adalah perkara yang paling membosankan di dunia. Siapa yang peduli dengan semua format dan protokol ini? Anda mahu berterusan atau mengalirkan beberapa objek python dan mengambilnya sepenuhnya pada masa yang akan datang. Ini adalah cara yang baik untuk melihat dunia pada tahap konseptual. Walau bagaimanapun, pada tahap praktikal, skim siri, format atau protokol yang anda pilih boleh menentukan kelajuan, keselamatan, kebebasan status penyelenggaraan, dan aspek lain dari program

Modul Statistik Python menyediakan keupayaan analisis statistik data yang kuat untuk membantu kami dengan cepat memahami ciri -ciri keseluruhan data, seperti biostatistik dan analisis perniagaan. Daripada melihat titik data satu demi satu, cuma melihat statistik seperti min atau varians untuk menemui trend dan ciri dalam data asal yang mungkin diabaikan, dan membandingkan dataset besar dengan lebih mudah dan berkesan. Tutorial ini akan menjelaskan cara mengira min dan mengukur tahap penyebaran dataset. Kecuali dinyatakan sebaliknya, semua fungsi dalam modul ini menyokong pengiraan fungsi min () dan bukan hanya menjumlahkan purata. Nombor titik terapung juga boleh digunakan. Import secara rawak Statistik import dari fracti


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

EditPlus versi Cina retak
Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

Pelayar Peperiksaan Selamat
Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.

MantisBT
Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

SublimeText3 versi Inggeris
Disyorkan: Versi Win, menyokong gesaan kod!

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)
