Panduan ini membahas detail untuk menggabungkan photos dalam Python. Panduan ini menjelaskan pengaturan lingkungan, alur program langkah demi langkah, dan contoh kode yang berfungsi untuk membuat penggabung foto dalam Python. Lebih jauh, tidak diperlukan aplikasi pemrosesan gambar tambahan untuk menanamkan fitur ini ke dalam program Anda.
Langkah-langkah Menggabungkan Foto dalam Python
- Siapkan sistem dengan mengonfigurasi Aspose.Imaging for Python untuk menggabungkan foto
- Buat daftar gambar sumber dan hitung dimensi untuk gambar yang digabungkan
- Gabungkan gambar yang dimuat dan tentukan sumber keluaran
- Tetapkan properti khusus kelas JpegOptions
- Ekspor gambar gabungan keluaran dengan objek kelas JpegImage
Langkah-langkah di atas merangkum proses untuk menggabungkan foto dalam Python. Pertama, Anda perlu mencantumkan gambar yang berbeda untuk digabungkan menjadi satu gambar. Kemudian, hitung dimensi dan konten gambar baru sebelum merender gambar keluaran saat mengekspornya ke disk atau aliran berdasarkan desain aplikasi Anda.
Kode untuk Membuat Penggabung Gambar dalam Python
import aspose.imaging | |
import aspose.pycore as aspycore | |
from aspose.imaging import Image, Rectangle, RasterImage | |
from aspose.imaging.imageoptions import JpegOptions | |
from aspose.imaging.sources import StreamSource | |
from aspose.imaging.fileformats.jpeg import JpegImage | |
from aspose.imaging.extensions import StreamExtensions | |
import os | |
import functools | |
data_dir = "C://SampleFiles//" | |
license = aspose.imaging.License() | |
license.set_license(data_dir + "License.lic") | |
delete_output = 'SAVE_OUTPUT' not in os.environ | |
#data_dir = templates_folder | |
image_paths = [os.path.join(data_dir, "grayscaled.jpg"), os.path.join(data_dir, "grayscaled.jpg")] | |
output_path = os.path.join(data_dir, "mergedresult.jpg") | |
temp_file_path = os.path.join(data_dir, "tempmerge.jpg") | |
# Getting resulting image size. | |
image_sizes = [] | |
for image_path in image_paths: | |
with Image.load(image_path) as image: | |
image_sizes.append(image.size) | |
new_width = 0 | |
new_height = 0 | |
for size in image_sizes: | |
new_height += size.height | |
new_width = max(new_width, size.width) | |
# Combining images into new one. | |
with StreamExtensions.create_memory_stream() as memory_stream: | |
output_stream_source = StreamSource(memory_stream) | |
with JpegOptions() as options: | |
options.source = output_stream_source | |
options.quality = 100 | |
with aspycore.as_of(Image.create(options, new_width, new_height), JpegImage) as new_image: | |
stitched_height = 0 | |
for image_path in image_paths: | |
with aspycore.as_of(Image.load(image_path), RasterImage) as image: | |
bounds = Rectangle(0, stitched_height, image.width, image.height) | |
new_image.save_argb_32_pixels(bounds, image.load_argb_32_pixels(image.bounds)) | |
stitched_height += image.height | |
new_image.save(output_path) |
Potongan kode ini cukup untuk membuat penggabung gambar dasar dalam Python. Ia bekerja dengan berbagai metode yang dipaparkan oleh kelas JpegImage untuk menghasilkan foto keluaran dan membaca dimensi gambar masukan. Selanjutnya, ia mendefinisikan persegi panjang dan merender foto yang dihasilkan dengan memanggil metode Save. Selain itu, Anda dapat menyesuaikan gambar yang dihasilkan berdasarkan kebutuhan Anda dengan mengatur faktor skala, profil warna RGB, mode pembulatan sampel, dll.
Dalam artikel ini, Anda telah mempelajari penggabungan gambar dalam Python. Jika Anda ingin mempelajari pemotongan gambar, lihat artikel di memotong gambar dengan Python.