728x90
twelvemonkeys 라이브러리를 이용하여 jpg 파일을 webp 파일로 변경하는 방법에 대해 간단하게 알아보겠습니다.
1. 라이브러리 추가
// webp 파일로 변환
implementation 'com.twelvemonkeys.imageio:imageio-webp:3.10.1'
2. 소스작성
public void downImage(String imageUrl, String destinationFile) {
String destJpg = null;
String destWebp = null;
try {
// URL 에서 jpg 파일 다운로드
URL url = new URL(imageUrl);
URLConnection conn = url.openConnection();
InputStream inputStream = conn.getInputStream();
destJpg = destinationFile + ".jpg";
destWebp = destinationFile + ".webp";
OutputStream outputStream = new FileOutputStream(destJpg);
byte[] buffer = new byte[2048];
int length;
while ((length = inputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, length);
}
outputStream.close();
inputStream.close();
File file = new File(destJpg);
if (file.exists()) {
log.info("이미지 다운로드 완료 : " + destJpg);
file.setReadable(true, true); // 소유자 읽기 권한
file.setWritable(true, true); // 소유자 쓰기 권한
file.setReadable(true, false); // 다른 사용자 읽기 권한
file.setWritable(true, false); // 다른 사용자 쓰기 권한
// jpg to webp
BufferedImage image = ImageIO.read(file);
File output = new File(destWebp);
ImageIO.write(image, "JPG", output);
file.delete();
}
} catch (Exception e) {
e.printStackTrace();
}
}
- ImageIO.write() 함수를 통해 JPG를 WEBP 파일로 복사합니다. 복사가 완료된 후 jpg 파일은 삭제합니다.
감사합니다.
728x90
'프레임워크 > SpringBoot' 카테고리의 다른 글
[SpringBoot] h2 consloe localhost에서 연결을 거부했습니다. (0) | 2024.07.31 |
---|---|
[SpringBoot] GraphQL 간단한 예제 (0) | 2024.06.19 |
[SpringBoot] 리눅스 SVN 으로 war 파일 배포하기 (0) | 2024.06.17 |
[SpringBoot] MSA+JPA로 간단한 소스 구현하기 (0) | 2024.06.14 |
[SpringBoot] Window10 Nexus Repository 구성하기 (0) | 2024.06.12 |