![자바에서 이미지 자르기](images/Crop-Image.png#center)
이전 블로그 게시물에서 크기 조정, 뒤집기 및 회전 이미지와 같은 다양한 이미지 편집 기능을 구현하는 방법을 보여 드렸습니다. 이러한 기능과 함께 이미지 자르기는 이미지에서 원하지 않는 영역을 트리밍하는 데 엄청나게 사용됩니다. 또한 프레임의 특정 개체에 초점을 맞추기 위해 이미지를 자릅니다. 이 기사에서는 Java에서 프로그래밍 방식으로 이미지를 자르는 방법을 배웁니다. 시프트 값을 사용하거나 사각형을 사용하여 이미지를 자르는 방법을 보여줍니다.
이미지 자르기를 위한 Java API - 무료 다운로드
Aspose.Imaging for Java는 이미지를 조작할 수 있는 다양한 기능을 제공하는 놀라운 이미지 편집 API입니다. 또한 다양한 래스터 및 벡터 이미지 형식을 지원합니다. 이 API를 사용하여 Java 애플리케이션 내에서 이미지를 자릅니다. API를 다운로드하거나 다음 Maven 구성을 사용하여 설치할 수 있습니다.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-imaging</artifactId>
<version>22.9</version>
</dependency>
자바에서 이미지 자르기
래스터 이미지를 자르는 방법에는 값 이동과 직사각형의 두 가지가 있습니다. 첫 번째 방법에서는 이미지를 자르기 위해 왼쪽, 오른쪽, 위쪽 및 아래쪽 이동 값을 제공해야 합니다. 반면 두 번째 방법에서는 이미지의 특정 영역을 자르기 위해 사각형을 정의합니다.
Java에서 이미지를 자르는 위에서 언급한 각 방법을 살펴보겠습니다.
Java에서 시프트 값을 사용하여 이미지 자르기
다음은 Java에서 시프트 값을 사용하여 이미지를 자르는 단계입니다.
- 먼저 Image.load() 메서드를 사용하여 이미지를 RasterImage 객체에 로드합니다.
- 그렇지 않은 경우 이미지를 캐시합니다.
- 왼쪽, 오른쪽, 위쪽 및 아래쪽 이동 값을 정의합니다.
- RasterImage.crop() 메서드를 사용하여 이미지를 자릅니다.
- RasterImage.save() 메서드를 사용하여 자른 이미지를 저장합니다.
다음 코드 샘플은 Java에서 이미지를 자르는 방법을 보여줍니다.
// 이미지를 로드합니다.
try (RasterImage rasterImage = (RasterImage) Image.load("image.jpg")) {
// 자르기 전에 더 나은 성능을 위해 이미지를 캐시해야 합니다.
if (!rasterImage.isCached()) {
rasterImage.cacheData();
}
// 4면 모두에 대한 이동 값을 정의합니다.
int leftShift = 10;
int rightShift = 10;
int topShift = 10;
int bottomShift = 10;
// 시프트 값에 따라 이미지에 자르기를 적용합니다. 자르기 방법이 변경됩니다.
// 이미지는 이미지의 중심을 향하고 결과를 디스크에 저장합니다.
rasterImage.crop(leftShift, rightShift, topShift, bottomShift);
// 자른 이미지를 저장합니다.
rasterImage.save("cropped.jpg");
}
다음은 자르기에 사용한 입력 이미지입니다.
![자바에서 이미지 자르기](images/image.png#center)
아래는 자른 결과 이미지입니다.
![자바에서 이미지 자르기](images/cropped.png#center)
Rectangle을 사용한 Java 이미지 자르기
이미지의 원하는 영역을 자르기 위해 사각형을 정의할 수도 있습니다. 다음 단계는 Java에서 사각형을 사용하여 이미지를 자르는 방법을 보여줍니다.
- 먼저 Image.load() 메서드를 사용하여 이미지를 RasterImage 객체에 로드합니다.
- 그렇지 않은 경우 이미지를 캐시합니다.
- Rectangle 객체를 생성하고 원하는 크기로 초기화합니다.
- RasterImage.crop() 메서드를 사용하여 이미지를 자릅니다.
- RasterImage.save() 메서드를 사용하여 자른 이미지를 저장합니다.
다음 코드 샘플은 Java에서 사각형으로 이미지 자르기를 수행하는 방법을 보여줍니다.
// 이미지를 로드합니다.
try (RasterImage rasterImage = (RasterImage) Image.load("image.jpg")) {
// 자르기 전에 더 나은 성능을 위해 이미지를 캐시해야 합니다.
if (!rasterImage.isCached()) {
rasterImage.cacheData();
}
// 원하는 크기의 Rectangle 클래스 인스턴스를 만듭니다.
Rectangle rectangle = new Rectangle(20, 20, 20, 20);
// 이미지 자르기.
rasterImage.crop(rectangle);
// 자른 이미지를 저장합니다.
rasterImage.save("cropped.jpg");
}
Java용 Imaging Cropping API - 무료 라이선스 받기
평가 제한 없이 이미지를 자를 수 있고 무료 임시 라이센스를 얻습니다.
결론
이 기사에서는 Java에서 이미지를 자르는 방법을 배웠습니다. 시프트 값이나 사각형을 사용하여 이미지를 자르는 몇 가지 방법을 보여주었습니다. 또한 문서를 사용하여 Java 이미지 처리 API에 대해 자세히 알아볼 수 있습니다. 또한 포럼을 통해 질문을 공유할 수 있습니다.