Hatena::ブログ(Diary)

名もないテクノ手 このページをアンテナに追加 RSSフィード Twitter

EPUB版『InDesign者のための正規表現入門』

InDesignのTips一覧

2008-10-15

[][][]IDMLがやってくる

IDMLInDesign Markup Language)っていうのは、InDesign CS4に搭載されるXMLベースのドキュメントフォーマット(らしい)。くわしくは、Adobe SystemsのTim Coleさんのブログを参照してください。

The Most Important New Feature

  • Programmatically create .INX outside InDesign, i.e., create InDesign document files using a database or some other application

  (InDesignを使わないでプログラミング的に.INXを作成します。すなわち、データベースやさまざまなアプリケーションを使ってInDesignドキュメントを作成します。)

  • Edit or transform document.

  (ドキュメントの編集や変更ができます)

  • Programmatically replace old with new content.

  (プログラミング的にコンテンツを入れ替えます)

  • Extract and recombine document subcomponents.

  (ドキュメントのサブコンポーネントを抽出して再結合できます)

  • Include and preserve their own proprietary data in the .INX structure.

  (.INX構造の中に属性データを保持します)

  • Validate the .INX document structure.

  (.INXドキュメント構造を確実にします)

  • Pre-flight the .INX code.

  (.INXコードを検証します)

  • Execute processes on INX using industry standard tools like XSLT, XQuery, E4X, RelaxNG validators, and converters.

  (XSLT、XQuery、E4X、RelaxNG validators、または各種コンバーターなどの標準的なツールを使用してINSのプロセスを実行します)

  • Build rich internet applications that serve as front ends to a publishing system that uses InDesign Server as the layout engine.

  (InDesign Serverをレイアウトエンジンとして使用し、パブリッシングシステムのフロントエンドとして提供することで、リッチなインターネットアプリケーションを実現します)

IDMLは「テキスト透過性」があるということらしい。それはすばらしいことだ。人間が読み書きでき*1、必要ならばプログラミング的に生成できる。生成だけならば、InDesignは必要ない。テキストはいくつものアプリケーション間を自由に行き来できるでしょう。

IDMLはTim Coleさんがおっしゃる通り、InDesign CS4のもっとも重要な目玉機能と言っていいと思います。

追記(2008-10-19)

IDMLに関する技術情報が公開されています。ここの「DOCUMENTATION」タブの下の方です。「HOME」にはIDMLでも使用する「Adobe InDesign CS4 Products SDK」がダウンロードできます。

InDesign Developer Center

新しくエントリーを立てるべきなのかもしれませんが、まだInDesign CS4が手元になく検証のしようがないため追記にしておきます。ざっと眺めただけなので、詳しい事もわかっていません。ですから、以下の情報はわたしの読み間違いを含んでいる可能性があります。

InDesignからIDMLを生成すると、いくつかの部品のzipアーカイブで保存されるようです。その中身の構成は「idml-specification.pdf:P18」にあります。

f:id:seuzo:20081019120059p:image

これら複数のxmlがDBの正規化テーブルのように分割され、相互参照しているようです。各々の役割やフォーマットはPDFに書かれています。

フォーマットは少し複雑です。型にもうるさいようだし、座標の記述もパスポイントごとに書く必要があるみたい。propertiesも全記述な感じ(同:P79)。

f:id:seuzo:20081019120100p:image

データベースなどのデータをXSLTで変換するなり生成するなりして、最後はSKDに含まれるパッケージツール(Shell)でパッケージするようです。これは、Javaに引数を渡しているだけのように見えます。Shellをキックできる必要があるってことかもしれない。


この文書、428ページもあるんですけれど、おそらくきっと多分、日本語にはならないんだろうなぁ。鬱だ。自分用にはプリントアウトしてキンコーズで製本するけど、50人くらい欲しい人がいたら、印刷・製本しない?

Adobe Systemsさまは、ぼくらの英語学習の一助となるように願っていてくれるのかもしれないね。あーもう、一石二鳥だよ。

ぜんぜん関係ないけれど、オーム社のマンガでわかるシリーズ(amazon:オーム社 マンガでわかる)が翻訳されるようだ。ある意味これも教育的指導ってやつだと思う。

The Manga Guide to Databases (Manga Guide To...)

The Manga Guide to Databases (Manga Guide To...)

*1:PostScript以来の快挙だと思う

fourfour 2008/10/15 12:51 うわ、英語サイトなのに一番のりでコメントですか ^^
それにしてもIDMLは楽しみですね。INXファイルをプログラムで書けたら幸せになれるのに〜、と感じてチャレンジしたが挫折したクチです ^^。でも今度は実現できそう。これを理由に何が何でも CS4を買ってもらうぞ!(自前で買えよって?)

seuzoseuzo 2008/10/15 12:59 英検よんきゅうは伊達じゃないです。間違いを気にしません。なぜならば、わたしのバックグランドにはエキサイト翻訳が付いているのだから^^
自慢じゃないけれど、マシンもソフトウエアも自前です。出血過多。

なかとじなかとじ 2008/10/15 20:40 ホント、早いッすね。
CS 4の目玉ってなんなんだろうと探っていましたが、英検“6級”の私には……(苦)
とりあえず外部でドキュメントを作成できるってことはおいといて。
例えばInDesign上で属性つけて書き出すってこともできるんですかね?
単純な例としては、テキストフレームや画像フレームに判定属性を持たせてIDMLフォーマットで書き出せるって感じの。
もとより、生成サーバを経由するなんてケチなこと言ってないで、PDFにこの概念を持ち込めばもっとおもしろいことができるのにねぇ。なんつーか、PDFを開くとサーバーから動的にもろもろ読み込まれて、クライアント側でレイアウトが組み上がるイメージ。つまり、Acrobat Readerが各種通信機能を持っていてコレ(IDML)を理解できるようになれば……ん? もしかしてなるの?

seuzoseuzo 2008/10/15 21:00 >例えばInDesign上で属性つけて書き出すってこともできるんですかね?
実物がでないとなんとも言えないですよね。
けれど、XSLTでかなりのところまでコントロールできるような気がします。チューリング完全というわけではないでしょうけれど^^

akatsuki_pocketakatsuki_pocket 2008/10/16 01:08 INXファイルってコトはInDesign互換ファイルですかね?
だとすると、下位のバージョンでも読めたりするとかしないとか。
うーん、どういう仕様で実装されるのか気になるところです。

なかとじなかとじ 2008/10/16 02:06 >INXファイルってコトはInDesign互換ファイルですかね?
実際のところはわかりませんが、そういうことは関係ないんじゃないですか。
つまり、InDesignのドキュメントファイルをバイナリファイルではなくEPSみたいに記述できるってことに意味がある。しかも、動的要素を練り込められるし汎用ミドルエンド(XSLT等)を利用できるから良し、と。
まぁ、プレス・パブリッシングで「LAMPでCMS(=blogなどがコレ)」みたいなことができるってイメージじゃないですかねぇ。
ただ、元になるIDMLドキュメントがInDesignで書き出せなければ魅力半減かな。
Demo版レビューお願いします<せうぞーさん(笑)

seuzoseuzo 2008/10/16 09:41 >Demo版レビュー
わたし、プレスじゃないので、GMとか最近は見ていないんですよ^^
モノが出て来たら、ぼちぼち検証していきます。

たけうちとおるたけうちとおる 2008/10/16 12:33 おもしろそうですね。
やってみたいことがいろいろあるなぁ。

seuzoseuzo 2008/10/16 14:58 サンプルはもちろんだと思いますが、
おそらく、というか間違いなくすべてpt単位系でしょうね。mm単位系に戻すと誤差が出るってやつ。
よし、ますまますpt派優勢だ!

babababa 2008/11/18 17:18 最初のやつは、今までにサードパーティがINXファイルを使ってやろうとしてたことのリストですね。
READABILITYというところのすぐ上に、IDMLのこんな風に設計しましたという文章がありました。
Using IDML, you can:
 IDMLを使って次のようなことができます
Programmatically generate or modify IDML documents
 IDML文書をプログラムを使って生成したり変更する
Re-use parts of IDML documents in other documents
 IDML文書の一部を他の文書でも再利用する
Break a document into components
 文書をコンポーネントに分割する
Transform document elements using XSLT
 XSLTを使って文書要素を変換する
Find data in InDesign documents using XPath.
 XPathを使ってInDesign文書中のデータを検索する

seuzoseuzo 2008/11/18 17:50 >今までにサードパーティがINXファイルを使ってやろうとしてたことのリストですね。

あ、はい。そしてこうしたWantsがIDMLで実現できるという意味だと思います。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証