[c++] libjpeg-turbo와 이미지 품질 설정

libjpeg-turbo는 JPEG 이미지를 빠르게 인코딩 및 디코딩할 수 있는 소프트웨어 라이브러리입니다. 이미지 품질 설정을 통해 압축 수준을 조절하여 이미지 압축 품질과 파일 크기를 관리할 수 있습니다.

libjpeg-turbo를 사용하여 이미지 품질 설정하기

libjpeg-turbo를 사용하여 이미지를 인코딩할 때, 이미지 품질을 설정할 수 있습니다. 이미지 품질은 0에서 100까지의 범위에서 지정하며, 100은 최상의 품질을 나타내고 0은 최저 품질을 나타냅니다.

#include <jpeglib.h>

struct jpeg_compress_struct cinfo;
struct jpeg_error_mgr jerr;

cinfo.err = jpeg_std_error(&jerr);
jpeg_create_compress(&cinfo);

cinfo.image_quality = 80; // 이미지 품질 설정 (0-100)

jpeg_set_defaults(&cinfo);
jpeg_set_quality(&cinfo, cinfo.image_quality, TRUE);

// 이미지를 인코딩하는 코드

위의 예시에서 cinfo.image_quality를 통해 이미지의 품질을 설정하고, jpeg_set_quality 함수를 사용하여 설정한 품질을 적용하고 있습니다.

이미지 품질을 조정함으로써, 사용하는 압축 수준에 따라 이미지의 품질과 파일 크기를 조절할 수 있습니다.

참고 자료