Pokud hledáte snadno implementovatelnou a přitom přesnou metodu programové změny velikosti obrázků, jste na správném místě. Tento článek ukazuje, jak změnit velikost obrázků v Javě v několika jednoduchých krocích.

Změňte velikost obrázku pomocí Java Image Resizer

editoři obrázků poskytují funkci změny velikosti, která vám umožní upravit velikost obrázků podle vašich požadavků. Při navrhování editoru obrázků nebo zpracovávání obrázků z vašich aplikací Java možná budete muset změnit velikost obrázků programově. Abychom toho dosáhli, tento článek popisuje, jak změnit velikost obrázků v Javě. Kromě toho se také naučíte, jak měnit velikost obrázků pomocí různých technik změny velikosti.

Změna velikosti obrázků v Javě - Instalace API

Aspose.Imaging for Java je široce používané rozhraní API pro zpracování obrázků, které umožňuje poměrně snadno manipulovat s obrázky. Toto API použijeme ke změně velikosti obrázků v tomto článku. API si můžete stáhnout z části ke stažení. Můžete jej také nainstalovat z Maven pomocí následující konfigurace v pom.xml.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-imaging-java</artifactId>
    <version>21.12</version>
    <classifier>jdk16</classifier>
</dependency>

Změna velikosti rastrových obrázků v Javě

Aspose.Imaging for Java poskytuje dva způsoby změny velikosti rastrových obrázků. Jedním z nich je jednoduchá změna velikosti, ve které zadáte výšku a šířku výsledného obrázku. Zatímco ve druhé metodě také zadáte typ změny velikosti, který API informuje o technice změny velikosti, která by měla být použita, jako je Lanczos Resampling, Nearest Neighbor Resampling atd. V následujících částech probereme, jak implementovat každý z tyto metody pro změnu velikosti obrázků.

Jednoduchá změna velikosti obrázků v Javě

Při této metodě změny velikosti musíte zadat pouze rozměry výsledného obrázku. Následují kroky ke změně velikosti obrázku v Javě.

  • Nejprve použijte třídu Image k načtení obrázku, jehož velikost chcete změnit.
  • Poté zavolejte metodu Image.resize(int, int) pro změnu velikosti obrázku.
  • Nakonec výsledný obrázek uložte pomocí metody Image.save(string).

Následující fragment kódu změní velikost obrázku na zadanou výšku a šířku.

// Načíst obrázek
Image image = Image.load("aspose-logo.jpg");

// Definujte nové dimenze
image.resize(300, 300);

// Uložit obrázek
image.save("SimpleResizing_out.jpg");

Java Změňte velikost obrázku pomocí konkrétního typu

Aspose.Imaging for Java poskytuje širokou škálu technik změny velikosti, které jsou uvedeny zde. Můžete si vybrat ten, který vyhovuje vašemu scénáři. Pro kvalitní změnu velikosti obrázku se doporučuje například Lanczos Resampling, funguje však pomaleji. Zatímco pro rychlou změnu velikosti se používá převzorkování Nearest Neighbor, snižuje to kvalitu obrazu. Následují kroky ke změně velikosti obrázku pomocí konkrétní techniky změny velikosti.

Následující ukázka kódu ukazuje, jak změnit velikost obrázku pomocí konkrétní techniky změny velikosti.

// Načíst obrázek
Image image = Image.load("aspose-logo.jpg");

// Definujte nové rozměry a změňte typ velikosti
image.resize(300, 300, ResizeType.LanczosResample);

// Uložit obrázek
image.save("SimpleResizing_out.jpg");

Proporcionální změna velikosti obrázku v Javě

Poměr stran se vypočítá při změně velikosti obrázků, aby se předešlo zmenšení nebo zmenšení výsledných obrázků. Jakýkoli nesprávný výpočet poměru stran však může způsobit roztažení obrazu. Abyste se těchto problémů zbavili, můžete nechat API, aby se o poměr stran postaralo samo. Následují kroky pro proporcionální změnu velikosti obrázku.

Můžete také určit konkrétní typ změny velikosti při proporcionální změně velikosti obrázku pomocí metod přetížení Image.resizeWidthProportionally(int, ResizeType) a Image.resizeHeightProportionally(int, ResizeType).

Následující ukázka kódu Java ukazuje, jak proporcionálně změnit velikost obrázku.

// Načíst obrázek
Image image = Image.load("aspose-logo.jpg");

// Definujte nové dimenze
int newWidth = image.getWidth() / 2;
image.resizeWidthProportionally(newWidth);
int newHeight = image.getHeight() / 2;
image.resizeHeightProportionally(newHeight);

// Uložit obrázek
image.save("SimpleResizing_out.jpg");

Změna velikosti vektorových obrázků v Javě

Můžete také změnit velikost vektorového obrázku a uložit jej do formátu rastrového obrázku, jako je PNG, JPEG, GIF atd. Následující kód ukazuje, jak toho dosáhnout v Javě pomocí Aspose.Imaging.

// Načíst vektorový obrázek
try (Image image = Image.load("image.svg"))
{
  	// Definujte nové dimenze
	image.resize(image.getWidth() * 10,image.getHeight() * 15);
  
  	// Uložte obrázek jako PNG
	image.save("Logotype_10_15.png", new PngOptions());
}

Java Image Resizing API – Získejte bezplatnou licenci

Můžete používat Aspose.Imaging pro Javu a měnit velikost obrázků bez omezení hodnocení získáním bezplatné dočasné licence.

Závěr

V tomto článku jste se naučili, jak změnit velikost obrázků v Javě. Dále se článek zabývá tím, jak změnit velikost obrázků pomocí různých technik, jako je Lanczos Resampling, Nearest Neighbor Resampling atd. Kromě toho je také diskutována proporcionální změna velikosti obrázku a změna velikosti vektorových obrázků v Javě. Můžete navštívit dokumentace a přečíst si více o rozhraní API pro zpracování obrazu Java. Také se můžete poučit z ukázek zdrojového kódu dostupných na GitHub. V případě jakýchkoliv dotazů nás můžete kontaktovat na našem fóru.

Viz také