Saya akhirnya coding sendiri saran dari komentar ini dibuat oleh pengguna @ P.Melch dan disarankan oleh @Mithril pada proyek yang sedang saya kerjakan.
Saya kode keluar dari batas keamanan juga, ini kode untuk itu . (Saya menautkan komit tertentu karena hal-hal dapat berubah di masa depan repositori ini)
Catatan: Saya berharap array numpy dari gambar seperti sehingga np.array(Image.open(...))
input A dan B dari copy_from
dan overlay
argumen fungsi terkait ini .
Ketergantungan adalah fungsi tepat sebelum itu, copy_from
metode, dan array numpy sebagai konten Gambar PIL untuk mengiris.
Meskipun file tersebut sangat berorientasi kelas, jika Anda ingin menggunakan fungsi itu overlay_transparent
, pastikan untuk mengganti nama self.frame
ke array numpy gambar latar belakang Anda.
Atau Anda bisa menyalin seluruh file (mungkin menghapus beberapa impor dan Utils
kelas) dan berinteraksi dengan kelas Bingkai ini seperti:
# Assuming you named the file frame.py in the same directory
from frame import Frame
background = Frame()
overlay = Frame()
background.load_from_path("your path here")
overlay.load_from_path("your path here")
background.overlay_transparent(overlay.frame, x=300, y=200)
Kemudian, Anda memiliki background.frame
array yang dikomposisikan secara overlay dan alfa, Anda bisa mendapatkan gambar PIL darinya dengan overlayed = Image.fromarray(background.frame)
atau sesuatu seperti:
overlayed = Frame()
overlayed.load_from_array(background.frame)
Atau sama background.save("save path")
seperti yang mengambil langsung dari internal yang dikomposisikan alfaself.frame
variabel .
Anda dapat membaca file dan menemukan beberapa fungsi lainnya baik dengan implementasi saya ini kode seperti metode get_rgb_frame_array
, resize_by_ratio
, resize_to_resolution
, rotate
, gaussian_blur
, transparency
,vignetting
:)
Anda mungkin ingin menghapus resolve_pending
metode karena itu spesifik untuk proyek itu.
Senang jika saya membantu Anda, pastikan untuk memeriksa repo proyek yang saya bicarakan, pertanyaan dan utas ini banyak membantu saya dalam pengembangan :)
;
di akhir perintah Anda dengan python: Ini jelek ...