Ritaglia le immagini in Java

Nei precedenti post del blog, ti abbiamo mostrato come implementare varie funzioni di modifica delle immagini come ridimensionamento, capovolgimento e rotazione immagini. Insieme a queste funzionalità, il ritaglio delle immagini è immensamente utilizzato per ritagliare le aree indesiderate nelle immagini. Inoltre, ritagli un’immagine per mettere a fuoco un particolare oggetto nella cornice. In questo articolo imparerai come ritagliare le immagini in modo programmatico in Java. Dimostreremo come ritagliare un’immagine usando i valori di spostamento o con un rettangolo.

API Java per ritagliare immagini - Download gratuito

Aspose.Imaging for Java è un’incredibile API di modifica delle immagini che fornisce un’ampia gamma di funzionalità per manipolare le immagini. Inoltre, supporta una varietà di formati di immagini raster e vettoriali. Useremo questa API per ritagliare le immagini dall’interno della nostra applicazione Java. Puoi scaricare l’API o installarla utilizzando le seguenti configurazioni Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository> 

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-imaging</artifactId>
    <version>22.9</version>
</dependency>

Ritaglia le immagini in Java

Esistono due modi per ritagliare un’immagine raster: sposta i valori e il rettangolo. Nel primo metodo, dobbiamo fornire i valori di spostamento a sinistra, a destra, in alto e in basso per ritagliare un’immagine. Mentre, nel secondo metodo, definiamo un rettangolo per ritagliare una determinata area di un’immagine.

Diamo un’occhiata a ciascuno dei metodi sopra menzionati per ritagliare le immagini in Java.

Ritaglia le immagini con i valori di spostamento in Java

Di seguito sono riportati i passaggi per ritagliare un’immagine utilizzando i valori di spostamento in Java.

  • Innanzitutto, carica l’immagine in un oggetto RasterImage usando il metodo Image.load().
  • Memorizza l’immagine nella cache se non lo è.
  • Definire i valori di spostamento a sinistra, a destra, in alto e in basso.
  • Ritaglia l’immagine usando il metodo RasterImage.crop().
  • Salva l’immagine ritagliata usando il metodo RasterImage.save().

L’esempio di codice seguente mostra come ritagliare un’immagine in Java.

// Carica un'immagine.
try (RasterImage rasterImage = (RasterImage) Image.load("image.jpg")) {
	// Prima del ritaglio, l'immagine dovrebbe essere memorizzata nella cache per prestazioni migliori.
	if (!rasterImage.isCached()) {
		rasterImage.cacheData();
	}

	// Definire i valori di spostamento per tutti e quattro i lati.
	int leftShift = 10;
	int rightShift = 10;
	int topShift = 10;
	int bottomShift = 10;

	// In base ai valori di spostamento, applica il ritaglio sull'immagine. Il metodo di ritaglio cambierà
	// l'immagine si sposta verso il centro dell'immagine e salva i risultati su disco.
	rasterImage.crop(leftShift, rightShift, topShift, bottomShift);

	// Salva immagine ritagliata.
	rasterImage.save("cropped.jpg");
}

Quella che segue è l’immagine di input che abbiamo usato per il ritaglio.

ritaglia l'immagine in Java

Di seguito è riportata l’immagine ritagliata risultante.

ritaglio delle immagini in Java

Ritaglio di immagini Java usando Rectangle

Puoi anche definire un rettangolo per ritagliare l’area desiderata di un’immagine. I passaggi seguenti mostrano il ritaglio delle immagini utilizzando un rettangolo in Java.

L’esempio di codice seguente mostra come eseguire il ritaglio di immagini con un rettangolo in Java.

// Carica un'immagine.
try (RasterImage rasterImage = (RasterImage) Image.load("image.jpg")) {
	// Prima del ritaglio, l'immagine dovrebbe essere memorizzata nella cache per prestazioni migliori.
	if (!rasterImage.isCached()) {
		rasterImage.cacheData();
	}

	// Crea un'istanza della classe Rectangle con la dimensione desiderata.
	Rectangle rectangle = new Rectangle(20, 20, 20, 20);
	
	// Ritaglia l'immagine.
	rasterImage.crop(rectangle);

	// Salva immagine ritagliata.
	rasterImage.save("cropped.jpg");
}

API di ritaglio di imaging per Java: ottieni una licenza gratuita

Puoi ottenere una licenza temporanea gratuita e ritagliare le immagini senza limitazioni di valutazione.

Conclusione

In questo articolo, hai imparato come ritagliare le immagini in Java. Abbiamo dimostrato un paio di modi per ritagliare un’immagine usando i valori di spostamento o un rettangolo. Inoltre, puoi esplorare di più sull’API di elaborazione delle immagini Java utilizzando documentazione. Inoltre, puoi condividere le tue domande con noi tramite il nostro forum.

Guarda anche