Programming/Spring
[Spring] PDF의 첫장 섬네일 만들기
기록하는 백앤드개발자
2020. 12. 24. 02:52
반응형
회사 프로젝트 중에 PDF의 섬네일을 만드는 과정을 정리하였습니다.
어제는 PDF를 이미지로 만드는데 성공하였고,
오늘은 이미지를 100X100 사이즈의 Thumbnail로 만드는 작업을 진행하였습니다.
gradle 추가
//thumbnail
compile group: 'org.imgscalr', name: 'imgscalr-lib', version: '4.2'
compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.8.1'
compile group: 'commons-io', name: 'commons-io', version: '2.6'
이미지를 섬네일 이미지로 변경
public File thumbnailS3Upload(File file) throws Exception {
// 썸네일 크기는 100X100
BufferedImage sourceImg = ImageIO.read(file);
int ow = sourceImg.getWidth();
int oh = sourceImg.getHeight();
int nw = ow;
int nh = (ow * 100) / 100;
if (nh > oh) {
nw = (oh * 100) / 100;
nh = oh;
}
// 계산된 크기로 원본이미지를 가운데에서 crop 합니다.
BufferedImage cropImg = Scalr.crop(sourceImg, (ow - nw) / 2, (oh - nh) / 2, nw, nh);
BufferedImage destImg = Scalr.resize(cropImg, 100, 100);
String thumbName = tempPath + "THUMB_" + UUID.randomUUID() + "-" + file.getName();
File thumbFile = new File(thumbName);
ImageIO.write(destImg, FilenameUtils.getExtension(file.getName()), thumbFile);
return thumbFile;
}
성공한 이미지
공부했던 소스는 여기에 있습니다.
반응형