JustoFitホーム JustoFitバージョン1.4.2使用説明書


組版ルール

組版ルールを適用

JustoFit用の組版ルールがすでに設定されているInDesign文書で、組版調整を行うには、次のように操作します。

  1. JustoFitをインストールした状態で、InDesignでその文書を開きます。
  2. [段落メタ]パネルの[文書のメタ書式を適用]コマンドを選択します。
    ([段落メタ]パネルが表示されていないときは、[ウィンドウ]→[段落メタ]コマンドを選択すれば表示されます)

生成内容(相互参照等)の更新もあわせて行われます。

組版ルールを設定

JustoFit用の組版ルールは、InDesign文書のXML構造の中に書きます。

具体的には、HTMLやXHTMLの文書と同様、InDesignの最上位要素の子としてxhtml:head要素を作り、その子としてxhtml:style要素を作り、その中にCSS形式で記述します。

InDesign文書にxhtml:style要素を作る

(InDesignでXML要素を作る方法をすでに理解しているなら、この項の説明を読む必要はありません)

  1. JustoFitをインストールした状態で、ルールを設定したい文書をInDesignで開きます。
  2. [タグ]パネルの[新規タグ...]コマンドを選択します。
    ([タグ]パネルが表示されていないときは、[ウィンドウ]→[タグ]コマンドを選択すれば表示されます)

    すると、[新規タグ]ダイアログボックスが表示されます。
  3. [名前:]テキストボックスに「xhtml:head」と入力します。
  4. [OK]ボタンをクリックします。
    すると、[タグ]パネルのタグ一覧にxhtml:headタグが追加されます。
  5. 同様にしてxhtml:styleタグも追加します。
  6. [表示]→[構造]→[構造を表示]コマンドを選択します。
    すると、画面左側に構造ペーンが開きます。
    (すでに開いているならこの操作は不要です)
  7. 最上位要素(上図では「Root」)を右クリックし、コンテキストメニューで[新規要素...]を選択します。

    すると、[要素のタグを選択]ダイアログボックスが現れます。
  8. [タグ:]ポップアップメニューから「xhtml:head」を選びます。
  9. [OK]ボタンをクリックします。
    すると、最上位要素の子要素としてxhtml:head要素が作られ、構造ペーンにも表示されます。
  10. 同様に、xhtml:head要素の子要素としてxhtml:style要素を作ります。

組版ルールの基礎

組版ルールは、「条件」と「操作」で表されます。

条件の例

操作の例

条件と操作は任意に組み合わせることができ、さまざまな組版調整を記述できます。

記述例

文法

組版ルールは、CSS形式で記述します(主にCSS 2.1、一部CSS 3)。

CSSのセレクタで条件を示し、その直後の{}内のプロパティ:;で操作を示します。例:

p { -un-pstyle: "本文段落";}

/**/でかこって、コメントを任意の箇所に入れることができます。コメントは処理上は無視されます。

※CSSについて詳しくは、CSSの仕様書または解説書をごらんください。

CSSに対するJustoFit独自拡張とCSS 3先取り実装

JustoFitでは、さまざまな機能を実現するために、標準的なCSSに対して、拡張を加えている部分があります。

W3Cでは、CSSに私的な識別子を導入する際には、名前衝突を避けるため、作成者を示す接頭辞をつけるよう提議しています。その命名規則に従い、JustoFit独自拡張のセレクタ・プロパティ・キーワード・クラス名にはすべて、Unit, Ltd.の頭をとって接頭辞「-un-」をつけています。

また、JustoFitで実現したい機能が、CSS 3の各種モジュールで提案されている内容にすでに含まれていた場合には、極力それを採用するようにしています。したがって、CSS 3を一部先取り実装しています。これらについては接頭辞はつけていません。

組版ルールの条件を指定

要素を対象とする条件

何らかのXML要素を操作対象としたい場合のセレクタの書き方は、標準的なCSSでの書き方と同じです。例:

なお、名前空間接頭辞のついた要素名・属性名については、CSS内では、その「:」を「|」に置き換えて記述します。例:xhtml:pxhtml|p

段落を対象とする条件

JustoFitでは、特殊なクラスセレクタ「.-un-p」を用いると、段落を操作対象にすることができます。

あわせて、段落スタイル名をクラスセレクタとして使うこともできます。

そのようなクラス属性を持った要素が実際にそこにあるかないかにかかわらず、あるかのごとく扱われます。

ストーリーを対象とする条件

JustoFitでは、特殊なクラスセレクタ「.-un-s」を用いると、ストーリーを操作対象にすることができます。

そのようなクラス属性を持った要素が実際にストーリーに割り当てられているかいないかにかかわらず、割り当てられているかのごとく扱われます。

関連する対象を指定

各種の擬似要素セレクタを用いると、関連する対象を指定できます。

調整条件

各種の擬似クラスセレクタを用いると、調整の引き金としたい状況を条件として指定できます。

調整順番

特殊な擬似クラスセレクタ「:-un-turn()」を用いると、調整を段階的に行うことができます。()内には任意の自然数を書きます。例::-un-turn(2)

調整順番が指定されていると、文書全体で、調整順番が小さい調整(のうち条件が合致するもの)から順次実行されます。

調整順番を指定されていない規則は、調整順番が1であるとして扱われます。

組版ルールの操作を指定

以下のプロパティに対応しています。

ボックス種別

displayプロパティ

inline | block | run-in | -un-run-on
初期値 inline
適用対象 要素
パーセント値 受けつけない

XML要素のボックス種別を指定します。

InDesign文書がXML要素を用いている場合は、すべての要素について、必ずこのプロパティを指定する必要があります。でないとデフォルトのインライン要素として扱われ、前後に改段落が挿入されません、ないし削除されてしまいます。

ただし、インライン要素についてはデフォルトなので省略可能です。

inline インライン要素。
要素の前後で改段落を行わないようにします。
block ブロックレベル要素。
要素の前後で改段落を行います。
run-in ランイン要素。直後の段落の頭につきます。
要素の前では改段落を行います。
要素の後では改段落を行わないようにします。
-un-run-on ランオン要素。直前の段落に繰り込まれます。
要素の前では改段落を行わないようにします。
要素の後では改段落を行います。

生成内容

contentプロパティ

<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>)を用いると、相互参照先を直接指定することができます。※この方式は汎用性が低いので特殊な場合にしか用いられないでしょう。

スタイル

-un-cstyleプロパティ

<string>|auto
初期値 auto
適用対象 段落・テキスト要素
パーセント値 受けつけない

文字スタイル。

-un-pstyleプロパティ

<string>|auto
初期値 auto
適用対象 段落・テキスト要素
パーセント値 受けつけない

段落スタイル。

文字サイズ

-un-font-size-stepプロパティ

<length>|<percentage>
初期値 0
適用対象 段落
パーセント値 調整前の文字サイズに対する割合

文字サイズ調整刻み。

相対長は調整前の文字サイズに対して。

-un-min-font-sizeプロパティ・
-un-max-font-sizeプロパティ

<length>|none
初期値 none
適用対象 段落
パーセント値 受けつけない

最小・最大文字サイズ。

相対長は不正。0・負の値は不正。

文字の水平比率

-un-font-stretch-stepプロパティ

<number>|<percentage>
初期値 0
適用対象 段落
パーセント値 調整前の水平比率に対する割合

水平比率調整刻み。

実数は水平比率×100。

-un-min-font-stretchプロパティ・
-un-max-font-stretchプロパティ

<number>|none
初期値 none
適用対象 段落
パーセント値 受けつけない

最小・最大水平比率。

水平比率×100。0・負の値は不正。

行送り

-un-line-height-stepプロパティ

<length>|<percentage>
初期値 0
適用対象 段落
パーセント値 調整前の行送りに対する割合

行送り調整刻み。

-un-min-line-heightプロパティ・
-un-max-line-heightプロパティ

<length>|none
初期値 none
適用対象 段落
パーセント値 受けつけない

最小・最大行送り。

相対長は不正。0・負の値は不正。

漢数字字形

-un-text-transform-kanji-numericプロパティ

halfheight|none
初期値 none
適用対象 テキスト要素
パーセント値 受けつけない
halfheight 漢数字を、高さが半分の字形に置換します。
none 何もしません。

対応漢数字:〇, 一, 二, 三, 四, 五, 六, 七, 八, 九。

括弧付文字字種

-un-text-transform-parenthesized-characterプロパティ

composite|none
初期値 none
適用対象 テキスト要素
パーセント値 受けつけない
composite 括弧付文字列を、対応する1キャラクタに置換します。
括弧は半角でも全角でもかまいません。
none 何もしません。

対応文字列:

数字種

-un-text-transform-numberプロパティ

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。

テキストフレームの拡大・縮小

-un-align-border-top-stepプロパティ・
-un-align-border-bottom-stepプロパティ・
-un-align-border-left-stepプロパティ・
-un-align-border-right-stepプロパティ

<length>
初期値 0
適用対象 テキストフレーム
パーセント値 受けつけない

上下左右辺位置調整刻み。

意味
<length> 指定された一辺だけを動かしていく刻み。位置合わせ基準からの距離が開いていく向きを正、縮んでいく向きを負とする。他の辺は動かさないので、結果として矩形が縦か横に伸縮する。
相対長は不正。

位置合わせ基準が見つからないときは、実効値0として扱われ、何もしません。

矩形の幅/高さの最小/最大値については、min-widthmax-widthmin-heightmax-heightプロパティで記述。

min-widthプロパティ・
max-widthプロパティ・
min-heightプロパティ・
max-heightプロパティ

<length>|none
初期値 none
※InDesignが受けつける最小・最大長さの範囲内で
適用対象 テキストフレーム
パーセント値 受けつけない

矩形の幅/高さの最小/最大値。

style属性内にセレクタを書く

組版ルールは、通常のCSS同様、文書のヘッダ部に記述する以外に、各要素に対して個別に指定することもできます。

条件や関連対象を指定するためにセレクタを書く必要があるときは、ヘッダ部のCSS同様、{}をつけます。例:

<xhtml:p xhtml:style=":-un-in-overset-story {-un-line-height-step: -1pt;}">
この段落の属するストーリーの中身があふれていたら、収まるまでこの段落の行送りを1ptずつ縮めます。
</xhtml:p>

標準的CSSへの対応状況

JustoFitは現時点で、使用頻度の低い一部のCSSの仕様に対応していません。それには以下のような機能が含まれます:::first-line擬似要素、@規則、外部CSS取り込み、SGMLコメント、子要素への継承。

またプロパティについては目下、上記の説明で示しているものにのみ対応しています。



Copyright (C) 2007-2008 UNIT, Ltd. All Rights Reserved.