JustoFitホーム > JustoFitバージョン1.4.2使用説明書 >
JustoFit用の組版ルールがすでに設定されているInDesign文書で、組版調整を行うには、次のように操作します。
生成内容(相互参照等)の更新もあわせて行われます。
JustoFit用の組版ルールは、InDesign文書のXML構造の中に書きます。
具体的には、HTMLやXHTMLの文書と同様、InDesignの最上位要素の子としてxhtml:head要素を作り、その子としてxhtml:style要素を作り、その中にCSS形式で記述します。
(InDesignでXML要素を作る方法をすでに理解しているなら、この項の説明を読む必要はありません)
組版ルールは、「条件」と「操作」で表されます。
条件と操作は任意に組み合わせることができ、さまざまな組版調整を記述できます。
.-un-s:-un-overset
{ -un-font-stretch-step: -1; }
.-un-p.school_body::-un-text("沿革")
{ -un-cstyle: "項見出し"; }
chapter > title
{ -un-pstyle: "章見出し"; }
組版ルールは、CSS形式で記述します(主にCSS 2.1、一部CSS 3)。
CSSのセレクタで条件を示し、その直後の{}内のプロパティ:値;で操作を示します。例:
p { -un-pstyle: "本文段落";}
/*と*/でかこって、コメントを任意の箇所に入れることができます。コメントは処理上は無視されます。
※CSSについて詳しくは、CSSの仕様書または解説書をごらんください。
JustoFitでは、さまざまな機能を実現するために、標準的なCSSに対して、拡張を加えている部分があります。
W3Cでは、CSSに私的な識別子を導入する際には、名前衝突を避けるため、作成者を示す接頭辞をつけるよう提議しています。その命名規則に従い、JustoFit独自拡張のセレクタ・プロパティ・キーワード・クラス名にはすべて、Unit, Ltd.の頭をとって接頭辞「-un-」をつけています。
また、JustoFitで実現したい機能が、CSS 3の各種モジュールで提案されている内容にすでに含まれていた場合には、極力それを採用するようにしています。したがって、CSS 3を一部先取り実装しています。これらについては接頭辞はつけていません。
何らかのXML要素を操作対象としたい場合のセレクタの書き方は、標準的なCSSでの書き方と同じです。例:
なお、名前空間接頭辞のついた要素名・属性名については、CSS内では、その「:」を「|」に置き換えて記述します。例:xhtml:p → xhtml|p
JustoFitでは、特殊なクラスセレクタ「.-un-p」を用いると、段落を操作対象にすることができます。
あわせて、段落スタイル名をクラスセレクタとして使うこともできます。
そのようなクラス属性を持った要素が実際にそこにあるかないかにかかわらず、あるかのごとく扱われます。
JustoFitでは、特殊なクラスセレクタ「.-un-s」を用いると、ストーリーを操作対象にすることができます。
そのようなクラス属性を持った要素が実際にストーリーに割り当てられているかいないかにかかわらず、割り当てられているかのごとく扱われます。
各種の擬似要素セレクタを用いると、関連する対象を指定できます。
各種の擬似クラスセレクタを用いると、調整の引き金としたい状況を条件として指定できます。
特殊な擬似クラスセレクタ「:-un-turn()」を用いると、調整を段階的に行うことができます。()内には任意の自然数を書きます。例::-un-turn(2)
調整順番が指定されていると、文書全体で、調整順番が小さい調整(のうち条件が合致するもの)から順次実行されます。
調整順番を指定されていない規則は、調整順番が1であるとして扱われます。
以下のプロパティに対応しています。
値 | inline | block | run-in | -un-run-on |
初期値 | inline |
適用対象 | 要素 |
パーセント値 | 受けつけない |
XML要素のボックス種別を指定します。
InDesign文書がXML要素を用いている場合は、すべての要素について、必ずこのプロパティを指定する必要があります。でないとデフォルトのインライン要素として扱われ、前後に改段落が挿入されません、ないし削除されてしまいます。
ただし、インライン要素についてはデフォルトなので省略可能です。
inline |
インライン要素。 要素の前後で改段落を行わないようにします。 |
block |
ブロックレベル要素。 要素の前後で改段落を行います。 |
run-in |
ランイン要素。直後の段落の頭につきます。 要素の前では改段落を行います。 要素の後では改段落を行わないようにします。 |
-un-run-on |
ランオン要素。直前の段落に繰り込まれます。 要素の前では改段落を行わないようにします。 要素の後では改段落を行います。 |
値 | <content-list> |
初期値 | 空文字列 |
適用対象 | テキスト要素・::before・::after |
パーセント値 | 受けつけない |
生成する内容。
テキストを置き換えたり、直前・直後に生成したりするために用いることができるほか、文書内外への相互参照を行うことも可能です。
<content-list> | [ <string> | <target> ]+ |
<string>や<target>を複数並べるときは、間に半角スペースを入れます。例:
content:"第" target-counter(attr(href),page) "頁";
<target> |
target-counter(<uri>, page) | target-text(<uri>, content) |
target-counter()を用いると、相互参照先のノンブルを印字できます。
target-text()を用いると、相互参照先のテキストを印字できます。
<uri> |
[ 参照先文書パス ]? | #参照先ID 相互参照元と参照先が別の文書上にあるときは、参照先文書パスを指定する必要があります。相対パスを指定可能です。 例:../chap1/chap1.indd#anchor 参照先IDは、参照先要素のxhtml:id属性の値です。 |
<uri>でattr(属性名)を用いると、要素の属性値をURIとすることができます。ただし、属性名が名前接頭辞を含むときは、attr()内ではその「:」を「|」に置き換えて記述します。
例:
<xhtml:p>See <xhtml:a xhtml:href="#chx">this chapter</xhtml:a> for an in-depth evaluation.
...
<xhtml:h2 xhtml:id="chx">A better way</xhtml:h2>
というマークアップから
See "A better way" on page 31 for an in-depth evaluation.
というテキストが生成されるようにするには、以下のCSSコードを用いることができます。
xhtml|a { content: '"' target-text(attr(xhtml|href), content) '" on page ' target-counter(attr(xhtml|href, url), page); }
あるいは、<uri>でurl(<string>)を用いると、相互参照先を直接指定することができます。※この方式は汎用性が低いので特殊な場合にしか用いられないでしょう。
値 | <string>|auto |
初期値 | auto |
適用対象 | 段落・テキスト要素 |
パーセント値 | 受けつけない |
文字スタイル。
値 | <string>|auto |
初期値 | auto |
適用対象 | 段落・テキスト要素 |
パーセント値 | 受けつけない |
段落スタイル。
値 | <length>|<percentage> |
初期値 | 0 |
適用対象 | 段落 |
パーセント値 | 調整前の文字サイズに対する割合 |
文字サイズ調整刻み。
相対長は調整前の文字サイズに対して。
値 | <length>|none |
初期値 | none |
適用対象 | 段落 |
パーセント値 | 受けつけない |
最小・最大文字サイズ。
相対長は不正。0・負の値は不正。
値 | <number>|<percentage> |
初期値 | 0 |
適用対象 | 段落 |
パーセント値 | 調整前の水平比率に対する割合 |
水平比率調整刻み。
実数は水平比率×100。
値 | <number>|none |
初期値 | none |
適用対象 | 段落 |
パーセント値 | 受けつけない |
最小・最大水平比率。
水平比率×100。0・負の値は不正。
値 | <length>|<percentage> |
初期値 | 0 |
適用対象 | 段落 |
パーセント値 | 調整前の行送りに対する割合 |
行送り調整刻み。
値 | <length>|none |
初期値 | none |
適用対象 | 段落 |
パーセント値 | 受けつけない |
最小・最大行送り。
相対長は不正。0・負の値は不正。
値 | halfheight|none |
初期値 | none |
適用対象 | テキスト要素 |
パーセント値 | 受けつけない |
halfheight | 漢数字を、高さが半分の字形に置換します。 |
none | 何もしません。 |
対応漢数字:〇, 一, 二, 三, 四, 五, 六, 七, 八, 九。
値 | composite|none |
初期値 | none |
適用対象 | テキスト要素 |
パーセント値 | 受けつけない |
composite |
括弧付文字列を、対応する1キャラクタに置換します。 括弧は半角でも全角でもかまいません。 |
none | 何もしません。 |
対応文字列:
値 | circled|negative-circled|none |
初期値 | none |
適用対象 | テキスト要素 |
パーセント値 | 受けつけない |
circled | 半角数字列を、対応する1キャラクタの白丸数字に置換します。 |
negative-circled | 半角数字列を、対応する1キャラクタの黒丸数字に置換します。 |
none | 何もしません。 |
対応数字列:0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 00, 01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, …, 99, 100。
値 | <length> |
初期値 | 0 |
適用対象 | テキストフレーム |
パーセント値 | 受けつけない |
上下左右辺位置調整刻み。
値 | 意味 |
<length> |
指定された一辺だけを動かしていく刻み。位置合わせ基準からの距離が開いていく向きを正、縮んでいく向きを負とする。他の辺は動かさないので、結果として矩形が縦か横に伸縮する。
相対長は不正。 |
位置合わせ基準が見つからないときは、実効値0として扱われ、何もしません。
矩形の幅/高さの最小/最大値については、min-width・max-width・min-height・max-heightプロパティで記述。
値 | <length>|none |
初期値 |
none ※InDesignが受けつける最小・最大長さの範囲内で |
適用対象 | テキストフレーム |
パーセント値 | 受けつけない |
矩形の幅/高さの最小/最大値。
組版ルールは、通常のCSS同様、文書のヘッダ部に記述する以外に、各要素に対して個別に指定することもできます。
条件や関連対象を指定するためにセレクタを書く必要があるときは、ヘッダ部のCSS同様、{}をつけます。例:
<xhtml:p xhtml:style=":-un-in-overset-story {-un-line-height-step: -1pt;}">
この段落の属するストーリーの中身があふれていたら、収まるまでこの段落の行送りを1ptずつ縮めます。
</xhtml:p>
JustoFitは現時点で、使用頻度の低い一部のCSSの仕様に対応していません。それには以下のような機能が含まれます:::first-line擬似要素、@規則、外部CSS取り込み、SGMLコメント、子要素への継承。
またプロパティについては目下、上記の説明で示しているものにのみ対応しています。
Copyright (C) 2007-2008 UNIT, Ltd. All Rights Reserved.