Translation:Enumerations

From IDMLWiki

Jump to: navigation, search

9.3.2 Enumeration

InDesignスクリプティングは、プロパティ値のスコープを定義するために使用Enumerationを作成します。例えば、ストーリーでは「Regulartext」「Toctext」「Indexingtext」となります。InDesignのエクスポートでは、Enumerationの値の表し方を決定するためのルールとして以下を使用します:

  • プロパティの値が常にEnumerationである時、エレメントの属性は「string」データ型で得られます。
  • もしプロパティの値がいくつかの異なった型になれる時、プロパティは<Properties>エレメントの子要素として取り出せます(enumerationの属性型で)。例えば、<DocumentPreference>エレメントの次のセグメントは、コラムとマージンガイド色が「緑色」であることを示します。

IDMLスキーマ例:(designmap.rncからoff-topic属性を削除した)

スキーマ例1 ColumnGuideColorとMarginGuideColorエレメント
  1. DocumentPreference_ Object = element DocumentPreference {
  2.  element Properties {
  3.  element ColumnGuideColor { InDesignUIColorType_ TypeDef }?&
  4.  element MarginGuideColor { InDesignUIColorType_ TypeDef }?
  5. }
  6. ?
  7. }

IDMLパッケージからの例(off-topic属性を削除)

IDML例1 プロパティは属性かエレメントの値に依存
  1. <DocumentPreference>
  2.   <Properties>
  3.     <ColumnGuideColor type="enumeration">Violet</ColumnGuideColor>
  4.     <MarginGuideColor type="list">
  5.       <ListItem type="double">66</ListItem>
  6.       <ListItem type="double">60</ListItem>
  7.       <ListItem type="double">196</ListItem>
  8.     </MarginGuideColor>
  9.   </Properties>
  10. </DocumentPreference>

上記の例では、<ColumnGuideColor>か<MarginGuideColor>の値は、InDesign UIColorType Enumeration(datatype.rncファイル中で定義)かRGBカラーのどちらかです(3つのdoubleの配列として定義)。値はsingle以上になりうるし、シンプルな型だから、属性よりもエレメントとして表現されます。カラーが<ColumnGuideColor>エレメントのようにEnumerationである時、Enumerationの名前はエレメントの値として現れます。カラーがRGBの配列である場合、<MarginGuideColor>エレメントの子要素によって示され、エレメントのシリーズで表現します。

Personal tools