Faire pivoter ou retourner des images en Java

La rotation et le retournement des images font partie des fonctionnalités clés des éditeurs d’images. Lorsque vous travaillez avec des images ou que vous créez votre propre éditeur d’images en Java, vous devrez peut-être implémenter ces fonctionnalités. Pour y parvenir, cet article montre comment faire pivoter et retourner des images par programmation en Java. En particulier, nous verrons comment faire pivoter une image, retourner une image, et faire pivoter et retourner une image en même temps.

API Java pour faire pivoter et retourner des images

Aspose.Imaging for Java est une API de traitement d’image qui vous permet de manipuler une large gamme de formats d’image. L’API vous permet de manipuler des images plus facilement sans écrire beaucoup de code. Vous pouvez télécharger l’API ou l’installer dans vos applications Java à l’aide des configurations Maven suivantes.

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

Faire pivoter et retourner une image en Java

Vous pouvez soit faire pivoter une image à un angle particulier, soit les angles de rotation standard qui sont de 90, 180 et 270 degrés. De plus, l’image peut être retournée horizontalement ou verticalement. Aspose.Imaging for Java fournit une méthode unique pour faire pivoter et retourner une image. L’énumération RotateFlipType est utilisée pour spécifier l’angle de rotation et le type de retournement. Vous pouvez effectuer l’une des opérations suivantes sur une image :

  • Faire pivoter une image
  • Retourner une image
  • Faire pivoter et retourner une image en même temps

Faire pivoter une image en Java

Pour faire pivoter une image sans la retourner, vous pouvez choisir l’une des valeurs suivantes de l’énumération RotateFlipType.

  • Rotate180FlipNone : rotation de 180 degrés sans retournement
  • Rotate270FlipNone : rotation de 270 degrés sans retournement
  • Rotate90FlipNone : rotation de 90 degrés sans retournement

Voyons comment faire pivoter une image à 270 degrés en Java.

L’extrait de code suivant montre comment faire pivoter une image en Java.

// Charger l'image
RasterImage image = (RasterImage) Image.load("image.bmp");

// Faire pivoter l'image
image.rotateFlip(RotateFlipType.Rotate270FlipNone);

// Enregistrer l'image
image.save("rotated-image.bmp");

Voici l’image d’entrée (à gauche) et l’image résultante (à droite) que nous obtenons après rotation.

faire pivoter une image en java

Faire pivoter une image

Retourner une image en Java

Pour retourner une image, les valeurs RotateFlipType suivantes sont utilisées.

  • RotateNoneFlipX : pas de rotation avec retournement horizontal
  • RotateNoneFlipY : pas de rotation avec retournement vertical
  • RotateNoneFlipXY : pas de rotation avec retournement horizontal et vertical

Voici les étapes pour retourner une image en Java.

L’exemple de code suivant montre comment retourner une image.

// Charger l'image
RasterImage image = (RasterImage) Image.load("image.bmp");

// Retourner l'image
image.rotateFlip(RotateFlipType.RotateNoneFlipX);

// Enregistrer l'image
image.save("rotated-image.bmp");

Voici l’image d’entrée et l’image retournée résultante.

Retourner une image en Java

Retourner une image

Faire pivoter et retourner une image en Java

Dans les sections précédentes, vous avez vu comment faire pivoter une image ou la retourner. Cependant, dans certains cas, vous devez effectuer les deux opérations en même temps. Pour ce faire, les valeurs RotateFlipType suivantes sont utilisées.

  • Rotate180FlipX : rotation à 180 degrés avec retournement horizontal
  • Rotate180FlipXY : rotation à 180 degrés avec retournement horizontal et vertical
  • Rotate180FlipY : rotation à 180 degrés avec retournement vertical
  • Rotate270FlipX : rotation de 270 degrés avec retournement horizontal
  • Rotate270FlipXY : rotation de 270 degrés avec retournement horizontal et vertical
  • Rotate270FlipY : rotation de 270 degrés avec retournement vertical
  • Rotate90FlipX : rotation de 90 degrés avec retournement horizontal
  • Rotate90FlipXY : rotation de 90 degrés avec retournement horizontal et vertical
  • Rotate90FlipY : rotation de 90 degrés avec retournement vertical

Voici les étapes pour faire pivoter et retourner une image en même temps en Java.

L’extrait de code suivant montre comment effectuer la rotation et le retournement d’une image en même temps.

// Charger l'image
RasterImage image = (RasterImage) Image.load("image.bmp");

// Faire pivoter et retourner l'image
image.rotateFlip(RotateFlipType.Rotate180FlipX);

// Enregistrer l'image
image.save("rotated-image.bmp");

Ce qui suit est l’image résultante (à droite) que nous obtenons après avoir appliqué la rotation et le retournement.

Faire pivoter et retourner une image en Java

Faire pivoter et retourner une image

Faire pivoter l’image sur un angle particulier

Vous pouvez également faire pivoter une image selon un angle autre que 90, 180 et 270. Pour cela, l’API fournit la méthode Image.rotate(float angle) qui accepte l’angle de rotation en paramètre. L’exemple de code suivant montre comment faire pivoter une image à 20 degrés en Java.

// Charger l'image
RasterImage image = (RasterImage) Image.load("image.bmp");

// Image de cache pour de meilleures performances
if (!image.isCached()) {
  image.cacheData();
}

// Rotation à 20 degrés tout en conservant la taille de l'image
image.rotate(20f);

// Enregistrer l'image
image.save("rotated-image.bmp");

Voici la sortie de l’exemple de code ci-dessus.

faire pivoter l'image à un angle particulier en java

Obtenez une licence API gratuite

Vous pouvez obtenir une licence temporaire gratuite pour utiliser Aspose.Imaging for Java sans limitation d’évaluation.

Conclusion

Dans cet article, vous avez appris à faire pivoter et retourner des images en Java. De plus, vous avez vu comment faire pivoter une image, retourner une image et faire pivoter et retourner une image en même temps. En outre, l’article a également expliqué comment faire pivoter une image à un angle particulier autre que 90, 180 et 270 degrés. Si vous souhaitez en savoir plus sur l’API de traitement d’image Java, consultez documentation. Vous pouvez également télécharger les exemples de code source de l’API à partir de GitHub. En cas de questions, vous pouvez nous joindre sur notre forum.

Voir également