MicroStation CONNECT Edition ヘルプ

アクティブレンディションのキーワード

デザインスクリプトを使用して、ブックマーク、内部ドキュメントへのリンク、Web URLリンク、アタッチ、デジタル署名フィールド、マルチメディアなどを含むアクティブレンディション(コンテンツリッチなPDFドキュメント)を作成することができます。この作成には、操作キーワードを使用します。デザインスクリプト内での操作キーワードの順序は非常に重要です。

操作キーワード 順序
action_item 1番目
action_name 2番目
action_instance 3番目(指定時)
注記: 残りの操作キーワードであるaction_type、action_spec、action_rangeは、任意の順序で配置できます。

プロパティ発行キーワードを使用して、PDFドキュメントにオブジェクトメタデータを発行すること(すなわちプロパティの発行)もできます。プロパティの発行は、PDFドキュメント内で図形エンティティに関連付けられるオブジェクトメタデータを発行する処理です。Acrobat 7.0以降では、Acrobatの「オブジェクトデータツール」を使用して、図形エンティティに関連付けられたメタデータ情報を表示できます。

下記の操作キーワードでは、キーワードの機能に関する説明、キーワードが影響を与える要素のタイプ(該当する場合)、有効なデータタイプ(該当する場合)、キーワードの使用例を示します。

action_item

作成する操作項目のタイプ(ブックマーク、リンク、アタッチ、デジタル署名フィールド、マルチメディア)を指定します。アクティブレンディションを定義する際に必須のフィールドです。このキーワードは、他のどの操作キーワードよりも前に配置する必要があります。

action_itemキーワードでは、次の定数が有効です。

  • Field - デジタル署名フィールドを作成することを指定します。デジタル署名フィールドは、ユーザーの入力を収集する場所です。
  • Bookmark - ブックマークを作成することを指定します。ブックマークは、目次に含まれる単一行項目です。ブックマークを使用すると、対象の位置にすばやく移動したり、音声の再生やURLを開くなどの操作を実行したりすることができます。ブックマークの使用に関連する他のキーワードには、「グローバルキーワード」セクションのbookmark_templateがあります。
  • Link - リンクを作成することを指定します。リンクはシート上の長方形の領域であり、Web URLやドキュメント間のリンクなどのナビゲーション操作に関連付けられます。
  • Marker - マーカーを作成することを指定します。マーカーは、ナビゲーションの移動先を表すシート上の対象領域を示します。マーカーは一意の名前で識別されます。自動でマーカー名の先頭にsheet_nameが付加されます。完全修飾のマーカー名は、sheet_name.marker_nameです。マーカーの使用に関連する他のキーワードには、「グローバルキーワード」セクションのzoom_percentageがあります。
  • Attachment - ファイル、音声、または動画のアタッチを作成することを指定します。
  • Media - マルチメディア動画または音声クリップを作成することを指定します。

シンタックス -

ACTION_ITEM = <LINK | BOOKMARK | MARKER | MEDIA | FIELD | ATTACHMENT>

action_type

action_itemの割り当て項目に関連付ける操作のタイプを指定します。アクティブレンディションを定義する際に必須のフィールドです。

action_typeキーワードでは、次の定数が有効です。

  • AREA_OF_INTEREST - 操作タイプを対象領域として指定します。対象領域のブックマークで、ドキュメント内の特定のセクションまたはビューを定義するために使用します。セクションやビューの範囲はデザインスクリプトの基準に一致する要素を囲む長方形の累積範囲により決定されます。
  • DESTINATION - 操作タイプを出力先として指定します。次のコードスニペットに示すように、マーカーを作成するときに使用します。現在のシートの名前(sheet_name)が操作名の前に付加され、シートに関連付けられます。たとえば、action_name="Air Handler"でシート名が"Plumbing Schematics"の場合、一意な出力先の名前は"Plumbing Schematics.Air Handler"になります。
    If((level_name eq "one") and (type eq shape)) then
        action_item = marker
        action_name = "Air Handler"
        action_type = destination
    endif
  • DIGSIG_FIELD - 操作タイプとしてデジタル署名フィールドを指定します。デジタル署名フィールドに使用します。
  • DOCUMENT - 操作タイプとしてドキュメントを指定します。ドキュメントブックマークと内部ドキュメントリンクを定義する際に使用します。
  • FILE_ATTACHMENT - 操作タイプとしてファイルアタッチを指定します。ファイルアタッチで、PDFドキュメント内にファイルを付加して埋め込むために使用します。
  • MOVIE_ATTACHMENT - 操作タイプとして動画クリップを指定します。動画アタッチで、PDFドキュメントにムービーを埋め込むために使用します。
  • PLAY_MEDIA - 操作タイプとしてマルチメディア動画または音声クリップを指定します。マルチメディアで使用します。
  • PLAY_SOUND - 操作タイプとして音声クリップを指定します。音声クリップブックマークで使用します。
  • SOUND_ATTACHMENT - 操作タイプとして音声アタッチを指定します。音声アタッチで、PDFドキュメントに音声を埋め込むために使用します。
  • TEXT_DESCRIPTION - 操作タイプとして文字注記を指定します。文字注記のブックマークで、文字情報を表示するために使用します。
  • WEB_URL - 操作タイプとしてWeb URLを指定します。WebリンクブックマークおよびWeb URLリンクとともに使用します。

シンタックス

ACTION_TYPE = <WEB_URL | DESTINATION | DOCUMENT | PLAY_SOUND | PLAY_MEDIA | DIGSIG_FIELD | AREA_OF_INTEREST | FILE_ATTACHMENT |SOUND_ATTACHMENT | MOVIE_ATTACHMENT | TEXT_DESCRIPTION>

action_name/action_spec

action_nameとaction_specの値は、プリセット定数ではありません。定義するaction_itemとaction_typeに対応する一意の値を指定します。

action_nameは、action_itemで定義されているオブジェクトを識別するために内部で使用する一意の名前です。例外は、Webリンクのブックマークまたは音声クリップブックマークを識別する場合です。Webリンクブックマークの場合は、action_nameキーワードでURLを指定します。音声クリップブックマークの場合は、action_nameで音声ファイルを指定します。action_nameは、action_itemを定義する際に必須のフィールドです。

action_specは、ブックマーク階層内でのブックマークの位置や、メディアまたはアタッチ項目のファイル指定、Adobe Acrobatでデジタル署名フィールド上にポインタを置くと表示される文字列、および特定のリンクに対するマーカーの明示的な名前(sheet_name.marker_name)を指定します。マーカー項目以外のaction_itemを定義する際に必須のフィールドです。

シンタックス -

action_name = string
action_spec = string

次の表では、それぞれのaction_typeに対応する許容値の一覧を示します。

ACTION_TYPE ACTION_NAME ACTION_SPEC
AREA_OF_INTEREST ブックマーク項目の識別に使用する一意の文字列。 ブックマーク階層内でのブックマークの位置を指定します。
DESTINATION マーカーの一意の名前。 適用できません
DIGSIG_FIELD デジタル署名の識別に使用する一意の文字列。 Acrobatでデジタル署名フィールド上にポインタを置くと表示される文字列。
DOCUMENT ドキュメントブックマーク内でシート名の識別に使用する一意の文字列。 ブックマーク階層内でのブックマークの位置を指定します。リンクの場合は、マーカーの明示的な名前(sheet_name.marker_name)を指定します。
FILE_ATTACHMENT ファイルアタッチの一意の名前。 ファイルの指定。
MOVIE_ATTACHMENT 動画アタッチの一意の名前。 動画ファイルの指定。
PLAY_MEDIA 動画または音声クリップの一意の名前。 動画ファイルまたは音声ファイルの指定。
PLAY_SOUND 音声ファイルの指定。 ブックマーク階層内でのブックマークの位置を指定します。
SOUND_ATTACHMENT 音声アタッチの一意の名前。 音声ファイルの指定。
TEXT_DESCRIPTION ブックマーク項目を識別する一意の文字列。 ブックマーク階層内でのブックマークの位置を指定します。
WEB_URL リンクの識別子として使用する一意の名前。ブックマークの場合は、URL HTTPの指定。 ブックマーク階層内でのブックマークの位置を指定し、ブックマークエントリの名前を定義します。Web URLリンクの場合は、URLアドレスを指定します。

action_range

リンク、フィールド、マーカー、アタッチ、メディア、対象領域のブックマークの作成時に、長方形の領域を、現在の要素の範囲、または現在の要素に関連付けられているセルの範囲のどちらに基づいて決定するかを指定します。既定値はelement_rangeです。

action_rangeキーワードでは、次の定数が有効です。

  • ELEMENT_RANGE - アクティブレンディションの作成時に、長方形の領域が現在の要素の範囲に基づくことを指定します。
  • CELL_RANGE - アクティブレンディションの作成時に、長方形の領域が現在の要素に関連付けられているセルに基づくことを指定します。

シンタックス

ACTION_RANGE = <ELEMENT_RANGE | CELL_RANGE>

action_instance

長方形の領域(リンクまたは対象領域のブックマークの場合)を、現在のセルまたは要素の範囲を使用して計算するか、一致するセルまたは要素の範囲の合計に基づいて計算するかを指定します。

action_instanceキーワードでは、次の定数が有効です。

  • SINGLE_INSTANCE - リンクまたは対象領域のブックマークに関する長方形の領域を、一致するセルまたは要素の範囲の合計に基づいて計算することを指定します。
  • MULTIPLE_INSTANCE - リンクまたは対象領域のブックマークに関する長方形の領域を、現在のセルまたは要素の範囲を使用して計算することを指定します。

シンタックス

ACTION_INSTANCE = <SINGLE_INSTANCE | MULTIPLE_INSTANCE>

例1:

! Create a bookmark to a sheet in a document.
!
if (first_time eq true) then
 if (sheet_name .ne. "details") then
    action_item = bookmark
    action_name = "details"
    action_type = document
    action_spec = "./Drawing Sheet"
 endif
endif

例2:

! In the Table of Contents sheet, link
! all text in the index to the corresponding
! sheet name in the document. 
if (sheet_name eq "Table of Contents") then
 if ((type eq text) and (color eq 3)) then
 ! Define the rectangular region around the current
 ! text string that points/links to the corresponding
 ! sheet in the document by the same name.
   action_item = link
   action_name = characters
   action_type = document
   action_spec = characters
 endif
endif

例3:

! Create a bookmark to the equipment
! items and associate a maintenance video with
! the appropriate equipment.
! Identify the type of equipment to be addressed
if ((type eq 2) and (cellname eq "Sprinkler Head")) then
! Identify the tag set
    tag_set="equipment information"
    tag_name="serial number"
! Define a Bookmark under the sheetname for this page
! that will navigate to the piece of equipment. Use the
! sheet_name and TAG_CHAR to form the action item name.
    action_item = bookmark
    action_name = sheet_name + "." + TAG_CHAR
    action_type = AREA_OF_INTEREST
    action_spec = "." + sheet_name + "./" + TAG_CHAR
! Define a multimedia sound clip that describes
! how to install the equipment.
    action_item = media
    action_name = "Maintenance Instructions"
    action_type = PLAY_MEDIA
    action_spec = "c:\equipment\videos\sprinkler.wav"
endif

グローバルキーワード

次のキーワードは、first_timeキーワードを除いて、代入文として使用することができます。

  • first_time - この比較キーワードでは、デザインスクリプトのセグメントを1回実行することができます。このキーワード(フラグ)は、最初にデザインスクリプトが呼び出されたときはTRUEとなり、その後、値がFALSEに設定されます。値をリセットすることはできません。このキーワードは、ブックマークテンプレートを指定するときなどに役立ちます。このセクションの終わりにある例を参照してください。
    注記: システムでデザインスクリプトが処理されるときは、各要素が処理されるまで、デザインファイル内の各要素が上から下の順序で処理されます。デザインファイル内の最初の要素によってfirst_timeコードスニペットが実行される場合、残りの要素は処理されますが、それらはfirst_timeコードスニペットをスキップします。
  • sheet_name - 現在のシートの名前と、プロットされる現在のページに関連付けられたブックマークを指定します。既定値は、印刷定義の名前です。

    シンタックス

    sheet_name = string
  • ignore_engineering_links - エンジニアリングリンクが検出された場合に、アクティブレンディションにリンクとして含めないことを指定します。既定値はFALSEです。

    シンタックス

    ignore_engineering_links = <TRUE|FALSE> 
  • bookmark_template - ブックマーク階層のレイアウトを定義するXMLファイル。

    シンタックス

    bookmark_template = file specification to an XML file 
    注記: ファイルの指定が数字から始まる場合は、数字の前にスラッシュを1つまたは円記号を2つ付ける必要があります。たとえば、bookmark_template= c:\my templates\\2004.xml、またはbookmark_template= c:/my templates/2004.xmlなど。
  • zoom_percentage - 対象領域のブックマークまたはマーカーへのリンクをクリックしたときに、周辺領域をどのように表示するかを制御できます。100%の倍率を指定すると、長方形の領域がAcrobatビューアの現在のウィンドウ領域と同じ大きさになります。値を150にすると、マーカーや長方形領域の正確な境界より50%大きい領域を指定できます。ズーム倍率の既定値は120%です。デザインスクリプトでzoom_percentageキーワードを指定する順序が非常に重要です。zoom_percentageキーワードは、action_itemとaction_nameの各キーワードの後に配置する必要があります。

    シンタックス

    zoom_percentage = integer (where 100 is 100%) 

例:

if (first_time eq true) then
! Load the bookmark template
    bookmark_template = "d:\anystreet\mybookmarktemplate.xml"
if (cellname eq "steps") then
    action_item = BOOKMARK
    action_name = "Step Detail"
    zoom_percentage = 150
    action_type = AREA_OF_INTEREST
    action_spec = "./details/steps"
endif

プロパティ発行キーワード

次のキーワードを使用して、PDFにオブジェクトメタデータを発行します。PDFドキュメントでオブジェクトメタデータを表示するには、Adobe AcrobatまたはReaderのモデルツリーをクリックします。

  • propertycontainer_name - アクティブなプロパティのコンテナ名を指定します。文字列値が割り当てられている場合、その後のproperty_maptoelement操作で、指定したコンテナ名の下にアクティブなプロパティを配置します。コンテナはネストしないでください。既定では、デザインスクリプトが定義したプロパティは、モデルツリー内で最上位レベルのシート名ノードの下に配置されます。

    シンタックス -

    propertycontainer_name = "string"
  • property_name - 作成するプロパティオブジェクト名を指定します。プロパティオブジェクト名は一意である必要があります。

    シンタックス -

    property_name = "string"
  • property_setvalues - 作成するプロパティオブジェクトの属性と値を指定します。このキーワードで、属性値を変更または更新することもできます。

    シンタックス -

    property_setvalues = "attribute = value"
    property_setvalues = "attribute1 = value1;attribute2 = value2"
  • property_maptoelement - 現在の図形要素とアクティブなプロパティオブジェクトを関連付けます。

    シンタックス -

    property_maptoelement = true
    property_maptoelement = false
  • property_setqueryvalues - クエリを実行するプロパティオブジェクトの属性値を指定します。

    シンタックス -

    property_setqueryvalues = "string"
  • property_getvalue - 取得するプロパティオブジェクトの属性値を指定します。

    シンタックス -

    property_getvalue ="string"
  • property_deleteattributes - 削除するアクティブなプロパティオブジェクトの属性を指定します。

    シンタックス -

    property_deleteattributes = "string"
    property_deleteattributes = "string1;string2"

    例1:

    !Specify property name, set property values,
    !delete property value, and map to element.
    propertycontainer_name = "Ward 1"
    if ((type eq shape) and (level_name eq 'ward 1')) then
       property_name = "Ward 1"
       property_setvalues = "City=Dacula"
       property_setvalues = "Ward Name=Otonabee;Ward Zone=1"
       property_setvalues = "Mayor=J. Doe"
       Property_SetValues =  "Useless=Stuff"
    !Delete property value
       Property_DeleteAttributes = "Useless"
       property_maptoelement = true
    endif
    ! Set up Ward 2
    propertycontainer_name = "Ward 2"
    if ((type eq shape) and (level_name eq 'ward 2')) then
       property_name = "Ward 2"
       property_setvalues = "City=Snellville"
       property_setvalues = "Ward Name=Wantonabee;Ward Zone=2"
       property_setvalues = "Mayor=J. Smith"
       property_maptoelement = true
    endif

    次の図は、Adobe Reader/Acrobatモデルツリーでpropertycontainer_nameキーワードの値(Ward 1とWard 2)がどのように表示されるかを示しています。また、Uselessプロパティ(property_setvalues = "Useless=Stuff")は削除されたため(Property_DeleteAttributes = "Useless")、モデルツリーに表示されていないことにも注目してください。

例2:

! Query an object's attribute value.
if (type == line) then
   property_name = "Ward 1"
   property_setqueryvalues = "City"
 if (property_getvalue=="Dacula")
    color = "red"
 endif
endif