Cắt ảnh trong Java

Cắt ảnh là quá trình chọn một phần của hình ảnh và chỉ hiển thị vùng cụ thể đó. Nó có thể hữu ích trong nhiều tình huống khác nhau, chẳng hạn như tạo hình thu nhỏ bắt mắt, thu hút sự chú ý đến các phần cụ thể của hình ảnh, v.v. Trong bài viết này, chúng ta sẽ tìm hiểu cách triển khai cắt ảnh trong Java. Chúng tôi cũng sẽ khám phá các kỹ thuật từng bước để trích xuất các đối tượng và nâng cao thiết kế của bạn.

Bài viết này bao gồm các chủ đề sau:

  1. API cắt hình ảnh Java - Tải xuống miễn phí
  2. Cắt hình ảnh trong Java
  3. Trích xuất đối tượng từ hình ảnh trong Java
  4. Tài nguyên miễn phí

API cắt ảnh Java - Tải xuống miễn phí

Để cắt hình ảnh trong Java, chúng tôi sẽ tận dụng API Aspose. Draw for Java mạnh mẽ, một giải pháp tiên tiến để thao tác hình ảnh hiệu quả và chính xác. Nó là một thư viện đồ họa 2D đa năng để vẽ theo chương trình trong Java. Nó cho phép các nhà phát triển tải, lưu và chỉnh sửa nhiều định dạng tệp được hỗ trợ, khiến nó trở thành lựa chọn lý tưởng cho nhu cầu cắt ảnh.

Vui lòng tải xuống JAR của API hoặc thêm cấu hình pom.xml sau vào ứng dụng Java dựa trên Maven.

<repositories>
    <repository>
        <id>AsposeJavaAPI</id>
        <name>Aspose Java API</name>
        <url>https://repository.aspose.com/repo/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-drawing</artifactId>
        <version>24.4</version>
    </dependency>
</dependencies>

Cắt ảnh trong Java

Chúng ta có thể triển khai việc cắt ảnh theo chương trình trong Java bằng cách thực hiện theo các bước bên dưới:

  1. Tạo một thể hiện của lớp Bitmap.
  2. Khởi tạo đối tượng lớp Graphics bằng phương thức fromImage().
  3. Xác định đường dẫn clip bằng lớp GraphicsPath.
  4. Sau đó, thiết lập đường dẫn clip bằng phương thức setClip().
  5. Cuối cùng, lưu hình ảnh đầu ra bằng phương thức save().

Mẫu mã sau đây cho thấy cách triển khai cắt ảnh trong Java.

// Tạo một bitmap mới
Bitmap bitmap = new Bitmap(1000, 800);

// Khởi tạo đồ họa
Graphics graphics = Graphics.fromImage(bitmap);
graphics.setTextRenderingHint(TextRenderingHint.AntiAliasGridFit);

// Xác định đoạn phim
RectangleF rectangle = new RectangleF(200, 200, 600, 400);
GraphicsPath clipPath = new GraphicsPath();
clipPath.addEllipse(rectangle);
graphics.setClip(clipPath);

// Chỉ định chuỗi
StringFormat stringFormat = new StringFormat();
stringFormat.setAlignment(StringAlignment.Center);
stringFormat.setLineAlignment(StringAlignment.Center);
Brush brush = new SolidBrush(Color.getBlue());
Font arial = new Font("Arial", 20, FontStyle.Regular);
String text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas sapien tellus, mattis et condimentum eget, commodo ut ipsum. Maecenas elit sapien, tempus sit amet mauris sit amet, hendrerit laoreet nisi. Nulla facilisi. Sed commodo, mauris eget porta commodo, nunc tellus volutpat mi, eu auctor diam libero vel neque. Vestibulum nec mattis dui, nec molestie nisl. Etiam in magna felis. Praesent non nulla tortor. Integer nec convallis purus. Fusce vitae mollis mauris. Cras efficitur dui at mi viverra scelerisque. Morbi quis magna elit. Nulla facilisis id ante sit amet fringilla. Sed iaculis consectetur lectus a interdum. Etiam ut sollicitudin lectus, et congue lectus.";

// Vẽ chuỗi
graphics.drawString(text, arial, brush, rectangle, stringFormat);

// Cứu
bitmap.save("Clipping.png");
Cắt hình ảnh Java

Cắt hình ảnh Java

Trích xuất đối tượng từ hình ảnh trong Java

Chúng ta có thể trích xuất một phần cụ thể của hình ảnh bằng cách làm theo các bước được đề cập trước đó. Tuy nhiên, chúng ta chỉ cần tải một hình ảnh hiện có và vẽ nó bằng phương thức drawImage().

Mẫu mã sau đây cho thấy cách trích xuất đối tượng từ một hình ảnh trong Java.

// Ví dụ mã này trình bày cách trích xuất một đối tượng từ một hình ảnh
// Tạo một bitmap mới
Bitmap bitmap = new Bitmap(1000, 800);

// Khởi tạo đồ họa
Graphics graphics = Graphics.fromImage(bitmap);
graphics.setTextRenderingHint(TextRenderingHint.AntiAliasGridFit);

// Xác định đoạn phim
RectangleF rectangle = new RectangleF(0, 0, 225, 225);
GraphicsPath clipPath = new GraphicsPath();
clipPath.addEllipse(rectangle);
graphics.setClip(clipPath);

// Tải hình ảnh
Bitmap image = new Bitmap("aspose-logo.png");

// Vẽ hình ảnh tại vị trí được chỉ định
graphics.drawImage(image,0,0);

// Cứu
bitmap.save("extract-object.png");
Trích xuất đối tượng từ hình ảnh trong Java

Trích xuất đối tượng từ hình ảnh trong Java

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í để dùng thử Aspose.draw cho Java mà không bị giới hạn về đánh giá.

Aspose.draw – Tài nguyên miễn phí

Ngoài việc cắt ảnh trong Java, bạn có thể tìm hiểu thêm về các tính năng khác nhau của thư viện bằng cách sử dụng các tài nguyên bên dưới:

Phần kết luận

Trong bài viết này, chúng ta đã khám phá quá trình triển khai cắt ảnh trong Java. Bằng cách làm theo các bước được nêu trong bài viết này, giờ đây bạn có thể trích xuất các đối tượng từ hình ảnh một cách chính xác và dễ dàng. Trong trường hợp có bất kỳ sự mơ hồ nào, vui lòng liên hệ với chúng tôi trên diễn đàn hỗ trợ miễn phí của chúng tôi.

Xem thêm