Oříznutí obrázku je základní funkcí v aplikacích pro úpravu obrázků a návrh grafiky. Umožňuje změnit velikost obrázků a oříznout jejich okraje. Při zpracování obrázků nebo úpravách obrázků v aplikacích Python vývojáři často vyžadují jednoduchý mechanismus ořezávání obrázků. V tomto příspěvku na blogu se tedy naučíme, jak plynule oříznout obrázky v aplikaci Python.
- Knihovna Python pro oříznutí obrázků – ke stažení zdarma
- Oříznout obrázky v Python
- Oříznutí obrázků s hodnotami posunu
- Oříznutí obrázku pomocí obdélníku
Knihovna Python pro oříznutí obrázků
Pro oříznutí obrázku použijeme Aspose.Imaging for Python. Jedná se o všestrannou knihovnu, která poskytuje řadu funkcí pro práci s obrázky. Zejména vám umožňuje snadno provádět základní i pokročilé úkoly úpravy obrázků.
Knihovnu si můžete buď stáhnout, nebo ji nainstalovat do svých aplikací Python z PyPI.
> pip install aspose-imaging-python-net
Oříznutí obrázku v Python
Existují dva způsoby, jak oříznout obrázek pomocí Aspose.Imaging for Python: pomocí hodnot posunu a pomocí obdélníku. V metodě hodnot posunu určujeme hodnoty vlevo, vpravo, nahoře a dole pro posun obrazu. Na druhou stranu použijeme obdélník k definování oblasti oříznutí ve druhém způsobu.
Pojďme si tedy projít každou z výše uvedených metod ořezávání obrázků pomocí úryvků kódu Python.
Ořízněte obrázek s hodnotami Shift v Python
Níže uvedené kroky ukazují, jak oříznout obrázek pomocí hodnot posunu v Python.
- Nejprve použijte metodu Image.load() k načtení obrázku jako RasterImage.
- Poté uložte obrázek do mezipaměti pro lepší výkon.
- Zadejte hodnoty posunu vlevo, vpravo, nahoře a dole.
- Předejte hodnoty posunu metodě RasterImage.crop() a ořízněte obrázek.
- Nakonec oříznutý obrázek uložte pomocí metody RasterImage.save().
Následující fragment kódu ukazuje, jak oříznout obrázek v 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
# Načtěte existující obrázek do instance třídy RasterImage
with aspycore.as_of(Image.load(os.path.join(data_dir, "template.jpg")), RasterImage) as raster_image:
# Před oříznutím by měl být obrázek pro lepší výkon uložen do mezipaměti
if not raster_image.is_cached:
raster_image.cache_data()
# Definujte hodnoty posunu pro všechny čtyři strany
left_shift = 10
right_shift = 10
top_shift = 10
bottom_shift = 10
# Na základě hodnot posunu použijte oříznutí obrázku
raster_image.crop(left_shift, right_shift, top_shift, bottom_shift)
# Uložit oříznutý obrázek
raster_image.save(os.path.join(data_dir, "result.jpg"))
if delete_output:
os.remove(os.path.join(data_dir, "result.jpg"))
Níže jsou snímky vstupního obrázku (první) a jeho oříznuté verze (druhá).
Oříznutí obrázku pomocí obdélníku
V této metodě definujeme obdélník pro oříznutí určité oblasti v načteném obrázku. Výsledný obrázek obsahuje část obrázku, která se nachází uvnitř tohoto obdélníku. Následují kroky pro oříznutí obrázku pomocí obdélníku.
- Nejprve použijte metodu Image.load() k načtení obrázku jako RasterImage.
- Poté uložte obrázek do mezipaměti.
- Vytvořte Rectangle požadované velikosti.
- Předejte objekt Rectangle metodě RasterImage.crop() a ořízněte obrázek.
- Nakonec oříznutý obrázek uložte pomocí metody RasterImage.save().
Následující fragment kódu ukazuje oříznutí obrázku pomocí obdélníku v 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
# Načtěte existující obrázek do instance třídy 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()
# Vytvořte instanci třídy Rectangle s požadovanou velikostí
rectangle = Rectangle(20, 20, 20, 20)
# Oříznout obrázek
raster_image.crop(rectangle)
# Uložit obrázek
raster_image.save(os.path.join(data_dir, "result.jpg"))
if delete_output:
os.remove(os.path.join(data_dir, "result.jpg"))
Získejte bezplatnou knihovnu pro ořezávání obrázků v Python
Můžete získat bezplatnou dočasnou licenci a oříznout obrázky bez omezení hodnocení.
Závěr
Aspose.Imaging for Python poskytuje robustní řešení pro ořezávání obrázků a manipulaci s nimi. Tento blogový příspěvek vám poskytl několik metod oříznutí obrázků, které můžete snadno integrovat do svých aplikací Python. Vylepšete své možnosti zpracování obrázků pomocí tohoto výkonného rozhraní API pro úpravu obrázků Python. Prozkoumejte jeho úžasné funkce návštěvou dokumentace a sdílejte s námi své dotazy prostřednictvím našeho fóra.