Xoay hình ảnh trong Java

Là một lập trình viên, bạn có thể thường xuyên phải thao tác các hình ảnh từ bên trong các ứng dụng Java của mình. Thao tác và chỉnh sửa hình ảnh cũng có thể bao gồm xoay Hình ảnh ở một góc cụ thể. Để đạt được điều đó, bài viết này hướng dẫn cách xoay một hình ảnh theo chương trình trong Java. Ngoài ra, chúng tôi sẽ trình bày cách xoay và lật một hình ảnh cùng một lúc.

API Java để xoay hình ảnh - Tải xuống miễn phí

Aspose.Imaging for Java là một API xử lý hình ảnh cho phép bạn thao tác trên nhiều định dạng hình ảnh. API giúp bạn thao tác hình ảnh dễ dàng hơn mà không cần viết nhiều mã. Chúng tôi sẽ sử dụng API này để xoay các hình ảnh. Bạn có thể tải xuống API hoặc cài đặt nó vào các ứng dụng Java của mình bằng cách sử dụng các cấu hình Maven sau.

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

Các bước để xoay một hình ảnh trong Java

Bạn có thể xoay hình ảnh ở một góc cụ thể hoặc các góc quay tiêu chuẩn như 90, 180 và 270 độ. Enum RotateFlipType được sử dụng để chỉ định góc xoay (và / hoặc kiểu lật). Bạn có thể thực hiện một trong các thao tác xoay sau trên hình ảnh:

  • Xoay hình ảnh
  • Xoay và lật một hình ảnh cùng một lúc

Sau đây là các bước để xoay một hình ảnh.

  • Tải hình ảnh từ đĩa.
  • Chỉ định góc quay và xoay hình ảnh.
  • Lưu hình ảnh đã xoay.

Bây giờ chúng ta hãy xem cách xoay một hình ảnh bằng Java.

Xoay hình ảnh trong Java

Để xoay hình ảnh, bạn có thể chọn một trong các giá trị sau của RotateFlipType enum.

  • Rotate180FlipNone: xoay 180 độ mà không lật
  • Rotate270FlipNone: xoay 270 độ mà không lật
  • Rotate90FlipNone: xoay 90 độ mà không lật

Hãy xem làm thế nào để xoay một hình ảnh ở 270 độ trong Java.

Đoạn mã sau đây cho biết cách thực hiện xoay hình ảnh trong Java.

// Tải hình ảnh
RasterImage image = (RasterImage) Image.load("image.bmp");

// Xoay hình ảnh
image.rotateFlip(RotateFlipType.Rotate270FlipNone);

// Lưu hình ảnh
image.save("rotated-image.bmp");

Sau đây là hình ảnh đầu vào (bên trái) và hình ảnh kết quả (bên phải) mà chúng ta nhận được sau khi quay.

xoay một hình ảnh trong java

Xoay hình ảnh

Xoay hình ảnh Java ở một góc cụ thể

Bạn cũng có thể xoay hình ảnh ở một góc khác 90, 180 và 270. Đối với điều này, API cung cấp phương thức Image.rotate (float angle) chấp nhận góc xoay làm tham số. Mẫu mã sau đây cho thấy cách xoay một hình ảnh ở 20 độ trong Java.

// Tải hình ảnh
RasterImage image = (RasterImage) Image.load("image.bmp");

// Hình ảnh trong bộ nhớ đệm để có hiệu suất tốt hơn
if (!image.isCached()) {
  image.cacheData();
}

// Xoay ở 20 độ trong khi vẫn giữ nguyên kích thước hình ảnh
image.rotate(20f);

// Lưu hình ảnh
image.save("rotated-image.bmp");

Sau đây là kết quả của mẫu mã ở trên.

xoay hình ảnh ở một góc cụ thể trong java

Xoay và lật một hình ảnh trong Java

Trong các phần trước, bạn đã thấy cách xoay hình ảnh ở góc độ mong muốn. Tuy nhiên, trong một số trường hợp, bạn phải xoay và lật ảnh cùng một lúc. Để đạt được điều này, các giá trị RotateFlipType sau được sử dụng.

  • Rotate180FlipX: xoay 180 độ với lật ngang
  • Rotate180FlipXY: xoay 180 độ với lật ngang và dọc
  • Rotate180FlipY: xoay 180 độ với lật dọc
  • Rotate270FlipX: xoay 270 độ với lật ngang
  • Rotate270FlipXY: xoay 270 độ với lật ngang và lật dọc
  • Rotate270FlipY: xoay 270 độ với lật dọc
  • Rotate90FlipX: xoay 90 độ với lật ngang
  • Rotate90FlipXY: xoay 90 độ với lật ngang và lật dọc
  • Rotate90FlipY: xoay 90 độ với lật dọc

Sau đây là các bước để xoay và lật một hình ảnh cùng một lúc trong Java.

Đoạn mã sau đây cho biết cách thực hiện xoay và lật hình ảnh cùng một lúc.

// Tải hình ảnh
RasterImage image = (RasterImage) Image.load("image.bmp");

// Xoay và lật hình ảnh
image.rotateFlip(RotateFlipType.Rotate180FlipX);

// Lưu hình ảnh
image.save("rotated-image.bmp");

Sau đây là hình ảnh kết quả (bên phải) mà chúng tôi nhận được sau khi áp dụng xoay và lật.

Xoay và lật một hình ảnh trong Java

Xoay và lật một hình ảnh

Java Image Rotation API - Nhận Giấy phép Miễn phí

Bạn có thể nhận giấy phép tạm thời miễn phí để xoay hình ảnh mà không bị giới hạn đánh giá.

Sự kết luận

Trong bài này, bạn đã học cách xoay hình ảnh trong Java. Hơn nữa, bạn đã thấy cách xoay và lật một hình ảnh cùng một lúc. Ngoài ra, bài viết cũng đề cập đến cách xoay hình ảnh ở một góc cụ thể khác 90, 180 và 270 độ.

API chỉnh sửa hình ảnh Java

Trong trường hợp bạn muốn khám phá thêm về API chỉnh sửa hình ảnh Java của Aspose, hãy truy cập tài liệu. Ngoài ra, bạn có thể tải xuống các mẫu mã nguồn của API từ GitHub. Trong trường hợp có bất kỳ câu hỏi nào, bạn có thể liên hệ với chúng tôi tại diễn đàn của chúng tôi.

Xem thêm