4D v16.3

SET PICTURE METADATA

ホーム

 
4D v16.3
SET PICTURE METADATA

SET PICTURE METADATA 


 

SET PICTURE METADATA ( picture ; metaName ; metaContents {; metaName2 ; metaContents2 ; ... ; metaNameN ; metaContentsN} ) 
引数   説明
picture  ピクチャー in メタデータを設定するピクチャ
metaName  テキスト in 設定するブロックの名前またはパス
metaContents  変数 in メタデータの内容

説明   

SET PICTURE METADATA コマンドを使用して、picture (4Dピクチャフィールドまたは変数) 内のメタデータ (またはメタタグ) の内容を書き込んだり更新したりできます。

メタデータはピクチャに挿入された追加の情報です。4Dでは4タイプの標準メタデータEXIF, GPS, IPTC そして TIFFを処理できます。

Note: これらのメタデータタイプについては以下のドキュメントを参照できます: http://www.iptc.org/std/IIM/4.1/specification/IIMV4.1.pdf (IPTC) および http://exif.org/Exif2-2.PDF (TIFF, EXIF, GPS). 

metaName引数には設定や更新を行うメタデータタイプを指定する文字列を渡します。以下を渡すことができます:

  • 新しいPicture Metadata Namesテーマの定数。このテーマには4Dがサポートするすべてのタグがグループ化されています。それぞれの定数はタグパスを含んでいます (例 "TIFF/DateTime")。
  • メタデータの完全なブロック名 ("TIFF", "EXIF", "GPS" あるいは "IPTC")。
  • 空の文字列 ("")。
metaContents 引数にはメタデータの新しい値を渡します:
  • metaNameにタグパス定数を渡した場合、設定する値を直接、または新しいPicture Metadata Valuesテーマの適切な定数を、metaContents引 数に渡せます。値は指定されたメタデータに応じて、テキスト、倍長整数、実数、日付、時間タイプを使用できます。メタデータが一つ以上の値を含む場合、配 列を使用できます。文字列を渡すときはXML (XMP標準) でフォーマットされていなければなりません。空の文字列 ("") を渡すと既存のメタデータが消去されます。
  • metaNameにブロック名か空の文字列を渡すときは、metaContents引数には設定するメタデータを含むXML DOM参照を渡します。空の文字列の場合、すべてのメタデータが更新されます。

Windowsではコマンド実行時にエラーが発生すると、OK 変数が0に設定されます。Mac OSでは技術的な理由で、メタデータ書き込みエラーを検知できません。そのためこのコマンドはMac OSではOK 変数を更新しません。

警告: 特定のメタデータはリードオンリーであり、SET PICTURE METADATAでは書き込むことはできません。例えば、TIFF XResolution/TIFF YResolutionEXIF Color SpaceEXIF Pixel X Dimension/EXIF Pixel Y Dimensionなどは修正できません。

注:

  • 特定のピクチャーフォーマット (特にJPEGとTIFF) だけがメタデータをサポートします。逆にGIFやBMPなどのフォーマットはメタデータを受け入れません。メタデータ付きのピクチャーを、それをサポートしないフォーマットに変換すると、情報は失われます。
  • OS X 10.7 (Lion)では、ピクチャーのメタデータをエンコード・デコードするために使用されるネイティブフレームワーク内のバグによって、GPS座標が不正確になることがあります。この場合、OSをOS X 10.8 (Mountain Lion)または 10.9 (Maverick)にアップデートすることが強く推奨されます。

配列を使用して"Keywords"メタデータの値を複数設定します:

 ARRAY TEXT($arrTkeywords;2)
 $arrTkeywords{1}:="France"
 $arrTkeywords{2}:="Europe"
 SET PICTURE METADATA(vPicture;IPTC keywords;$arrTkeywords)

DOM参照を使用してGPSブロックを設定します:

 C_TEXT($domMetas)
 $domMetas:=DOM Parse XML source("metas.xml")
 C_TEXT($gpsRef)
 $gpsRef:=DOM Find XML element($domMetas;"Metadatas/GPS")
 If(OK=1)
    SET PICTURE METADATA(vImage;"GPS";$refGPS)
  //ここで $gpsRef はGPS要素を指しています
    ...
 End if
 DOM CLOSE XML($domMetas)

 

すべてのメタデータがDOM要素参照で処理されるとき、タグは名前がブロック名 (TIFF, IPTC等)である要素に付加される属性として格納されます (参照された要素の子)。特定のメタデータブロックが操作されると、ブロックタグは、コマンドにより参照される要素に直接、属性として格納されます。



参照 

GET PICTURE KEYWORDS
GET PICTURE METADATA
Picture Metadata Names
Picture Metadata Values

 
プロパティ 

プロダクト: 4D
テーマ: ピクチャ
番号: 1121

このコマンドはOKシステム変数を更新しますMac OS用です。

 
履歴 

初出: 4D v12

 
タグ 

images

 
ARTICLE USAGE

ランゲージリファレンス ( 4D v16)
ランゲージリファレンス ( 4D v16.1)
ランゲージリファレンス ( 4D v16.2)
ランゲージリファレンス ( 4D v16.3)