2012-02-17 5 views
6

일반적으로 이미지가 내 사이트에 올 때 나는 80 %의 기본 품질로 쓴 이미지 라이브러리를 사용하여 jpg로 저장합니다. 이제 내가 다른 작업을 할 필요가있을 때 (이미지를 자르거나 크기를 조정하는 등) 이미지가 jpg로 열리고 처리 된 다음 다시 저장됩니다. 그러나 압축하기 전에 다시 압축하거나 작업을 수행해야 할 때마다 품질이 떨어집니다.JPG 압축률을 감지합니까?

표준 GD PHP 라이브러리의 도구를 사용하여 이미지가 이미 압축되어 있는지 감지 할 수있는 방법이 있습니까? (PNG 버전과 비교할 때) 이미지가 포토샵으로 찍힌 부분을 감지하는 도구는 상대적인 압축 양을 비교함으로써 수행하므로 압축 량을 감지 할 수 있다고 생각하지만 누구나이 계산을 수행하는 방법을 알 수 있습니까? 감사.

+0

jpg 파일에서 품질 비율을 얻을 수 없다는 것을 알고 있습니다. –

+1

파일의 메타 데이터에는 저장되어 있지 않지만 파일을 계산하는 방법이 있습니다. – hackartist

+0

아니요. .. –

답변

8

JPG에서 품질 값을 얻을 수 없습니다. 또한 품질 값은 인코더에 따라 다릅니다. 그것은 표준이나 이와 비슷한 것이 아닙니다. 일부 프로그램은 (낮음, 중간, 높음) 만 있으며, 일부 20 개는 90보다 우수 할 수 있습니다.

두 번째로 JPG는 매번 최상의 품질로 저장하더라도 각 동일 인코딩에서 품질이 떨어집니다. 슬픈 삶의 진실 : 품질을 악화시키지 않는 유일한 작업은 뒤집기 및 회전 (그리고 JPEG 블록 크기에 맞춰지면 작물)입니다.

엄지 손가락 규칙 : 매번 동일한 품질 값으로 을 인코딩하십시오. 예 : 60 번으로 한 번 저장하면 다음에 80 번에 저장하면 아무런 이득이 없습니다. 파일 크기가 커집니다.

또한 충분한 저장 공간이있는 경우 이러한 재 인코딩의 수를 줄이고 원본에 대한 각 조작을 수행하십시오.

+0

답변이 업데이트되었습니다. –

1

이미 압축되었는지 여부를 알 수 있도록 이미지 품질을 데이터베이스에 저장해야합니다.

+0

그럼에도 이미지 크기를 조정하면 품질이 떨어집니다. 저장하는 것은 의미가 없습니다. 그러나 좋은 생각이므로 +1이 있습니다. –

+0

@RokKralj 그가 두 번 이상 압축하지 않도록 저장하는 것이 좋습니다. 그는 이미지를 더욱 열화시킬 수 있습니다 .. – ppp

+0

당신은 모든 것을 이해하지 못합니다. "압축"이 없으며 품질 값으로 저장됩니다. 그가 80 번에 한 번 저장한다는 것을 의미한다면, 다음 번에 100 번에 저장할 수 있다는 것을 기억하십시오. 그러면 품질 향상없이 ​​파일 크기가 커집니다. 80 -> 80 -> 80은 올바른 저장입니다. –

1

이미지를 여러 번 압축하지 않으려면 크기 조정의 파일 크기를 원본과 쉽게 비교할 수 있습니다.

  • 파일 크기가 눈에 띄게 클 경우 속도가 증가 했으므로 사용하지 마십시오.
  • 압축 된 것보다 현저히 낮 으면 사용하십시오.

또한 같은 비율의 파일을 재 압축하면 파일 크기가 약간 줄어 듭니다. 속도 (60 %, 70 %, 80 % 등)에 대해 라운드 번호를 사용하면 확인할 수 있습니다 resize의 파일 크기가 원래 크기와 매우 비슷한 경우 속도. 90% = 2,115 KB-
: 1,844 KB 파일에서 압축 예를 들면

. 크기가 커 졌으므로 사용하지 않을 것입니다.
- 80% = 1,843 KB. 이것은 원래 파일 크기와 거의 동일하므로 원본 크기가 80%이라고 가정 할 수 있습니다.
-70% = 1,567 KB. 이것은 압축되어 있으므로 사용하겠습니다.

마지막으로 압축 된 이미지의 비율에만 관심이 있다면 PHP를 사용하여 파일 메타 데이터에서 사용하는 비율을 저장할 수 있습니다.

관련 문제