У цьому посібнику описано деталі об’єднання photos у Python. У ньому пояснюються параметри середовища, крок за кроком хід програми та робочий зразок коду для створення з’єднувача фотографій у Python. Крім того, для вбудовування цієї функції у ваші програми не потрібні додаткові програми обробки зображень.
Кроки для об’єднання фотографій у Python
- Підготуйте систему, налаштувавши Aspose.Imaging for Python для об’єднання фотографій
- Створіть список вихідних зображень і обчисліть розміри для об’єднаного зображення
- Об’єднайте завантажені зображення та визначте вихідне джерело
- Встановити спеціальні властивості класу JpegOptions
- Експортуйте вихідне об’єднане зображення з об’єктом класу JpegImage
Наведені вище кроки підсумовують процес комбінування фотографій у Python. По-перше, вам потрібно перерахувати різні зображення, щоб об’єднати в одне зображення. Потім обчисліть новий розмір і вміст зображення перед відтворенням вихідного зображення під час експорту його на диск або потік на основі дизайну вашої програми.
Код для створення об’єднувача зображень у 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) |
Цього фрагмента коду достатньо, щоб створити базовий об’єднувач зображень у Python. Він працює з різними методами, наданими класом JpegImage, для створення вихідної фотографії та зчитування розмірів вхідних зображень. Згодом він визначає прямокутник і відтворює згенероване фото, викликаючи метод Save. Крім того, ви можете налаштувати згенероване зображення відповідно до ваших потреб, встановивши коефіцієнт масштабування, колірний профіль RGB, режим округлення зразка тощо.
У цій статті ви дізналися злиття зображень у Python. Якщо ви хочете навчитися обрізати зображення, зверніться до статті обрізати зображення в Python.