Translation5:INX, IDML, and In Design Scripting

From IDMLWiki

Jump to: navigation, search

4 INXとIDML、InDesign Scripting

INX(IDMLの前身)は、InDesignのドキュメントを旧バージョン用に保存し使用するために導入されました。(今回、IDMLを導入するにあたって)複雑でエラーが起こりやすいバイナリーファイル用プラグインを書くのではなく、私たちはInDesignのスクリプト用の特徴を使用しようと決めました。INXやIDMLにエクスポートすると、InDesignはスクリプティングDOMからオブジェクトとその属性をXMLファイルへシリアライズします。INXやIDMLをInDesignが開く時、レイアウトを構築し、各種設定をセットし、テキストを入力し、フォーマットを適用し、ドキュメントを作成します。

今後もIDMLは大きく成長するでしょう。スクリプティングDOMを用いることで、InDesignのオブジェクトモデルは大きな利益を享受できます。

  • オブジェクトモデルの低いレベルから、ハイレベルなディテールと変更を切り離します。
  • よくできたドキュメントと理解しやすく拡張しやすいアーキテクチャ、サードパーティ(プラグインが作成した)データを追加しやすいファイルフォーマット。また、スクリプティングDOMの中でオブジェクト名が一意のオブジェクトと属性を示すように、既存のポリシーとと手順があります。
  • オブジェクトとプロパティのパラメータ、その誤り訂正などの重要なレベル。
  • アイテムを加えるか、削除するか、修正するために十分に定義された高いレベルでのバージョン支援メカニズム。

IDMLは以下の部分でスクリプティングDOMと異なっています:

  • スクリプト用のイベント(メソッド)はIDMLドキュメントに含まれていません。
  • IDMLは、いくつかのエレメントと属性があるオーダーに現れるのを必要としますが、ランダムアクセスとしてスクリプト用のDOMを見なすことができます。
  • IDMLに含まれているいくつかのオブジェクトとプロパティはスクリプト(AppleScript, JavaScript, VBScript)などから利用できません。逆もまた同じ。
  • いくつかの場合、デフォルトと同じであるプロパティ値はIDMLに書かれません。

以下の例はスクリプティングとIDMLとの浅からぬ関係を示しています:

Personal tools