다음을 통해 공유


네이티브 이미지 형식 메타데이터 쿼리

이 항목에서는 GIF, PNG, TIFF 및 JPEG 이미지에서 지원하는 메타데이터를 읽고 쓰기 위한 메타데이터 쿼리 언어 쿼리에 대한 개요를 제공합니다. 여기에는 각 이미지 형식과 관련된 메타데이터와 여러 형식에서 지원되는 메타데이터가 포함됩니다.

이 항목에는 다음과 같은 섹션이 포함되어 있습니다.

사전 요구 사항

이 항목을 이해하려면 WIC 메타데이터 개요에 설명된 대로 WIC(Windows 이미징 구성 요소) 메타데이터 시스템에 대해 잘 알고 있어야 합니다. 메타데이터 쿼리 언어 개요에 설명된 대로 메타데이터를 읽고 쓰는 데 사용되는 쿼리 언어에 대해서도 잘 알고 있어야 합니다.

사진 메타데이터 정책 식

WIC는 메타데이터 쿼리 언어를 지원하는 것 외에도 Windows 속성 시스템의 정식 속성 이름도 허용합니다. WIC는 사진 메타데이터 정책에 설명된 대로 이미지 형식과 관련된 Windows 속성 네임스페이스의 하위 집합을 지원합니다. WIC 메타데이터 쿼리로 사용되는 Windows 속성을 사진 메타데이터 정책 식이라고 합니다.

예를 들어 EXIF 방향 플래그에 대한 사진 메타데이터 정책 식은 다음과 같습니다.

일반적으로 정책 식은 Windows 속성 네임스페이스에서 다루는 일반적인 이미지 메타데이터 항목에 대한 네이티브 메타데이터 쿼리보다 권장됩니다. 메타데이터 쿼리 언어는 특정 이미지 메타데이터 항목에 대한 낮은 수준의 액세스가 필요한 경우 또는 Windows 속성 시스템에서 지원하지 않는 사용자 지정 또는 고급 메타데이터 항목에 가장 적합합니다. 자세한 내용은 사진 메타데이터 정책 식을 참조하세요.

파일 형식 특정 메타데이터

다음 섹션에는 각 이미지 파일 형식에 대해 사용 가능한 메타데이터 쿼리를 나열하는 테이블이 포함되어 있습니다. 각 테이블에는 다음 열이 있습니다.

  • 경로 - 메타데이터 항목을 검색하는 데 사용되는 쿼리 경로입니다.
  • 이름 - 메타데이터 항목의 이름입니다.
  • 형식 - 쿼리 경로에서 검색된 메타데이터 항목의 형식입니다. WIC에서 검색한 메타데이터는 VARTYPE enumeration.on을 사용하여 데이터 형식을 보고하는 PROPVARIANT 형식으로 반환됩니다.

쿼리 경로는 WIC 메타데이터 API에서 이미지의 포함된 메타데이터에 액세스하는 데 사용됩니다. 다음 예제 코드에서는 IWICMetadataQueryReader 를 사용하여 JPEG의 IFD 메타데이터 블록을 쿼리하는 방법을 보여 줍니다.

// Not shown: image decoding 
IWICMetadataQueryReader *pQueryReader = NULL;
IWICMetadataQueryReader *pIFDReader = NULL;

// Get the query reader.
if (SUCCEEDED(hr))
{
    hr = pFrameDecode->GetMetadataQueryReader(&pQueryReader);
}

if (SUCCEEDED(hr))
{
    // Get the nested IFD reader.
    hr = pQueryReader->GetMetadataByName(L"/app1/ifd", &value);
    if (value.vt == VT_UNKNOWN)
    {
        hr = value.punkVal->QueryInterface(IID_IWICMetadataQueryReader, (void **)&pIFDReader);
    }
    PropVariantClear(&value); // Clear value for new query.
}

GIF 메타데이터

GIF(그래픽 교환 형식) 이미지 형식은 전역 및 프레임 수준 메타데이터를 모두 지원합니다. 다음 두 섹션에서는 GIF의 전역 및 프레임 수준 메타데이터에 사용할 수 있는 메타데이터 쿼리 경로를 제공합니다.

참고

자세한 정보와 함께 GIF 메타데이터의 전체 목록은 W3C 웹 사이트의 GIF 표준을 참조하세요.

 

전역 메타데이터

다음 표에서는 전역 GIF 메타데이터에 액세스하는 데 사용할 수 있는 메타데이터 쿼리 경로를 제공합니다.

경로 Name 형식
/commentext 또는 /[*]commentext where * = 0 to N 주석 확장 VT_UNKNOWN - 쿼리 판독기/작성기
/commentext/TextEntry VT_LPSTR
/logscrdesc 논리 화면 설명 VT_UNKNOWN - 쿼리 판독기/작성기
/logscrdesc/Signature VT_UI1 | VT_VECTOR
/logscrdesc/Width VT_UI2
/logscrdesc/Height VT_UI2
/logscrdesc/GlobalColorTableFlag VT_BOOL
/logscrdesc/ColorResolution VT_UI1
/logscrdesc/SortFlag VT_BOOL
/logscrdesc/GlobalColorTableSize VT_UI1
/logscrdesc/BackgroundColorIndex VT_UI1
/logscrdesc/PixelAspectRatio VT_UI1
/appext 또는 /[*]appext where * = 0 to N 애플리케이션 확장 VT_UNKNOWN - 쿼리 판독기/작성기
/appext/Application VT_UI1 | VT_VECTOR
/appext/Data VT_UI1 | VT_VECTOR

 

프레임 메타데이터

다음 표에서는 프레임 수준 GIF 메타데이터에 액세스하는 데 사용할 수 있는 메타데이터 쿼리 경로를 제공합니다.

경로 Name 형식
/grctlext 그래픽 컨트롤 확장 VT_UNKNOWN - 쿼리 판독기/기록기
/grctlext/Disposal VT_UI1
/grctlext/UserInputFlag VT_BOOL
/grctlext/TransparencyFlag VT_BOOL
/grctlext/Delay VT_UI2
/grctlext/TransparentColorIndex VT_UI1
/imgdesc 이미지 설명자 VT_UNKNOWN - 쿼리 판독기/기록기
/imgdesc/Left VT_UI2
/imgdesc/Top VT_UI2
/imgdesc/Width VT_UI2
/imgdesc/Height VT_UI2
/imgdesc/LocalColorTableFlag VT_BOOL
/imgdesc/InterlaceFlag VT_BOOL
/imgdesc/SortFlag VT_BOOL
/imgdesc/LocalColorTableSize VT_UI1

 

PNG 메타데이터

PNG(이식 가능한 네트워크 그래픽) 이미지 형식은 프레임 수준 메타데이터를 지원합니다.

참고

자세한 정보와 함께 PNG 메타데이터의 전체 목록은 W3C 웹 사이트의 PNG 표준을 참조하세요.

 

프레임 메타데이터

다음 표에서는 프레임 수준 PNG 메타데이터에 액세스하는 데 사용할 수 있는 메타데이터 쿼리 경로를 제공합니다.

경로 Name 형식
/tEXt 또는 /[*]tEXt where * = 0 to N 텍스트 청크 VT_UNKNOWN - tEXt 쿼리 판독기/기록기
/tEXt/{str=*} where * = text에 대한 키워드(keyword) 식별 VT_LPSTR
/Gama 가마 청크 VT_UNKNOWN - gAMA 쿼리 판독기/기록기
/gAMA/ImageGamma VT_UI4
/iTXt 또는 /[*]iTXt where * = 0 to N IText 청크 VT_UNKNOWN - iTXt 쿼리 판독기/기록기
/iTXt/Keyword VT_LPSTR
/iTXt/CompressionFlag VT_UI1
/iTXt/LanguageTag LPSTR
/iTXt/TranslatedKeyword LPWSTR
/iTXt/TextEntry LPWSTR
/cHRM HRM 청크 VT_UNKNOWN - cHRM 쿼리 판독기/작성기
/cHRM/WhitePointX VT_UI4
/cHRM/WhitePointY VT_UI4
/cHRM/RedX VT_UI4
/cHRM/RedY VT_UI4
/cHRM/GreenX VT_UI4
/cHRM/GreenY VT_UI4
/cHRM/BlueX VT_UI4
/cHRM/BlueY VT_UI4
/Srgb sRGB Chuck VT_UNKNOWN - sRGB 쿼리 판독기/기록기
/sRGB/RenderingIntent VT_UI1
/시간 시간 청크 VT_UNKNOWN - tIME 쿼리 판독기/기록기
/tIME/Year VT_UI2
/tIME/Month VT_UI1
/tIME/Day VT_UI1
/tIME/Hour VT_UI1
/tIME/Minute VT_UI1
/tIME/Second VT_UI1
/bKGD 배경 청크 VT_UNKNOWN - bKGB 쿼리 판독기/기록기
/bKGD/BackgroundColor VT_UI1, VT_UI2 또는 VT_UI2 | VT_VECTOR
/hIST hIST 청크 VT_UNKNOWN - hIST 쿼리 판독기/기록기
/hIST/Frequencies VT_VECTOR | VT_UI2
/iCCP iCCP 청크 VT_UNKNOWN - iCCP 쿼리 판독기/작성기
/iCCP/ProfileName VT_LPSTR
/iCCP/ProfileData VT_VECTOR | VT_UI1

 

TIFF 메타데이터

TIFF(태그가 지정된 이미지 파일 형식) 이미지 형식은 프레임 수준 메타데이터를 지원합니다.

참고

자세한 정보와 함께 TIFF 메타데이터의 전체 목록은 TIFF 표준을 참조하세요.

 

프레임 메타데이터

다음 표에서는 프레임 수준 TIFF 메타데이터에 액세스하는 데 사용할 수 있는 메타데이터 쿼리 경로를 제공합니다.

경로 Name 형식
/Ifd 0 IFD VT_UNKNOWN - 쿼리 판독기/작성기
/ifd/{ushort=*} where * = 0 ~ 65535 ID별 IFD 항목 변수
/ifd/thumb 또는 /ifd/{ushort=330} 썸네일 IFD VT_UNKNOWN - 쿼리 판독기/작성기
/ifd/xmp 또는 /ifd/{ushort=700} Xmp VT_UNKNOWN - 쿼리 판독기/작성기
/ifd/exif 또는 /ifd/{ushort=34665} Exif VT_UNKNOWN - 쿼리 판독기/작성기
/ifd/gps 또는 /ifd/{ushort=34853} GPS VT_UNKNOWN - 쿼리 판독기/작성기
/ifd/exif/interop 또는 /ifd/exif/{ushort=40965} Interop VT_UNKNOWN - 쿼리 판독기/작성기
/ifd/iptc 또는 /ifd/{ushort=33723} Iptc VT_UNKNOWN - 쿼리 판독기/작성기
/ifd/iptc/{str=*} where * = IPTC 키워드(keyword) IPTC 항목 변수
/ifd/irb/8bimiptc/iptc Iptc VT_UNKNOWN - 쿼리 판독기/작성기
/ifd/irb/8bimiptc/iptc/{str=*} IPTC 항목 변수

 

JPEG 메타데이터

JPEG 이미지 형식은 프레임 수준 메타데이터를 지원합니다.

참고

자세한 정보와 함께 JPEG 메타데이터의 전체 목록은 EXIF JPEG 표준을 참조하세요.

 

프레임 메타데이터

다음 표에서는 프레임 수준 JPEG 메타데이터에 액세스하는 데 사용할 수 있는 메타데이터 쿼리 경로를 제공합니다.

경로 Name 형식
/app0 App0 VT_UNKNOWN - App0 쿼리 판독기/기록기
/app0/{ushort=0} 버전 VT_UI2
/app0/{ushort=1} 단위 VT_UI1
/app0/{ushort=2} DpiX VT_UI2
/app0/{ushort=3} DpiY VT_UI2
/app0/{ushort=4} Xthumbnail VT_UI1
/app0/{ushort=5} Ythumbnail VT_UI1
/app0/{ushort=6} ThumbnailData VT_BLOB
/app1 앱 1 VT_UNKNOWN - App1 쿼리 읽기 권한자/기록기
/app1/ifd 또는 /app1/{ushort=0} 0 IFD VT_UNKNOWN - IFD 쿼리 판독기/기록기
/app1/ifd/exif 또는 /app1/ifd/{ushort=34665} EXIF IFD VT_UNKNOWN – EXIF 쿼리 판독기/기록기
/app1/thumb 또는 /app1/{ushort=1} 썸네일 IFD VT_UNKNOWN - SubIFD 쿼리 판독기/기록기
/app13 App13 VT_UNKNOWN - App13 쿼리 판독기/기록기
/app13/irb 또는 /app13/{ushort=0} Irb VT_UNKNOWN - IRB 쿼리 판독기/기록기
/app13/irb/{ulonglong=*} where * = IRB 식별자(IRB 사양 참조) IRB 항목 VT_UNKNOWN - 알 수 없는 쿼리 판독기/작성기
/app13/irb/{ulonglong=*}/{} IRB 항목 내용 VT_BLOB
/app13/irb/8bimiptc 또는 /app13/irb/{ulonglong=61857348781060} 8BIMIPTC VT_UNKNOWN - 8BIMIPTC 쿼리 판독기/기록기
/app13/irb/8bimiptc/iptc Iptc VT_UNKNOWN - IPTC 쿼리 판독기/기록기
/app13/irb/8bimiptc/iptc/{str=*} IPTC 항목 변수
/app13/irb/8bimResInfo 또는 /app13/irb/{ulonglong=61857348781037} 8BIM 확인 정보 VT_UNKNOWN - 쿼리 판독기/기록기
/app13/irb/8bimResInfo/PString VT_LPSTR
/app13/irb/8bimResInfo/HResolution VT_UI4
/app13/irb/8bimResInfo/VResolution VT_UI4
/app13/irb/8bimResInfo/WidthUnit VT_UI2
/app13/irb/8bimResInfo/HeightUnit VT_UI2
/app13/irb/8bimResInfo/HResolutionUnit VT_UI2
/app13/irb/8bimResInfo/VResolutionUnit VT_UI2
/Com JPEG 주석 VT_UNKNOWN - 주석 쿼리 읽기 권한자/작성기
/com/TextEntry LPSTR
/광도 광도 VT_UNKNOWN - 광도 쿼리 판독기/기록기
/luminance/TableEntry VT_UI1 | VT_VECTOR
/색차 Chrominance VT_UNKNOWN - Chrominance 쿼리 판독기/기록기
/chrominance/TableEntry VT_UI1 | VT_VECTOR
/Xmp Xmp VT_UNKNOWN - XMP 쿼리 판독기/기록기

 

파일 형식 독립 메타데이터

다음 섹션에는 여러 이미지 형식에서 지원하는 메타데이터 형식에 대한 정보가 포함되어 있습니다. 각 테이블에는 다음 열이 있습니다.

  • 상대 경로 - 메타데이터 블록을 기준으로 메타데이터 항목을 검색하는 데 사용되는 쿼리 경로입니다.
  • 이름 - 메타데이터 항목의 이름입니다.
  • 형식 - 쿼리 경로에서 검색된 메타데이터 항목의 형식입니다. WIC에서 검색한 메타데이터는 VARTYPE 열거형을 사용하여 데이터 형식을 보고하는 PROPVARIANT 형식으로 반환됩니다.

참고

여기에 있는 테이블은 특정 메타데이터 형식 내에서 메타데이터 항목에 액세스하기 위한 상대 경로만 제공합니다. 정규화된 메타데이터 쿼리를 얻으려면 특정 메타데이터 형식에 대한 메타데이터 블록 쿼리에 이 상대 경로를 추가합니다.

 

예를 들어 JPEG 파일에서 Orientation 플래그에 액세스하려면 다음 식을 사용합니다.

  • /app1/ifd/{ushort=274}

TIFF 파일에서 다음 식을 사용합니다.

  • /ifd/{ushort=274}

이 예제에서는 다른 이미지 형식이 특정 메타데이터 블록을 다르게 저장할 수 있으므로 특정 메타데이터 항목에 액세스하기 위한 정규화된 메타데이터 쿼리는 이미지 형식에 따라 다를 수 있습니다. 특정 메타데이터 블록에 액세스하기 위한 적절한 메타데이터 쿼리를 찾으려면 각 형식의 테이블을 참조하세요.

IFD 메타데이터

IFD 또는 이미지 파일 디렉터리 는 이미지 메타데이터를 포함할 수 있는 TIFF 표준에 정의된 데이터 구조입니다. ushort 형식의 태그를 사용하여 각 메타데이터 항목을 식별합니다. JPEG, TIFF 및 JPEG-XR은 IFD 메타데이터를 지원합니다. 일부 카메라 원시 형식과 같은 타사 형식도 IFD 메타데이터를 지원할 수 있습니다.

다음 표에서는 일반적으로 사용되는 IFD 메타데이터 항목에 액세스하기 위한 상대 메타데이터 쿼리 경로를 제공합니다. IFD 데이터 구조는 타사 확장성을 허용하며 이 테이블은 전체 목록이 아닙니다. 자세한 내용은 TIFF 표준을 참조하세요.

참고

JPEG 및 기타 형식은 IFD 데이터 구조를 지원하지만 정의하는 메타데이터 항목을 모두 사용하지는 않을 수 있습니다. 자세한 내용은 각 형식의 표준을 참조하세요.

 

참고

여기에 있는 테이블의 특정 메타데이터 항목은 TIFF 표준을 참조하여 제대로 사용하기 위해 추가 해석 또는 정보가 필요합니다. 예를 들어 PhotometricInterpretation 메타데이터 항목은 VT_UI2 형식의 PROPVARIANT를 반환합니다. 그러나 TIFF 표준에 따라 열거형으로 해석됩니다. 자세한 내용은 TIFF 표준을 참조하세요.

 

상대 경로 속성 형식
/{ushort=256} ImageWidth VT_UI2 또는 VT_UI4
/{ushort=257} ImageLength VT_UI2 또는 VT_UI4
/{ushort=258} BitsPerSample VT_UI2
/{ushort=259} 압축 VT_UI2
/{ushort=262} PhotometricInterpretation VT_UI2
/{ushort=274} 방향 VT_UI2
/{ushort=277} SamplesPerPixel VT_UI2
/{ushort=284} PlanarConfiguration VT_UI2
/{ushort=530} YCbCrSubSampling VT_VECTOR | VT_UI2
/{ushort=531} YCbCrPositioning VT_UI2
/{ushort=282} XResolution VT_UI8
/{ushort=283} YResolution VT_UI8
/{ushort=296} ResolutionUnit VT_UI2
/{ushort=306} DateTime VT_LPSTR
/{ushort=270} ImageDescription VT_LPSTR
/{ushort=271} 계정을 VT_LPSTR
/{ushort=272} 모델 VT_LPSTR
/{ushort=305} 소프트웨어 VT_LPSTR
/{ushort=315} Artist VT_LPSTR
/{ushort=33432} Copyright VT_LPSTR
/{ushort=338} ExtraSamples VT_UI2
/{ushort=254} NewSubfileType VT_UI4
/{ushort=278} RowsPerStrip VT_UI2 또는 VT_UI4
/{ushort=279} StripByteCounts VT_VECTOR | VT_UI2 또는 VT_VECTOR | VT_UI4
/{ushort=273} StripOffsets VT_VECTOR | VT_UI2 또는 VT_VECTOR | VT_UI4

 

EXIF 메타데이터

EXIF 메타데이터는 EXIF JPEG 사양의 일부로 정의됩니다. EXIF 메타데이터는 TIFF 표준에 정의된 IFD 데이터 구조를 기반으로 하며, 디바이스에 대한 정보 및 이미지를 만드는 데 사용되는 사진 특성과 같은 추가 특성을 제공합니다. ushort 형식의 태그를 사용하여 각 메타데이터 항목을 식별합니다. JPEG, TIFF 및 JPEG-XR은 EXIF 메타데이터를 지원합니다. 일부 카메라 원시 형식과 같은 타사 형식은 EXIF 메타데이터도 지원할 수 있습니다.

다음 표에서는 일반적으로 사용되는 일부 EXIF 메타데이터 항목에 액세스하기 위한 상대 메타데이터 쿼리 경로를 제공합니다. EXIF 데이터 구조는 타사 확장성을 허용하며 이 테이블은 전체 목록이 아닙니다. 자세한 내용은 EXIF 표준을 참조하세요.

참고

많은 EXIF 메타데이터 항목은 EXIF 표준에서 "RATIONAL" 또는 "SRATIONAL" 형식으로 정의됩니다. "RATIONAL"는 32비트 부호 없는 정수인 분자와 분모로 구성됩니다. 분자는 상위 32비트와 낮은 32비트에서 분모에 포함됩니다. WIC에서는 각각 VT_UI8 또는 VT_I8 형식의 PROPVARIANT로 반환됩니다. 실제 값은 각각 ULARGE_INTEGER 또는 LARGE_INTEGER 저장됩니다. 숫자 및 분모에 액세스하려면 ULARGE_INTEGER 또는 LARGE_INTEGER 값의 HighPart 및 LowPart 멤버를 읽습니다.

 

참고

아래 표의 특정 메타데이터 항목은 제대로 사용하려면 추가 해석 또는 정보가 필요합니다. 예를 들어 ColorSpace 메타데이터 항목은 VT_UI2 형식의 PROPVARIANT를 반환합니다. 그러나 EXIF 표준에 따라 열거형으로 해석됩니다. 자세한 내용은 EXIF 표준을 참조하세요.

 

상대 경로 속성 형식
/{ushort=36864} ExifVersion VT_BLOB
/{ushort=40960} FlashpixVersion VT_BLOB
/{ushort=40961} ColorSpace VT_UI2
/{ushort=40962} PixelXDimension VT_UI2 또는 VT_UI4
/{ushort=40963} PixelYDimension VT_UI2 또는 VT_UI4
/{ushort=37500} MakerNote VT_BLOB
/{ushort=37510} UserComment VT_LPWSTR
/{ushort=36867} DateTimeOriginal VT_LPSTR
/{ushort=36868} DateTimeDigitized VT_LPSTR
/{ushort=42016} ImageUniqueID VT_LPSTR
/{ushort=42032} CameraOwnerName VT_LPSTR
/{ushort=42033} BodySerialNumber VT_LPSTR
/{ushort=42034} LensSpecification VT_VECTOR | VT_UI8
/{ushort=42035} LensMake VT_LPSTR
/{ushort=42036} LensModel VT_LPSTR
/{ushort=42037} LensSerialNumber VT_LPSTR
/{ushort=33434} ExposureTime VT_UI8
/{ushort=33437} FNumber VT_UI8
/{ushort=34850} ExposureProgram VT_UI2
/{ushort=34852} SpectralSensitivity VT_LPSTR
/{ushort=34855} PhotographicSensitivity VT_VECTOR | VT_UI2
/{ushort=34856} OECF VT_BLOB
/{ushort=34864} SensitivityType VT_UI2
/{ushort=34865} StandardOutputSensitivity VT_UI4
/{ushort=34866} RecommendedExposureIndex VT_UI4
/{ushort=34867} ISOSpeed VT_UI4
/{ushort=34868} ISOSpeedLatitudeyyyy VT_UI4
/{ushort=34869} ISOSpeedLatitudezzz VT_UI4
/{ushort=37377} ShutterSpeedValue VT_I8
/{ushort=37378} ApertureValue VT_UI8
/{ushort=37379} BrightnessValue VT_I8
/{ushort=37380} ExposureBiasValue VT_I8
/{ushort=37381} MaxApertureValue VT_UI8
/{ushort=37382} SubjectDistance VT_UI8
/{ushort=37383} MeteringMode VT_UI2
/{ushort=37384} LightSource VT_UI2
/{ushort=37385} 깜박임 VT_UI2
/{ushort=37386} FocalLength VT_UI8
/{ushort=37396} SubjectArea VT_VECTOR | VT_UI2
/{ushort=41483} FlashEnergy VT_UI8
/{ushort=41484} SpatialFrequencyResponse VT_BLOB
/{ushort=41486} FocalPlaneXResolution VT_UI8
/{ushort=41487} FocalPlaneYResolution VT_UI8
/{ushort=41488} FocalPlaneResolutionUnit VT_UI2
/{ushort=41492} SubjectLocation VT_VECTOR | VT_UI2
/{ushort=41493} ExposureIndex VT_UI8
/{ushort=41495} SensingMethod VT_UI2
/{ushort=41728} FileSource VT_BLOB
/{ushort=41729} SceneType VT_BLOB
/{ushort=41730} CFAPattern VT_BLOB
/{ushort=41985} CustomRendered VT_UI2
/{ushort=41986} ExposureMode VT_UI2
/{ushort=41987} WhiteBalance VT_UI2
/{ushort=41988} DigitalZoomRatio VT_UI8
/{ushort=41989} FocalLengthIn35mmFilm VT_UI2
/{ushort=41990} SceneCaptureType VT_UI2
/{ushort=41991} GainControl VT_UI8
/{ushort=41992} 이 예와 VT_UI2
/{ushort=41993} 채도 VT_UI2
/{ushort=41994} 선명도 VT_UI2
/{ushort=41995} DeviceSettingDescription VT_BLOB
/{ushort=41996} SubjectDistanceRange VT_UI2

 

GPS 메타데이터

GPS 메타데이터는 지리적 위치 정보를 포함하며 EXIF JPEG 사양의 일부로 정의됩니다. ushort 형식의 태그를 사용하여 각 메타데이터 항목을 식별합니다. JPEG, TIFF 및 JPEG-XR은 GPS 메타데이터를 지원합니다. 일부 카메라 원시 형식과 같은 타사 형식도 GPS 메타데이터를 지원할 수 있습니다.

다음 표에서는 일반적으로 사용되는 일부 GPS 메타데이터 항목에 액세스하기 위한 상대 메타데이터 쿼리 경로를 제공합니다. 이 테이블은 전체 목록이 아닙니다. 자세한 내용은 EXIF 표준을 참조하세요.

참고

많은 GPS 메타데이터 항목은 EXIF 표준에 "RATIONAL" 형식으로 정의됩니다. "RATIONAL"는 32비트 부호 없는 정수인 분자와 분모로 구성됩니다. 분자는 상위 32비트와 낮은 32비트에서 분모에 포함됩니다. WIC에서 이러한 값은 VT_UI8 형식의 PROPVARIANT로 반환됩니다. 실제 값은 ULARGE_INTEGER 저장됩니다. 숫자 및 분모에 액세스하려면 ULARGE_INTEGER 값의 HighPart 및 LowPart 멤버를 읽습니다.

 

참고

여기에 있는 테이블의 특정 메타데이터 항목은 제대로 사용하려면 추가 해석 또는 정보가 필요합니다. 예를 들어 GPSLatitudeRef 메타데이터 항목은 VT_LPSTR 형식의 PROPVARIANT를 반환합니다. EXIF 표준에 따르면 이 문자열은 북쪽 또는 남쪽 위도를 나타내는 "N" 또는 "S"입니다. 자세한 내용은 EXIF 표준을 참조하세요.

 

상대 경로 속성 형식
{ushort=0} GPSVersionID VT_VECTOR | VT_UI1
{ushort=1} GPSLatitudeRef VT_LPSTR
{ushort=2} GPSLatitude VT_VECTOR | VT_UI8
{ushort=3} GPSLongitudeRef VT_LPSTR
{ushort=4} GPSLongitude {ushort=4} GPSLongitude VT_VECTOR | VT_UI8
{ushort=5} GPSAltitudeRef VT_UI1
{ushort=6} GPSAltitude VT_UI8
{ushort=7} GPSTimeStamp VT_VECTOR | VT_UI8
{ushort=8} GPS사텔리테스 VT_LPSTR
{ushort=9} GPSStatus VT_LPSTR
{ushort=10} GPSMeasureMode VT_LPSTR
{ushort=11} GPSDOP VT_UI8
{ushort=12} GPSSpeedRef VT_LPSTR
{ushort=13} GPSSpeed VT_UI8
{ushort=14} GPSTrackRef VT_LPSTR
{ushort=15} GPSTrack VT_UI8

 

XMP 메타데이터

XMP는 XML 기반의 확장 가능한 메타데이터 표준입니다. 메타데이터 항목은 계층적일 수 있으며 복잡한 데이터 구조를 포함할 수 있습니다. JPEG, TIFF 및 JPEG-XR은 XMP 메타데이터를 지원합니다. 일부 카메라 원시 형식과 같은 타사 형식도 XMP 메타데이터를 지원할 수 있습니다.

XMP 표준은 에서 https://www.adobe.com/devnet/xmp.html가져올 수 있습니다.

XMP 및 를 사용하면 타사 엔터티가 XMP 표준을 수정하지 않고도 새 메타데이터 항목을 정의할 수 있는 자체 스키마 또는 네임스페이스를 게시할 수 있습니다. XMP 스키마는 URL로 고유하게 식별되지만 WIC 는 잘 알려진 스키마에 대한 식별자 집합을 제공합니다.

XMP 메타데이터 항목은 스키마 식별자뿐만 아니라 문자열 이름으로 식별됩니다. 모범 사례로 모든 XMP 메타데이터 쿼리는 스키마와 이름을 모두 지정해야 합니다. 스키마 식별자가 없는 경우 JPEG는 XMP 메타데이터 패킷 내에 있는 모든 네임스페이스의 메타데이터 이름과 일치시키려고 시도합니다.

예를 들어 JPEG 이미지에서 XMP 스키마에 정의된 Rating 속성을 가져오려면 다음 쿼리를 사용합니다.

  • /xmp/{wstr=https://ns.adobe.com/xap/1.0/}:Rating

첫 번째 부분인 "/xmp"는 이미지에 대한 XMP 메타데이터 판독기/작성기를 검색합니다. "https://ns.adobe.com/xap/1.0/" 는 XMP 표준에 정의된 XMP 스키마의 URL입니다. URL은 슬래시(/)와 같은 문자를 사용할 수 있도록 데이터 식으로 묶입니다. 마지막으로 "등급"은 XMP 스키마에 정의된 실제 메타데이터 항목 이름이며 콜론(:) 스키마 식별자와 구분됩니다.

이 예제에서 WIC는 전체 URL 대신 사용할 수 있는 XMP 스키마에 대한 식별자를 제공합니다. 따라서 이전 쿼리는 다음과 같이 다시 작성할 수 있습니다.

  • /xmp/xmp:Rating

WIC 는 일반적으로 사용되는 다음 스키마에 대한 친숙한 스키마 접두사를 제공합니다.

스키마 접두사 스키마 URL 표준에 연결
Rdf https://www.w3.org/1999/02/22-rdf-syntax-ns# https://www.w3.org/TR/REC-rdf-syntax/
dc https://purl.org/dc/elements/1.1/ https://www.adobe.com/devnet/xmp.html
Xmp https://ns.adobe.com/xap/1.0/ https://www.adobe.com/devnet/xmp.html
xmpidq https://ns.adobe.com/xmp/Identifier/qual/1.0/ https://www.adobe.com/devnet/xmp.html
xmpRights https://ns.adobe.com/xap/1.0/rights/ https://www.adobe.com/devnet/xmp.html
xmpMM https://ns.adobe.com/xap/1.0/mm/ https://www.adobe.com/devnet/xmp.html
xmpBJ https://ns.adobe.com/xap/1.0/bj/ https://www.adobe.com/devnet/xmp.html
xmpTPg https://ns.adobe.com/xap/1.0/t/pg/ https://www.adobe.com/devnet/xmp.html
pdf https://ns.adobe.com/pdf/1.3/ https://www.adobe.com/devnet/xmp.html
포토샵 https://ns.adobe.com/photoshop/1.0/ https://www.adobe.com/devnet/xmp.html
tiff https://ns.adobe.com/tiff/1.0/ https://www.adobe.com/devnet/xmp.html
Exif https://ns.adobe.com/exif/1.0/ https://www.adobe.com/devnet/xmp.html
stDim https://ns.adobe.com/xap/1.0/sType/Dimensions# https://www.adobe.com/devnet/xmp.html
xapGImg https://ns.adobe.com/xap/1.0/g/img/ https://www.adobe.com/devnet/xmp.html
stEvt https://ns.adobe.com/xap/1.0/sType/ResourceEvent# https://www.adobe.com/devnet/xmp.html
stRef https://ns.adobe.com/xap/1.0/sType/ResourceRef# https://www.adobe.com/devnet/xmp.html
stVer https://ns.adobe.com/xap/1.0/sType/Version# https://www.adobe.com/devnet/xmp.html
stJob https://ns.adobe.com/xap/1.0/sType/Job# https://www.adobe.com/devnet/xmp.html
보조 https://ns.adobe.com/exif/1.0/aux/ https://www.adobe.com/devnet/xmp.html
crs https://ns.adobe.com/camera-raw-settings/1.0/ https://www.adobe.com/devnet/xmp.html
xmpDM https://ns.adobe.com/xmp/1.0/DynamicMedia/ https://www.adobe.com/devnet/xmp.html
Iptc4xmpCore https://iptc.org/std/Iptc4xmpCore/1.0/xmlns/ https://www.iptc.org/cms/site/index.html?channel=CH0099
MicrosoftPhoto https://ns.microsoft.com/photo/1.0/ 사람 태그 지정 개요
MP https://ns.microsoft.com/photo/1.2/ 사람 태그 지정 개요
MPRI https://ns.microsoft.com/photo/1.2/t/RegionInfo\# 사람 태그 지정 개요
MPReg https://ns.microsoft.com/photo/1.2/t/Region\# 사람 태그 지정 개요

 

특정 스키마에 대한 친숙한 스키마 접두사(예: 이미지에 사용자 지정 타사 스키마를 사용하는 XMP 메타데이터가 포함되어 있는 경우)가 없는 경우 메타데이터 쿼리는 전체 스키마 URL을 사용해야 합니다.

개념

Windows 이미징 구성 요소 개요

WIC 메타데이터 개요

메타데이터 쿼리 언어 개요

메타데이터 확장성 개요

방법: 메타데이터를 사용하여 JPEG 이미지 다시 인코딩