
La rotación y el volteo de imágenes se encuentran entre las características clave de los editores de imágenes. Mientras trabaja con imágenes o crea su propio editor de imágenes en Java, es posible que deba implementar estas características. Para lograrlo, este artículo muestra cómo rotar y voltear imágenes mediante programación en Java. En particular, cubriremos cómo rotar una imagen, voltear una imagen y rotar y voltear una imagen al mismo tiempo.
- API de Java para rotar y voltear imágenes
- Girar y voltear una imagen
- Girar una imagen en un ángulo particular
API de Java para rotar y voltear imágenes
Aspose.Imaging for Java es una API de procesamiento de imágenes que le permite manipular una amplia gama de formatos de imagen. La API facilita bastante la manipulación de imágenes sin escribir mucho código. Puede descargar la API o instalarla en sus aplicaciones Java utilizando las siguientes configuraciones de Maven.
<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>
Rotar y voltear una imagen en Java
Puede rotar una imagen en un ángulo particular o en los ángulos de rotación estándar que son 90, 180 y 270 grados. Además, la imagen se puede voltear horizontal o verticalmente. Aspose.Imaging for Java proporciona un único método para rotar y voltear una imagen. La enumeración RotateFlipType se usa para especificar el ángulo de rotación y el tipo de volteo. Puede realizar una de las siguientes operaciones en una imagen:
- Girar una imagen
- Voltear una imagen
- Rotar y voltear una imagen al mismo tiempo
Rotar una imagen en Java
Para rotar una imagen sin voltearla, puede elegir uno de los siguientes valores de la enumeración RotateFlipType.
- Rotate180FlipNone: rotación de 180 grados sin voltear
- Rotate270FlipNone: rotación de 270 grados sin voltear
- Rotate90FlipNone: rotación de 90 grados sin voltear
Veamos cómo rotar una imagen a 270 grados en Java.
- Primero, use la clase Image para cargar la imagen.
- Luego, use el método Image.rotateFlip(RotateFlipType.Rotate270FlipNone) para rotar la imagen a 270 grados.
- Finalmente, guarde la imagen resultante usando el método Image.save(string).
El siguiente fragmento de código muestra cómo rotar una imagen en Java.
// Cargar imagen
RasterImage image = (RasterImage) Image.load("image.bmp");
// Girar la imagen
image.rotateFlip(RotateFlipType.Rotate270FlipNone);
// Guardar imagen
image.save("rotated-image.bmp");
Las siguientes son la imagen de entrada (izquierda) y la imagen resultante (derecha) que obtenemos después de la rotación.

Girar una imagen
Voltear una imagen en Java
Para voltear una imagen, se utilizan los siguientes valores de RotateFlipType.
- RotateNoneFlipX: sin rotación con volteo horizontal
- RotateNoneFlipY: sin rotación con volteo vertical
- RotateNoneFlipXY: sin rotación con volteo horizontal y vertical
Los siguientes son los pasos para voltear una imagen en Java.
- Primero, cargue la imagen usando la clase Image.
- Luego, use el método Image.rotateFlip(RotateFlipType.RotateNoneFlipX) para voltear la imagen horizontalmente.
- Finalmente, guarde la imagen resultante usando el método Image.save(string).
El siguiente ejemplo de código muestra cómo voltear una imagen.
// Cargar imagen
RasterImage image = (RasterImage) Image.load("image.bmp");
// Voltear la imagen
image.rotateFlip(RotateFlipType.RotateNoneFlipX);
// Guardar imagen
image.save("rotated-image.bmp");
Las siguientes son la imagen de entrada y la imagen invertida resultante.

Voltear una imagen
Rotar y voltear una imagen en Java
En las secciones anteriores, ha visto cómo rotar una imagen o voltearla. Sin embargo, en algunos casos, debe realizar ambas operaciones al mismo tiempo. Para lograr esto, se utilizan los siguientes valores de RotateFlipType.
- Rotate180FlipX: rotación de 180 grados con volteo horizontal
- Rotate180FlipXY: rotación de 180 grados con volteo horizontal y vertical
- Rotate180FlipY: rotación de 180 grados con volteo vertical
- Rotate270FlipX: rotación de 270 grados con volteo horizontal
- Rotate270FlipXY: rotación de 270 grados con volteo horizontal y vertical
- Rotate270FlipY: rotación de 270 grados con volteo vertical
- Rotate90FlipX: rotación de 90 grados con volteo horizontal
- Rotate90FlipXY: rotación de 90 grados con volteo horizontal y vertical
- Rotate90FlipY: rotación de 90 grados con volteo vertical
Los siguientes son los pasos para rotar y voltear una imagen al mismo tiempo en Java.
- Primero, use la clase Image para cargar una imagen.
- Luego, use el método Image.rotateFlip(RotateFlipType.Rotate180FlipX) para rotar y voltear la imagen.
- Finalmente, guarde la imagen resultante usando el método Image.save(string).
El siguiente fragmento de código muestra cómo realizar la rotación y el volteo de una imagen al mismo tiempo.
// Cargar imagen
RasterImage image = (RasterImage) Image.load("image.bmp");
// Rotar y voltear la imagen
image.rotateFlip(RotateFlipType.Rotate180FlipX);
// Guardar imagen
image.save("rotated-image.bmp");
La siguiente es la imagen resultante (derecha) que obtenemos después de aplicar la rotación y el volteo.

Girar y voltear una imagen
Rotar imagen en un ángulo particular
También puede rotar una imagen en un ángulo que no sea 90, 180 y 270. Para esto, la API proporciona el método Image.rotate(float angle) que acepta el ángulo de rotación como parámetro. El siguiente ejemplo de código muestra cómo rotar una imagen a 20 grados en Java.
// Cargar imagen
RasterImage image = (RasterImage) Image.load("image.bmp");
// Imagen de caché para un mejor rendimiento
if (!image.isCached()) {
image.cacheData();
}
// Gire a 20 grados manteniendo el tamaño de la imagen
image.rotate(20f);
// Guardar imagen
image.save("rotated-image.bmp");
El siguiente es el resultado del ejemplo de código anterior.

Obtenga una licencia de API gratuita
Puede obtener una licencia temporal gratuita para usar Aspose.Imaging for Java sin limitaciones de evaluación.
Conclusión
En este artículo, ha aprendido a rotar y voltear imágenes en Java. Además, ha visto cómo rotar una imagen, voltear una imagen y rotar y voltear una imagen al mismo tiempo. Además, el artículo también cubría cómo rotar una imagen en un ángulo particular que no sea 90, 180 y 270 grados. En caso de que desee explorar más sobre la API de procesamiento de imágenes de Java, visite documentación. Además, puede descargar las muestras del código fuente de la API desde GitHub. Si tiene alguna pregunta, puede comunicarse con nosotros en nuestro foro.