답변:
JPEG 뷰어가 SmartScale JPEG 확장을 지원하는 경우에만 가능합니다 . jpegtran 은 N = 1..16의 N / 8 크기에 대해이 작업 을 수행 할 수 있습니다. 기본적으로 DCT 블록 크기는 재 압축시 8x8에서 다른 것으로 변경됩니다 (예 : 4x4).
참고 : SmartScale은 libjpeg 라이브러리 버전 8 에 도입 되었지만 뷰어가 널리 지원하지는 않습니다.
자세한 변경 사항을 설명하는 문서는 Evolution of JPEG 에서 확인할 수 있습니다 .
편집 : 대부분의 시청자는 libjpeg-turbo를 기반으로하므로 실제로 이러한 이미지를 표시 할 수없는 것 같습니다. 그리고 libjpeg-turbo 는이 기능을 구현하지 않기로 선택했습니다 . 사실, 우분투 14.04 및 Windows 8에서 꽤 많은 프로그램을 시도했지만 jpegtrans를 사용하여 작성된 축소 이미지를 표시 할 수 없었습니다. Photoshop, IrfanView 및 김프조차도 실패했습니다.
편집 2 : 실제로 Ubuntu와 Fedora는 libjpeg8 라이브러리도 제공하지 않지만 libjpeg-turbo 버전으로 완전히 바꿉니다. 따라서 어떤 프로그램도 JPEG SmartScale 파일을 읽을 수 없으므로 원래 libjpeg8 라이브러리에 정적으로 링크 된 몇 개의 바이너리를 저장하지 않습니다.
짧은 대답은 '아니요'입니다. JPEG 이미지는 압축을 사용합니다. 즉, 각 출력 바이트는 다른 모든 출력 바이트에 의존합니다. 이미지 바이트 수를 변경하면 압축을 풀고 다시 압축해야합니다.
JPEG는 손실 압축을 사용하기 때문에 재 압축으로 인해 품질 손실이 발생하지만 해상도를 4 분의 1로 줄이면 품질이 떨어집니다. 다시 압축 할 때 JPEG 품질 수준을 높이면 저해상도 이미지에서 최상의 품질을 얻을 수 있지만 파일 크기는 커집니다.
이미지 작업을 많이하는 경우에는 디스크 공간이 충분한 경우 이미지를 완성 할 때만 PNG로 변환하는 PNG와 같은 무손실 압축 형식으로 작업하는 것이 가장 좋습니다.