|
TNB Library
|
EXIF規格ファイル管理クラス [詳解]
#include <TnbExifFile.h>
CExifFile の継承関係図クラス | |
| class | CTagInfo |
| タグ情報. [詳解] | |
| struct | TRational |
| 符号無し有理数 [詳解] | |
| struct | TSRational |
| 符号付き有理数 [詳解] | |
公開型 | |
| typedef CMapT< PROPID, CTagInfo > | CMapTagInfos |
| タグ情報のマップ [詳解] | |
| enum | EType { ET_Byte = PropertyTagTypeByte , ET_Ascii = PropertyTagTypeASCII , ET_Short = PropertyTagTypeShort , ET_Long = PropertyTagTypeLong , ET_Rational = PropertyTagTypeRational , ET_Undefined = PropertyTagTypeUndefined , ET_SLong = PropertyTagTypeSLONG , ET_SRational = PropertyTagTypeSRational } |
| データ型 [詳解] | |
公開メンバ関数 | |
| bool | Attach (LPCWSTR lpszFileName) |
| [読込] ファイル読込み(Attach). [詳解] | |
| CExifFile (void) | |
| コンストラクタ [詳解] | |
| void | Empty (void) |
| [設定] エンプティ化 [詳解] | |
| CBitmapHandle | GetBitmap (void) const |
| [取得] Bitmap取得. [詳解] | |
| void | GetCopyrightTag (CStr &_s1, CStr &_s2) const |
| [取得] Copyrightタグ取得. [詳解] | |
| const CTagInfo * | GetTagInfo (PROPID id) const |
| [取得] EXIFタグ情報取得 [詳解] | |
| const CMapTagInfos & | GetTagInfoMap (void) const |
| [参照] EXIFタグ情報一覧参照. [詳解] | |
| CStr | GetUserCommentTag (void) const |
| [取得] UserCommentタグ取得. [詳解] | |
| bool | Load (HBITMAP hBmp, HPALETTE hPal=NULL) |
| [読込] HBITMAP読込み. [詳解] | |
| bool | Load (LPCWSTR lpszFileName) |
| [読込] ファイル読込み. [詳解] | |
| const Gdiplus::Bitmap * | ReferBitmap (void) const |
| [取得] Bitmap取得. [詳解] | |
| void | RemoveTagInfo (PROPID id) |
| [設定] EXIFタグ情報削除. [詳解] | |
| bool | Save (LPCWSTR lpsz, CGdiPlus::EBitmapFormat fmt=CGdiPlus::JPG, LONG jpegQuality=80) |
| [作成] 画像ファイル作成. [詳解] | |
| bool | SaveJpeg (LPCWSTR lpsz, LONG jpegQuality=80) |
| [作成] Jpegファイル作成. [詳解] | |
| void | SetCopyrightTag (LPCSTR lpsz1, LPCSTR lpsz2=NULL) |
| [取得] Copyrightタグ取得. [詳解] | |
| void | SetGpsAltitudeTag (DWORD d1, DWORD d2=1) |
| [設定] 高度設定 [詳解] | |
| void | SetGpsLatitudeTag (bool isNorth, DWORD dd, DWORD mm, double ss) |
| [設定] 緯度設定 [詳解] | |
| void | SetGpsLongitudeTag (bool isEast, DWORD dd, DWORD mm, double ss) |
| [設定] 経度設定 [詳解] | |
| void | SetGpsVersionTag (void) |
| [設定] GPSバージョン情報設定 [詳解] | |
| void | SetTagInfo (PROPID id, const CTagInfo &ti) |
| [設定] EXIFタグ情報設定. [詳解] | |
| void | SetTagInfo (PROPID id, const SYSTEMTIME &st) |
| [設定] EXIFタグ情報設定(時間ASCII文字列). [詳解] | |
| void | SetTagInfo (PROPID id, LPCSTR lpsz, size_t len=INVALID_SIZE) |
| [設定] EXIFタグ情報設定(ASCII文字列). [詳解] | |
| void | SetUserCommentTag (LPCSTR lpsz) |
| [設定] UserCommentタグ設定(ASCII/JIS). [詳解] | |
| void | SetUserCommentTag (LPCWSTR lpsz) |
| [設定] UserCommentタグ設定(UNICODE). [詳解] | |
| void | SetVersionTag (DWORD ver=0x0210) |
| [設定] バージョンタグ設定. [詳解] | |
| ~CExifFile (void) | |
| デストラクタ [詳解] | |
EXIF規格ファイル管理クラス
一組の画像情報とEXIFタグ情報を管理し、ファイル入出力を行うことができます。
TnbExifFile.h の 53 行目に定義があります。
| typedef CMapT<PROPID, CTagInfo> CMapTagInfos |
タグ情報のマップ
TnbExifFile.h の 489 行目に定義があります。
| enum EType |
データ型
TnbExifFile.h の 70 行目に定義があります。
| CExifFile | ( | void | ) |
コンストラクタ
TnbExifFile.h の 496 行目に定義があります。
| ~CExifFile | ( | void | ) |
デストラクタ
TnbExifFile.h の 501 行目に定義があります。
| bool Attach | ( | LPCWSTR | lpszFileName | ) |
[読込] ファイル読込み(Attach).
指定のファイルを読み込み、 EXIF タグ情報も読み込み、本インスタンスに記憶します。 指定のファイルはアタッチ中は、ロックされます。
| lpszFileName | 画像ファイル名。 |
| true | 読込み成功. |
| false | 失敗. |
TnbExifFile.h の 528 行目に定義があります。
| void Empty | ( | void | ) |
| CBitmapHandle GetBitmap | ( | void | ) | const |
[取得] Copyrightタグ取得.
| [out] | _s1 | 撮影著作権者 |
| [out] | _s2 | 編集著作権者 |
TnbExifFile.h の 750 行目に定義があります。
| const CTagInfo * GetTagInfo | ( | PROPID | id | ) | const |
| const CMapTagInfos & GetTagInfoMap | ( | void | ) | const |
| CStr GetUserCommentTag | ( | void | ) | const |
[取得] UserCommentタグ取得.
TnbExifFile.h の 714 行目に定義があります。
| bool Load | ( | HBITMAP | hBmp, |
| HPALETTE | hPal = NULL |
||
| ) |
[読込] HBITMAP読込み.
指定のHBITMAPを本インスタンスに記憶します。
| hBmp | 画像。 |
| hPal | パレット。省略可能。 |
| true | 読込み成功. |
| false | 失敗. |
TnbExifFile.h の 593 行目に定義があります。
| bool Load | ( | LPCWSTR | lpszFileName | ) |
[読込] ファイル読込み.
指定のファイルを読み込み、 EXIF タグ情報も読み込み、本インスタンスに記憶します。
| lpszFileName | 画像ファイル名。 |
| true | 読込み成功. |
| false | 失敗. |
TnbExifFile.h の 564 行目に定義があります。
| const Gdiplus::Bitmap * ReferBitmap | ( | void | ) | const |
[取得] Bitmap取得.
| NULL | 保持していない |
TnbExifFile.h の 657 行目に定義があります。
| void RemoveTagInfo | ( | PROPID | id | ) |
| bool Save | ( | LPCWSTR | lpsz, |
| CGdiPlus::EBitmapFormat | fmt = CGdiPlus::JPG, |
||
| LONG | jpegQuality = 80 |
||
| ) |
[作成] 画像ファイル作成.
本インスタンスで管理している画像と EXIFタグ情報を BMP, JPEG などのファイルに書き出します。
| lpsz | ファイル名。 |
| fmt | フォーマット。省略するとBMPです。 |
| jpegQuality | JPEGのクオリティ(0〜100)。省略すると80。 |
| true | 成功。 |
| false | 失敗。 |
TnbExifFile.h の 631 行目に定義があります。
| bool SaveJpeg | ( | LPCWSTR | lpsz, |
| LONG | jpegQuality = 80 |
||
| ) |
[作成] Jpegファイル作成.
本インスタンスで管理している画像と EXIFタグ情報を jpegファイルに書き出します。
| lpsz | ファイル名。 |
| jpegQuality | JPEGのクオリティ(0〜100)。省略すると80。 |
| true | 成功。 |
| false | 失敗。 |
TnbExifFile.h の 615 行目に定義があります。
| void SetCopyrightTag | ( | LPCSTR | lpsz1, |
| LPCSTR | lpsz2 = NULL |
||
| ) |
[取得] Copyrightタグ取得.
| lpsz1 | 撮影著作権者。 |
| lpsz2 | 編集著作権者。 |
TnbExifFile.h の 880 行目に定義があります。
| void SetGpsAltitudeTag | ( | DWORD | d1, |
| DWORD | d2 = 1 |
||
| ) |
[設定] 高度設定
| d1 | 値1。 |
| d2 | 値2。省略すると1。 |
TnbExifFile.h の 955 行目に定義があります。
| void SetGpsLatitudeTag | ( | bool | isNorth, |
| DWORD | dd, | ||
| DWORD | mm, | ||
| double | ss | ||
| ) |
[設定] 緯度設定
| isNorth | true なら北緯、 false なら南緯 |
| dd | D. |
| mm | M. |
| ss | S. |
TnbExifFile.h の 921 行目に定義があります。
| void SetGpsLongitudeTag | ( | bool | isEast, |
| DWORD | dd, | ||
| DWORD | mm, | ||
| double | ss | ||
| ) |
[設定] 経度設定
| isEast | true なら西経、 false なら東経 |
| dd | D. |
| mm | M. |
| ss | S. |
TnbExifFile.h の 939 行目に定義があります。
| void SetGpsVersionTag | ( | void | ) |
| void SetTagInfo | ( | PROPID | id, |
| const CTagInfo & | ti | ||
| ) |
| void SetTagInfo | ( | PROPID | id, |
| const SYSTEMTIME & | st | ||
| ) |
[設定] EXIFタグ情報設定(時間ASCII文字列).
| id | ID。撮影時間の場合、 PropertyTagExifDTOrig を指定します。 |
| st | 時間 |
TnbExifFile.h の 805 行目に定義があります。
| void SetTagInfo | ( | PROPID | id, |
| LPCSTR | lpsz, | ||
| size_t | len = INVALID_SIZE |
||
| ) |
[設定] EXIFタグ情報設定(ASCII文字列).
任意のIDに文字列の情報を設定できます。
| id | ID |
| lpsz | 文字列 |
| len | NULLを含む文字列長。省略可能。指定する場合、lpsz がそのサイズアクセス可能であるようにすること。 |
TnbExifFile.h の 794 行目に定義があります。
| void SetUserCommentTag | ( | LPCSTR | lpsz | ) |
[設定] UserCommentタグ設定(ASCII/JIS).
ユーザコメント情報に指定の文字列を設定できます。
| lpsz | コメント |
TnbExifFile.h の 836 行目に定義があります。
| void SetUserCommentTag | ( | LPCWSTR | lpsz | ) |
[設定] UserCommentタグ設定(UNICODE).
ユーザコメント情報に指定の文字列を設定できます。
| lpsz | コメント |
TnbExifFile.h の 862 行目に定義があります。
| void SetVersionTag | ( | DWORD | ver = 0x0210 | ) |
[設定] バージョンタグ設定.
バージョン情報に指定のバージョンを設定できます。
| ver | バージョン。省略すると 0x0210 が割り当てられます。 |
TnbExifFile.h の 820 行目に定義があります。