Pemotongan gambar adalah fitur penting dalam aplikasi pengeditan gambar dan desain grafis. Ini memungkinkan Anda mengubah ukuran gambar dan memangkas tepinya. Saat memproses gambar atau mengedit gambar dalam aplikasi Python, pengembang sering kali memerlukan mekanisme pemotongan gambar yang mudah. Jadi dalam postingan blog ini, kita akan mempelajari cara memotong gambar dengan mulus di aplikasi Python.
- Perpustakaan Python untuk Memotong Gambar - Unduh Gratis
- Pangkas Gambar dengan Python
- Pangkas Gambar dengan Nilai Pergeseran
- Pemotongan Gambar menggunakan Persegi Panjang
Perpustakaan Python untuk Memotong Gambar
Untuk memotong gambar, kita akan menggunakan Aspose.Imaging for Python. Ini adalah perpustakaan serbaguna yang menyediakan berbagai fitur untuk bekerja dengan gambar. Khususnya, ini memungkinkan Anda melakukan tugas pengeditan gambar dasar dan lanjutan dengan mudah.
Anda dapat mengunduh perpustakaan atau menginstalnya ke aplikasi Python Anda dari PyPI.
> pip install aspose-imaging-python-net
Memotong Gambar dengan Python
Ada dua cara untuk memotong gambar menggunakan Aspose.Imaging for Python: menggunakan nilai shift dan menggunakan persegi panjang. Dalam metode nilai pergeseran, kami menentukan nilai kiri, kanan, atas, dan bawah untuk pergeseran gambar. Di sisi lain, kami menggunakan persegi panjang untuk menentukan area pemotongan pada metode kedua.
Jadi mari kita bahas masing-masing metode pemotongan gambar di atas dengan bantuan cuplikan kode Python.
Pangkas Gambar dengan Nilai Shift dengan Python
Langkah-langkah di bawah ini menunjukkan cara memotong gambar menggunakan nilai shift dengan Python.
- Pertama, gunakan metode Image.load() untuk memuat gambar sebagai RasterImage.
- Kemudian, simpan gambar dalam cache untuk kinerja yang lebih baik.
- Tentukan nilai shift kiri, kanan, atas, dan bawah.
- Teruskan nilai shift ke metode RasterImage.crop() dan pangkas gambar.
- Terakhir, simpan gambar yang dipotong menggunakan metode RasterImage.save().
Cuplikan kode berikut menunjukkan cara memotong gambar dengan Python.
import aspose.pycore as aspycore
from aspose.imaging import RasterImage, Image, Rectangle
import os
if 'TEMPLATE_DIR' in os.environ:
templates_folder = os.environ['TEMPLATE_DIR']
else:
templates_folder = r"C:\Users\USER\Downloads\templates"
delete_output = 'SAVE_OUTPUT' not in os.environ
data_dir = templates_folder
# Muat gambar yang ada ke dalam instance kelas RasterImage
with aspycore.as_of(Image.load(os.path.join(data_dir, "template.jpg")), RasterImage) as raster_image:
# Sebelum dipotong, gambar harus di-cache untuk kinerja yang lebih baik
if not raster_image.is_cached:
raster_image.cache_data()
# Tentukan nilai pergeseran untuk keempat sisi
left_shift = 10
right_shift = 10
top_shift = 10
bottom_shift = 10
# Berdasarkan nilai pergeseran, terapkan pemotongan pada gambar
raster_image.crop(left_shift, right_shift, top_shift, bottom_shift)
# Simpan gambar yang dipotong
raster_image.save(os.path.join(data_dir, "result.jpg"))
if delete_output:
os.remove(os.path.join(data_dir, "result.jpg"))
Di bawah ini adalah tangkapan layar gambar masukan (pertama) dan versi yang dipotong (kedua).
Memotong Gambar dengan Persegi Panjang
Dalam metode ini, kita mendefinisikan persegi panjang untuk memotong area tertentu pada gambar yang dimuat. Gambar yang dihasilkan berisi bagian gambar yang berada di dalam persegi panjang tersebut. Berikut langkah-langkah melakukan crop gambar menggunakan persegi panjang.
- Pertama, gunakan metode Image.load() untuk memuat gambar sebagai RasterImage.
- Kemudian, cache gambar tersebut.
- Buat Persegi Panjang dengan ukuran yang diinginkan.
- Lewatkan objek Rectangle ke metode RasterImage.crop() dan potong gambarnya.
- Terakhir, simpan gambar yang dipotong menggunakan metode RasterImage.save().
Cuplikan kode berikut menunjukkan pemotongan gambar dengan persegi panjang dengan Python.
import aspose.pycore as aspycore
from aspose.imaging import RasterImage, Image, Rectangle
import os
if 'TEMPLATE_DIR' in os.environ:
templates_folder = os.environ['TEMPLATE_DIR']
else:
templates_folder = r"C:\Users\USER\Downloads\templates"
delete_output = 'SAVE_OUTPUT' not in os.environ
data_dir = templates_folder
# Muat gambar yang ada ke dalam instance kelas RasterImage
with aspycore.as_of(Image.load(os.path.join(data_dir, "template.jpg")), RasterImage) as raster_image:
if not raster_image.is_cached:
raster_image.cache_data()
# Buat instance kelas Rectangle dengan ukuran yang diinginkan
rectangle = Rectangle(20, 20, 20, 20)
# Pangkas gambar
raster_image.crop(rectangle)
# Menyimpan gambar
raster_image.save(os.path.join(data_dir, "result.jpg"))
if delete_output:
os.remove(os.path.join(data_dir, "result.jpg"))
Dapatkan Perpustakaan Pemangkasan Gambar Python Gratis
Anda bisa mendapatkan lisensi sementara gratis dan memotong gambar tanpa batasan evaluasi.
Kesimpulan
Aspose.Imaging for Python memberikan solusi tangguh untuk pemotongan dan manipulasi gambar. Entri blog ini memberi Anda beberapa metode pemotongan gambar yang dapat Anda integrasikan dengan mudah ke dalam aplikasi Python Anda. Tingkatkan kemampuan pemrosesan gambar Anda dengan API pengeditan gambar Python yang canggih ini. Jelajahi fitur-fiturnya yang luar biasa dengan mengunjungi dokumentasi dan sampaikan pertanyaan Anda kepada kami melalui forum kami.