-
Exif 메타정보 뽑아내기개발 2009. 12. 23. 19:20디지털 카메라로 촬영된 이미지의 경우 Exif 메타 정보라하여 이미지에 별도로 촬영정보를 저장합니다.
다음은 이 exif 정보를 뽑아내는 설명입니다.
메타정보를 위해서는 metadata-extractor 오픈소스를 이용합니다.
import com.drew.imaging.jpeg.JpegMetadataReader;
import com.drew.metadata.Directory;
import com.drew.metadata.Metadata;
import com.drew.metadata.Tag;
import com.sun.image.codec.jpeg.JPEGCodec;
import com.sun.image.codec.jpeg.JPEGDecodeParam;
import com.sun.image.codec.jpeg.JPEGImageDecoder;
public static void main(String args[]){
try{
FileInputStream fis = new FileInputStream(new File("F5704.jpg"));
JPEGImageDecoder decoder = JPEGCodec.createJPEGDecoder(fis);
BufferedImage image = decoder.decodeAsBufferedImage();
JPEGDecodeParam param = decoder.getJPEGDecodeParam();
Metadata metadata = JpegMetadataReader.readMetadata(param);
Iterator directories = metadata.getDirectoryIterator();
StringBuilder sb = new StringBuilder();
while(directories.hasNext()){
Directory directory = (Directory)directories.next();
Iterator tags = directory.getTagIterator();
while(tags.hasNext()){
Tag tag = (Tag)tags.next();
sb.append(tag.toString()+"\n");
}
}
fis.close();
}catch(IOException e){
e.printStackTrace();
}}
php의 경우 exif 라이브러리를 같이 컴파이 해줍니다.
일반적으로는 컴파일이 되어 있지 않는 것 같기 때문에 조정을 해주어야 합니다.
라이브러리가 설치되었다면
< ?
$exif = exif_read_data('DSCF5704.JPG', 'ANY_TAG', true);
echo "< pre>";
print_r($exif);
echo "< /pre>";
?>와 같은 간단한 코드로 exif 정보를 확인할 수 있습니다.
반응형'개발' 카테고리의 다른 글
Json-lib 사용하기 (0) 2010.02.01 mysql root 비밀번호를 잊어버렸을 때 (0) 2010.01.28 insertAdjacentHTML() (0) 2009.10.07 ssl 을 이용한 에코 서버 클라이언트 예제 (0) 2009.10.01 openssl 을 이용하여 인증서 받기 (0) 2009.10.01