Rotera bilder i Java

Som programmerare kan du ofta behöva manipulera bilderna från dina Java-applikationer. Bildmanipuleringen och redigeringen kan också innefatta rotation av en bild i en viss vinkel. För att uppnå det visar den här artikeln hur man roterar en bild programmatiskt i Java. Dessutom kommer vi att visa hur man roterar och vänder en bild samtidigt.

Java API för att rotera bilder - Gratis nedladdning

Aspose.Imaging for Java är ett bildbehandlings-API som låter dig manipulera ett brett utbud av bildformat. API:et gör det ganska lättare för dig att manipulera bilder utan att skriva mycket kod. Vi kommer att använda detta API för att rotera bilderna. Du kan ladda ner API:et eller installera det i dina Java-applikationer med hjälp av följande Maven-konfigurationer.

<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>

Steg för att rotera en bild i Java

Du kan rotera en bild i antingen en viss vinkel eller standardrotationsvinklarna som 90, 180 och 270 grader. Enumen RotateFlipType används för att specificera rotationsvinkeln (och/eller fliptypen). Du kan utföra en av följande rotationsoperationer på en bild:

  • Rotera en bild
  • Rotera och vänd en bild samtidigt

Följande är stegen för att rotera en bild.

  • Ladda bilden från disken.
  • Ange rotationsvinkeln och rotera bilden.
  • Spara den roterade bilden.

Låt oss nu ta en titt på hur man roterar en bild med Java.

Rotera en bild i Java

För att rotera en bild kan du välja ett av följande värden för RotateFlipType enum.

  • Rotate180FlipNone: 180-graders rotation utan att vända
  • Rotate270FlipNone: 270-graders rotation utan att vända
  • Rotate90FlipNone: 90-graders rotation utan att vända

Låt oss se hur man roterar en bild i 270 grader i Java.

Följande kodsnutt visar hur man utför bildrotation i Java.

// Ladda bilden
RasterImage image = (RasterImage) Image.load("image.bmp");

// Rotera bilden
image.rotateFlip(RotateFlipType.Rotate270FlipNone);

// Spara bild
image.save("rotated-image.bmp");

Följande är ingångsbilden (vänster) och den resulterande bilden (höger) som vi får efter rotation.

rotera en bild i java

Rotera en bild

Java-bildrotation i en speciell vinkel

Du kan också rotera en bild i en annan vinkel än 90, 180 och 270. För detta tillhandahåller API metoden Image.rotate(float angle) som accepterar rotationsvinkeln som en parameter. Följande kodexempel visar hur man roterar en bild i 20 grader i Java.

// Ladda bilden
RasterImage image = (RasterImage) Image.load("image.bmp");

// Cachebild för bättre prestanda
if (!image.isCached()) {
  image.cacheData();
}

// Rotera i 20 grader samtidigt som du behåller bildstorleken
image.rotate(20f);

// Spara bild
image.save("rotated-image.bmp");

Följande är resultatet av kodexemplet ovan.

rotera bilden i en viss vinkel i java

Rotera och vänd en bild i Java

I de föregående avsnitten har du sett hur du roterar en bild i önskad vinkel. Men i vissa fall måste du rotera och vända bilder samtidigt. För att uppnå detta används följande RotateFlipType-värden.

  • Rotate180FlipX: 180-graders rotation med horisontell vändning
  • Rotate180FlipXY: 180-graders rotation med horisontell och vertikal vändning
  • Rotate180FlipY: 180-graders rotation med vertikal vändning
  • Rotate270FlipX: 270-graders rotation med horisontell vändning
  • Rotate270FlipXY: 270-graders rotation med horisontell och vertikal vändning
  • Rotate270FlipY: 270-graders rotation med vertikal vändning
  • Rotate90FlipX: 90-graders rotation med horisontell vändning
  • Rotate90FlipXY: 90-graders rotation med horisontell och vertikal vändning
  • Rotate90FlipY: 90-graders rotation med vertikal vändning

Följande är stegen för att rotera och vända en bild samtidigt i Java.

Följande kodsnutt visar hur man roterar och vänder en bild samtidigt.

// Ladda bilden
RasterImage image = (RasterImage) Image.load("image.bmp");

// Rotera och vänd bilden
image.rotateFlip(RotateFlipType.Rotate180FlipX);

// Spara bild
image.save("rotated-image.bmp");

Följande är den resulterande bilden (höger) som vi får efter att ha applicerat rotation och vändning.

Rotera och vänd en bild i Java

Rotera och vänd en bild

Java Image Rotation API - Skaffa en gratis licens

Du kan få en gratis tillfällig licens för att rotera bilder utan utvärderingsbegränsningar.

Slutsats

I den här artikeln har du lärt dig hur du roterar bilder i Java. Dessutom har du sett hur man roterar och vänder en bild samtidigt. Dessutom behandlade artikeln också hur man roterar en bild i en annan vinkel än 90, 180 och 270 grader.

Java Image Editing API

Om du vill utforska mer om Asposes Java-bildredigerings-API, besök dokumentation. Du kan också ladda ner källkodsexemplen för API:t från GitHub. Om du har några frågor kan du nå oss på vårt forum.

Se även