아래 exif 애드온을 사용하고 있습니다.
https://xe1.xpressengine.com/index.php?mid=download&package_id=20547035
 
노출 시간 부분이 오류가 있는데 1초 미만은 노출시간이 뜨는데, 1초 이상은 다 0이라고 뜹니다.
해당 소스 부분은 이렇습니다. 어디가 문제일까요?; tmp[0]에 정보가 안 담기는거 같은데 ㅠ_ㅠ;
 
case TAG_EXPOSURETIME:
    // Simplest way of expressing exposure time, so I trust it most.
    // (overwrite previously computd value if there is one)
    $tmp = $this->ConvertAnyFormat($ValuePtr, $Format);
    $this->ImageInfo['h']["exposureTime"] .= sprintf(" 1/%d",(int)(0.5 + 1/$tmp[0]));
    // $this->ImageInfo['h']["exposureTime"] = sprintf("%6.3f s (%d/%d)",(double)$tmp[0],$tmp[1][0],$tmp[1][1]);
    // if ($tmp[0] <= 0.5){
    //         $this->ImageInfo['h']["exposureTime"] .= sprintf(" (1/%d)",(int)(0.5 + 1/$tmp[0]));
    // }
    break;
  • profile

    1/X초 단위로 표시하고 있으니 1초 이상은 표시가 곤란하겠네요.

    $tmp[0]을 그대로 화면에 뿌려보고 그걸 어떻게 표시해야 할지 결정해 보세요.

  • profile

    $this->ImageInfo['h']["exposureTime"] .= sprintf(" 1/%d",(int)(0.5 + 1/$tmp[0]));

    이 부분을

    $this->ImageInfo['h']["exposureTime"] .= '1/' . (0.5 + 1/$tmp[0]);

    이렇게 바꿔보면 어떻게 나오나요?

  • profile
    이온디님 사진좀 찍으시나 봅니다~^^;