最終更新日: 2006/02/06

XSL Formatter V3.4 のXSL独自拡張仕様

XSL Formatter V3.4 では、いくつかのXSLの独自拡張要素・プロパティを用意しています。 以下にそれらの要素の一覧を示します。

拡張要素を利用する場合、namespaceに必ず http://www.antennahouse.com/names/XSL/Extensions を指定してください。

拡張要素

要素名 備考
axf:document-info 文書情報を指定します。この情報はPDF中に埋め込まれます。
axf:output-volume-info 多分冊PDFを出力します。
axf:space-after-punctuation 欧文約物の後の空白量を指定します。 V3.4
axf:space-before-punctuation 欧文約物の前の空白量を指定します。 V3.4
axf:space-between-digit-and-punctuation 数字と欧文約物の間の空白量を指定します。 V3.4
axf:space-between-punctuation-and-digit 欧文約物と数字の間の空白量を指定します。 V3.4

拡張プロパティ

プロパティ名 備考
axf:action-type 外部リンクの動作を指定します。
axf:annotation-contents 注釈の内容を指定します。
axf:annotation-color 注釈の背景などに利用される色を指定します。
axf:annotation-file-attachment ファイル添付注釈の関連付けられるファイルを指定します。
axf:annotation-flags 注釈のフラグを指定します。
axf:annotation-font-family フリーテキスト注釈のフォントファミリを指定します。
axf:annotation-font-size フリーテキスト注釈のフォントのサイズを指定します。
axf:annotation-font-style フリーテキスト注釈のフォントを斜体にするかどうか指定します。
axf:annotation-font-weight フリーテキスト注釈のフォントの太さを指定します。
axf:annotation-height 注釈の高さを指定します。
axf:annotation-icon-name 注釈の表示に用いるアイコンの名前を指定します。
axf:annotation-open 注釈の最初の状態を指定します。
axf:annotation-position-horizontal 注釈の水平位置を指定します。
axf:annotation-position-vertical 注釈の垂直位置を指定します。
axf:annotation-text-color フリーテキスト注釈の色を指定します。
axf:annotation-text-align フリーテキスト注釈のテキストの配置を指定します。
axf:annotation-title 注釈のタイトルを指定します。
axf:annotation-type 注釈の種類を指定します。
axf:annotation-width 注釈の幅を指定します。
axf:append-non-end-of-line-characters 追加行末禁則文字を指定します。
axf:append-non-starter-characters 追加行頭禁則文字を指定します。
axf:assumed-page-number ページ番号の予想値を指定します。
axf:assumed-page-number-prefix ページ番号の前置文字列の予想値を指定します。
axf:avoid-widow-words 段落の最後の行が1語だけにならないようにします。 V3.4
axf:background-color ページに対する背景色を指定します。
axf:background-image ページに対する背景画像を指定します。
axf:background-position-horizontal ページに対する背景画像の水平位置を指定します。
axf:background-position-vertical ページに対する背景画像の垂直位置を指定します。
axf:background-repeat ページに対する背景画像の繰り返し方法を指定します。
axf:base-uri 相対指定のURIのベースとなる位置を指定します。
axf:bleed 裁ち落としのための塗り足しの領域の幅を指定します。
axf:bleed-bottom 裁ち落としのための塗り足しの下の領域の幅を指定します。
axf:bleed-left 裁ち落としのための塗り足しの領域の左の幅を指定します。
axf:bleed-right 裁ち落としのための塗り足しの領域の右の幅を指定します。
axf:bleed-top 裁ち落としのための塗り足しの領域の上の幅を指定します。
axf:bookmark-include 多分冊出力時のしおりの扱いを指定します。
axf:border-bottom-left-radius 丸め罫の左下の径を指定します。
axf:border-bottom-right-radius 丸め罫の右下の径を指定します。
axf:border-radius 丸め罫の径を指定します。
axf:border-top-left-radius 丸め罫の左上の径を指定します。
axf:border-top-right-radius 丸め罫の右上の径を指定します。
axf:box-shadow ボックスシャドウを指定します。
axf:column-count ブロックに対する段数を指定します。
axf:column-gap ブロックに対する段間の幅を指定します。
axf:column-number-format 段番号のための書式を指定します。
axf:column-rule-align 段間罫の位置を指定します。
axf:column-rule-color 段間罫の色を指定します。
axf:column-rule-length 段間罫の長さを指定します。
axf:column-rule-style 段間罫のスタイルを指定します。
axf:column-rule-width 段間罫の幅を指定します。
axf:crop-offset 出力媒体の物理的な端から仕上がり寸法までの距離を指定します。
axf:crop-offset-bottom 出力媒体の物理的な端から仕上がり寸法までの下の距離を指定します。
axf:crop-offset-left 出力媒体の物理的な端から仕上がり寸法までの左の距離を指定します。
axf:crop-offset-right 出力媒体の物理的な端から仕上がり寸法までの右の距離を指定します。
axf:crop-offset-top 出力媒体の物理的な端から仕上がり寸法までの上の距離を指定します。
axf:destination-type 外部リンクでの宛先形式を指定します。
axf:diagonal-border-color 対角罫の色を指定します。
axf:diagonal-border-style 対角罫のスタイルを指定します。
axf:diagonal-border-width 対角罫の幅を指定します。
axf:except-non-end-of-line-characters 除外行末禁則文字を指定します。
axf:except-non-starter-characters 除外行頭禁則文字を指定します。
axf:footnote-align 脚注の配置を指定します。
axf:footnote-position 脚注を段ごとに配置するかどうかを指定します。
axf:footnote-stacking 脚注の配置の方法を指定します。
axf:hanging-punctuation 句読点のぶら下げを行うかどうかを指定します。
axf:initial-volume-number 多分冊出力時の初期文書番号を指定します。
axf:justify-nbsp NON-BREAKING SPACE を均等割り付けの対称にするかどうかを指定します。
axf:kerning-mode 隣接する全角約物の詰めを行うかどうかを指定します。
axf:line-break 行分割の方法を指定します。
axf:line-number 行番号を表示するかどうかを指定します。 V3.4
axf:line-number-background-color 行番号の背景色を指定します。 V3.4
axf:line-number-display-align 行番号の配置を指定します。 V3.4
axf:line-number-color 行番号の色を指定します。 V3.4
axf:line-number-font-family 行番号のフォントファミリを指定します。 V3.4
axf:line-number-font-size 行番号のフォントサイズを指定します。 V3.4
axf:line-number-font-style 行番号を斜体にするかどうかを指定します。 V3.4
axf:line-number-font-weight 行番号のフォントの太さを指定します。 V3.4
axf:line-number-format 行番号のための書式を指定します。 V3.4
axf:line-number-initial 最初の行の行番号を指定します。 V3.4
axf:line-number-interval 出力する行番号の間隔を指定します。 V3.4
axf:line-number-offset 行番号の表示オフセットを指定します。 V3.4
axf:line-number-position 行番号の表示位置を指定します。 V3.4
axf:line-number-reset 行番号をリセットします。 V3.4
axf:line-number-start 出力を開始する行番号を指定します。 V3.4
axf:line-number-text-decoration 行番号の文字列の修飾を指定します。 V3.4
axf:number-type ページ番号を出力するのか段番号を出力するのかを指定します。
axf:origin-id ページ番号の基点を指定します。
axf:outline-color PDFのしおりのタイトルの色を指定します。
axf:outline-expand PDFのしおりの表示時に下位の階層を表示するかどうかを指定します。
axf:outline-external-destination PDFのしおりに外部リンクを設定します。
axf:outline-font-style PDFのしおりのタイトルのフォントスタイルを指定します。
axf:outline-font-weight PDFのしおりのタイトルのフォントの太さを指定します。
axf:outline-group PDFのしおりをグループ化して、まとめて出力します。
axf:outline-internal-destination PDFのしおりに内部リンクを設定します。
axf:outline-level PDFのしおりの項目の階層レベルを示します。
axf:outline-title PDFのしおりのタイトルとして表示される文字列です。
axf:output-volume-break 多分冊出力を指示します。
axf:output-volume-filename 多分冊出力時の文書ファイル名を指定します。
axf:overflow-condense オーバーフローしたテキストを領域内にどのように詰め込むかを指定します。
axf:overflow-replace オーバーフローしたテキストに対する代替文字列を指定します。
axf:page-number-prefix ページ番号の前置文字列を指定します。
axf:physical-page-number 物理的なページ番号を得ます。
axf:printer-marks トンボなどの印刷マーク類を指定します。
axf:printer-marks-line-width トンボの線の幅を指定します。
axf:punctuation-spacing 隣接する全角約物の詰めの間隔を指定します。
axf:punctuation-trim 行頭、行末の全角約物を半角扱いにするかどうかを指定します。
axf:reverse-diagonal-border-color 逆対角罫の色を指定します。
axf:reverse-diagonal-border-style 逆対角罫のスタイルを指定します。
axf:reverse-diagonal-border-width 逆対角罫の幅を指定します。
axf:revision-bar-color 改訂バーの色を指定します。
axf:revision-bar-offset 改訂バーの表示オフセットを指定します。
axf:revision-bar-position 改訂バーの表示位置を指定します。
axf:revision-bar-style 改訂バーのスタイルを指定します。
axf:revision-bar-width 改訂バーの幅を指定します。
axf:soft-hyphen-treatment SOFT HYPHEN の出力を指定します。
axf:suppress-duplicate-footnote 同一ページ中の重複した脚注の除去を指定します。
axf:suppress-duplicate-page-number 重複ページ番号参照の除去を指定します。
axf:text-autospace 和欧文間に空きを入れるかどうかを指定します。
axf:text-autospace-width 和欧文間の空きの量を指定します。
axf:text-kashida-space アラビア語で Kashidaの割り合いを指定します。
axf:vertical-underline-side 縦書きでの下線をどちら側に付けるかを指定します。
axf:word-break 単語の途中でも行分割可能にするかどうかを指定します。

関数の拡張

関数名 備考
rgb-icc rgb-icc関数を拡張しています。

値の拡張

プロパティ名 備考
border-style
border-*-style
CSS3にある dot-dash、dot-dot-dash、wave が指定できるよう拡張されています。
clear clearプロパティの値を拡張しています。
float floatプロパティの値を拡張しています。
font-stretch font-stretchプロパティの値を拡張しています。
force-page-count force-page-countプロパティの値を拡張しています。
format formatプロパティの値を拡張しています。
internal-destination internal-destinationプロパティの値を拡張しています。
overflow overflowプロパティの値を拡張しています。
page-position page-positionプロパティの値を拡張しています。

その他の拡張

  1. XSL仕様では、fo:region-body や fo:region-before などに指定する padding や border の幅はゼロでなければならないことになっています。XSL Formatter V3.4 では、これらに対してゼロ以外の値も受け付け、評価します。例えば、次のように指定することができます。

    <fo:region-body padding="1.5cm" border-color="red" border-style="solid" border-width="2pt" />

  2. XSL仕様では、script プロパティに指定する <script> の値は、ISO15924 に規定されている値とされています。XSL Formatter V3.4 では、CJKへの対応のために、xml:lang などに指定される次の言語コードを指定することを許しています。

    ja 日本文字 (ひらがな、カタカナを含む)
    ko 朝鮮文字 (ハングルを含む)
    zh-CN 中国簡体字
    zh-TW 中国繁体字

    例えば、zh が ISO639 で規定される言語コード、CN が ISO3166 で規定される国名コードです。

    注意: CHS という国名コードは ISO3166 にありません。 したがって、zh-CHS は指定できません。zh-TW を指定してください。

PDF出力における文書情報

XSL Formatter V3.4 からPDF出力する場合の、PDFへ文書情報を埋め込む方法を説明します。

<axf:document-info>

PDFには、著者やタイトルなどの文書情報を埋め込んでおくことができます。XSL Formatter V3.4 では、独自拡張した要素を用いてそれらを指定することができます。 PDFに埋め込まれたこれらの情報は、Acrobat Reader で参照することができます。

Common Usage:

文書情報を指定します。この要素はエリアを生成しません。例えばPDFのような文書ファイル中に埋め込むために利用されます。

Areas:

なし。

Constraints:
<!ELEMENT axf:document-info EMPTY>
<!ATTLIST axf:document-info
  name   CDATA #REQUIRED
  value  CDATA #REQUIRED
>

axf:document-info 拡張要素は、fo:root の直下の fo:page-sequence が現れる前の任意の位置、または fo:page-sequence の最初の子要素に置くことができます。 また、そのプロパティは namevalue で、いずれも必須です。name の値は、以下のいずれかでなければなりません。

  • "title"

    文書のタイトルを指定します。

  • "subject"

    文書のサブタイトルを指定します。

  • "author"

    文書の著者名を指定します。

  • "keywords"

    キーワードをカンマ区切りで列挙します。

  • "pagemode" V3.4

    文書を開いたときの表示方法を指定します。以下のいずれかを指定できます。

    • UseNone
      文書アウトラインもサムネールイメージも非表示
    • UseOutlines
      文書アウトラインを表示
    • UseThumbs
      サムネールイメージを表示
    • FullScreen
      メニューバー、ウィンドウコントロール、他のウィンドウを一切表示しないフルスクリーンモード
    • UseOC
      オプションのコントロールグループパネルを表示

    UseOCは、PDF1.5以上のときに指定できます。アウトラインがあるときの既定値はUseOutlinesです。

  • "openaction" V3.4

    文書を開いたときに表示される宛先または実行されるアクションを指定します。 ここでは、internal-destination の <number-with-fragment> と同様の値を記述することができます。リンクの作成も参照してください。

Contents:

EMPTY

Examples:
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"
         xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions">
  <axf:document-info name="title" value="文書のタイトルを指定する"/>
  <axf:document-info name="subject" value="文書のサブタイトルを指定する"/>
  <axf:document-info name="author" value="著者名を指定する"/>
  <axf:document-info name="keywords" value="キーワードをカンマ区切りで列挙します"/>
...

fo:page-sequence の子の axf:document-info は、分冊出力のときにのみ有効です。 fo:page-sequence の子の axf:document-info は、fo:root の子の axf:document-info を上書きして、分冊出力される文書の文書情報として利用されます。したがって、fo:page-sequence に axf:document-info が指定されていないときは、すべての分冊された文書に同じ文書情報が埋め込まれます。

"openaction" と "pagemode" の指定は、分冊に対して行うことはできません。fo:root の直下の指定のみが有効です。分冊出力されたときは、第一分冊に対しての指定となります。


多分冊PDF出力

XSL Formatter V3.4 では、PDFを複数に分冊して出力することができます。

<axf:output-volume-info>

Common Usage:

組版結果を出力するとき、fo:page-sequence 単位に、分冊出力できるようにします。

Areas:

なし。

Constraints:
<!ELEMENT axf:output-volume-info EMPTY>
<!ATTLIST axf:output-volume-info
  initial-volume-number  NUMBER "1"
  format                 CDATA  "1"
  bookmark-include (first|all|separate) separate
>

axf:output-volume-info 拡張要素は、fo:root の直下の fo:page-sequence が現れる前の任意の位置に置くことができます。

Contents:

EMPTY

Examples:
<axf:output-volume-info
  initial-volume-number="2"
  format="-1"
  bookmark-include="separate"
/>

<fo:page-sequence>
  PAGE-SEQUENCE-1
  ...
</fo:page-sequence>
<fo:page-sequence>
  PAGE-SEQUENCE-2
  ...
</fo:page-sequence>
<fo:page-sequence axf:output-volume-break="true">
  PAGE-SEQUENCE-3
  ...
</fo:page-sequence>

ファイルへ出力するときにのみ機能します。印刷やストリーム出力などでは機能しません。 このとき、出力ファイル名は、GUIやコマンドラインパラメータなどで指定されていなければなりません。 分冊出力されるファイル名は、出力ファイル名をベースにして自動的に決定されます。これは、format プロパティによって書式化された文字列が、出力ファイルの拡張子の直前に挿入されることによって行われます。 ファイル名に document.pdf が与えられているとき、上の例では、PAGE-SEQUENCE-1 と PAGE-SEQUENCE-2 が ducument-2.pdf へ出力され、PAGE-SEQUENCE-3 が document-3.pdf へ出力されます。

format プロパティに適用される数値は、axf:initial-volume-number プロパティによって初期値を与えることができます。 format プロパティは、XSL-FO仕様の「7.24.1. format」と同じです。

分冊は、fo:page-sequence に指定された axf:output-volume-break プロパティによって引き起こされます。 axf:output-volume-filename プロパティを指定すれば、その分冊だけ指定したファイル名で出力することができます。

分冊した場合のしおりの扱いは、axf:bookmark-include プロパティによって以下から選択することができます。

  • 第1分冊にのみしおりを付けます。
  • 全分冊にしおりを付けます。
  • 各分冊にそれぞれのしおりを付けます。

実際に分冊出力を行うためには、以下の条件が必要です。

  • FO中に <axf:output-volume-info> 要素が含まれていること。
  • 各インターフェイスで以下が指定されていること。
    GUI PDF出力ダイアログ で、[分冊出力] がチェックされていること。
    コマンドライン -multivol パラメータ が指定されていること。
    .NET MultiVolume プロパティに true が指定されていること。
    COM MultiVolume プロパティに true が指定されていること。
    Java XfoObj::setMultiVolume() により多分冊が指定されていること。
    C++/C XfoObj::setMultiVolume() により多分冊が指定されていること。

axf:bookmark-include

多分冊出力したときのしおりの扱いを指定します。

Value: first | all | separate
Initial: separate
Applies to: axf:output-volume-info
Inherited: no
Percentages: N/A

値の意味は以下のとおりです。

first

第1分冊にのみしおりを付けます。

all

全分冊にしおりを付けます。

separate

各分冊にそれぞれのしおりを付けます。 しおりがどの分冊に属するかは axf:outline-level="1" が現れた分冊になります。分冊を跨るしおりは前の分冊に入ります。 このため、axf:bookmark-include="separate" の場合でも他の分冊への外部リンクが含まれ る場合があります。

axf:initial-volume-number

多分冊出力時の初期文書番号を指定します。

Value: <number>
Initial: 1
Applies to: axf:output-volume-info
Inherited: no
Percentages: N/A

この値は、formatプロパティに適用され、出力されるPDFファイル名に利用されます。例えば、次のような指定のとき、出力PDFファイル名に document.pdf が指定されたとすると、分冊されたファイル名は、document-2.pdfdocument-3.pdfdocument-4.pdf、… となります。

<axf:output-volume-info
  initial-volume-number="2"
  format="-1"
/>

axf:output-volume-break

多分冊出力を指示します。

Value: true | false
Initial: false
Applies to: fo:page-sequence
Inherited: no
Percentages: N/A

値の意味は以下のとおりです。

true

この fo:page-sequence から新しい分冊とします。

false

この fo:page-sequence では分冊しません。

分冊を開始したい fo:page-sequenceaxf:output-volume-break="true" を指定します。文書番号は、1ずつ増えていきます。 分冊するとき、最初の fo:page-sequence には、常に axf:output-volume-break="true" が指定されているとみなされます。明示的に axf:output-volume-break="false" が指定されていても無視されます。

axf:output-volume-filename

多分冊出力時の文書ファイル名を指定します。

Value: <string>
Initial: empty string
Applies to: fo:page-sequence
Inherited: no
Percentages: N/A

指定がないときは、formatプロパティを用いた自動的なファイル名が採用されます。このプロパティを指定したときは、そのファイル名が採用されます。 先頭の fo:page-sequence または、axf:output-volume-break="true" である fo:page-sequence でのみ有効です。

例えば、次のような指定のとき、出力PDFファイル名に document.pdf が指定されたとすると、分冊されたファイル名は、document-2.pdfchapterX.pdfdocument-4.pdf、… となります。

<axf:output-volume-info
  initial-volume-number="2"
  format="-1"
/>

<fo:page-sequence>
  ...
</fo:page-sequence>
<fo:page-sequence axf:output-volume-break="true" axf:output-volume-filename="ChapterX.pdf">
  ...
</fo:page-sequence>
<fo:page-sequence axf:output-volume-break="true">
  ...
</fo:page-sequence>

すべての fo:page-sequence に axf:output-volume-filename を指定したとしても、元となるPDFファイル名を省略することはできません。


欧文組版のための拡張

XSL Formatter V3.4 は、欧文組版における約物前後の空白量を調整するための拡張を行っています。 V3.4

<axf:space-after-punctuation>

約物の後の空白量を指定します。

<axf:space-before-punctuation>

約物の前の空白量を指定します。

<axf:space-between-digit-and-punctuation>

数字と約物の間の空白量を指定します。

<axf:space-between-punctuation-and-digit>

約物と数字の間の空白量を指定します。

これらの拡張要素はいずれも空要素で、fo:declarations の直下に置くことができ、エリアを生成しません。 以下のプロパティを指定することができます。

language

言語コードを指定します (RFC3066)。省略することはできません。

Value: <language>
Initial: N/A
Inherited: no
Percentages: N/A

space

空白の量を指定します。ゼロ以下の場合、指定は無効です。

Value: <length> | <percentage> | figure | punctuation | thin | hair
Initial: N/A
Inherited: no
Percentages: refer to the font size

値の意味は以下のとおりです。

figure

U+2007 と同じ量を示します。

punctuation

U+2008 と同じ量を示します。

thin

U+2009 と同じ量を示します。

hair

U+200A と同じ量を示します。

code

適用対象のコードポイントを指定します。

Value: <string>
Initial: empty string
Inherited: no
Percentages: N/A

指定されたすべてのコードポイントに、language と space が適用されます。

例えば、仏語組版を行う場合は、次のような指定をするでしょう。

<axf:space-before-punctuation code="?" space="1 div 3" language="fr"/>
<axf:space-before-punctuation code="!" space="1 div 3" language="fr"/>
<axf:space-before-punctuation code=";" space="1 div 3" language="fr"/>
<axf:space-before-punctuation code=":" space="1 div 4" language="fr"/>
<axf:space-before-punctuation code="&#xBB;" space="1 div 4" language="fr"/>
<axf:space-after-punctuation code="&#xAB;" space="1 div 4" language="fr"/>
<axf:space-between-punctuation-and-digit code="+" space="thin" language="fr"/>
<axf:space-between-punctuation-and-digit code="&#x2212;" space="thin" language="fr"/>
<axf:space-between-punctuation-and-digit code="&#xB1;" space="thin" language="fr"/>
<axf:space-between-digit-and-punctuation code="%" space="thin" language="fr"/>
<axf:space-between-digit-and-punctuation code="&#x2103;" space="thin" language="fr"/>
<axf:space-between-digit-and-punctuation code="&#x2109;" space="thin" language="fr"/>

欧文組版のためのこれらの設定は、オプション設定ファイルでも指定しておくことができます。FO中での指定は、それを上書きします。


PDF出力におけるしおりとリンク

XSL Formatter V3.4 で、PDF出力する場合の、PDFのしおりとリンクを作成する方法を説明します。

しおりの作成

PDFにはしおりと呼ばれる機能があります。Acrobat Readerではしおりは、目次を階層化した概観を持っており、項目をクリックすることにより目的の位置へジャンプすることができます。

PDF bookmark

XSL Formatter V3.4 では、しおりを作成したいオブジェクトに拡張プロパティを付加することにより、PDF出力で自動的にしおりを作成することができます。

上図のしおりを作成するには、例えば次のようにします。

<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"
         xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions">
...
<fo:block axf:outline-level="1"
          axf:outline-expand="false"
          axf:outline-title="Colophon">
  ...
</fo:block>
<fo:block axf:outline-level="1"
          axf:outline-expand="false"
          axf:outline-title="Table of Contents">
  ...
</fo:block>
<fo:block axf:outline-level="1"
          axf:outline-expand="true"
          axf:outline-title="1. Introduction and Overview">
  <fo:block axf:outline-level="2"
            axf:outline-expand="true"
            axf:outline-title="1.1. Processing a Stylesheet">
    <fo:block axf:outline-level="3"
              axf:outline-expand="false"
              axf:outline-title="1.1.1. Tree Transformations">
      ...
    </fo:block>
    <fo:block axf:outline-level="3"
              axf:outline-expand="false"
              axf:outline-title="1.1.2. Formatting">
      ...
    </fo:block>
  </fo:block>
  <fo:block axf:outline-level="2"
            axf:outline-expand="false"
            axf:outline-title="1.2. Benefits of XSL">
    ...
  </fo:block>
</fo:block>
<fo:block axf:outline-level="1"
          axf:outline-expand="false"
          axf:outline-title="2. XSL Transformation">
  ...
</fo:block>
...

axf:outline-expand

しおりの初期状態で、下位の階層を表示するかどうかを指定します。

Value: true | false
Initial: true
Applies to: block-level formatting objects
Inherited: no
Percentages: N/A

true の場合は下位項目が展開されて表示され、false の場合はたたみ込み表示されます。

axf:outline-group

しおりをグループ化して、まとめて出力します。

Value: <string>
Initial: empty string
Applies to: block-level formatting objects
Inherited: no
Percentages: N/A

このプロパティが省略された場合や空文字列の場合、グループ化は行われません。何か文字列が指定された場合、その文字列はグループ名として扱われ、同一のグループ名を持つしおりがまとめて出力されます。 また、グループ化されていないしおりは、グループ名なしのグループとしてまとめて出力されます。

axf:outline-level

しおりの項目の階層レベルを示します。

Value: <number>
Initial: 0
Applies to: block-level formatting objects
Inherited: no
Percentages: N/A

<number> の値は、非負の整数値でなければなりません。 初期値は0で、このとき、しおりは作成されません。 しおりの最上位の項目は1で、しおりの中に階層化されるに従って、2以上の値となります。

axf:outline-title

しおりのタイトルとして表示される文字列を指定します。

Value: <string>
Initial: empty string
Applies to: block-level formatting objects
Inherited: no
Percentages: N/A

このプロパティが省略された場合や空文字列の場合、このプロパティが付加されているオブジェクトのテキストがタイトルになります。 つまり、次のふたつは同じしおりを生成します。

<fo:block axf:outline-level="2" axf:outline-title="1. Introduction">...
<fo:block axf:outline-level="2">1. Introduction</fo:block>

axf:outline-color

しおりのタイトルとして表示される文字列の色を指定します。

Value: <color>
Initial: the value of the 'color' property
Applies to: block-level formatting objects
Inherited: no
Percentages: N/A

このプロパティは、PDF1.4 以上に対して有効です。

axf:outline-font-style

しおりのタイトルとして表示される文字列のフォントスタイルを指定します。

Value: normal | italic
Initial: normal
Applies to: block-level formatting objects
Inherited: no
Percentages: N/A

値の意味は以下のとおりです。

normal

通常のフォントスタイル。

italic

イタリックフォント。

このプロパティは、PDF1.4 以上に対して有効です。

axf:outline-font-weight

しおりのタイトルとして表示される文字列のフォントの太さを指定します。

Value: normal | bold
Initial: normal
Applies to: block-level formatting objects
Inherited: no
Percentages: N/A

値の意味は以下のとおりです。

normal

通常の太さ。

bold

太字。

このプロパティは、PDF1.4 以上に対して有効です。

注意事項

  • outline-level~outline-expand のプロパティは、fo:block などの、表示矩形領域を作成するオブジェクトに指定してください。例えば fo:wrapper などに指定しても効果はありません。
  • Acrobat でサポートされていない言語(タイ語など)に属する文字をしおりに指定した場合、正しく表示されない場合があります。

リンクの作成

fo:basic-link を使用すれば、PDFのリンクを簡単に作成することができます。

PDFのリンクは、PDF文書内の特定位置へのリンクと外部へのリンクに分類されます。文書内へのリンクは fo:basic-link の internal-destination プロパティで表します。外部へのリンクは external-destination プロパティで表します。次に例を示します。

  • 内部リンク
    <fo:block>
    解答は<fo:basic-link internal-destination="appendix-a">付録A</fo:basic-link>にあります。
    </fo:block>
    ...
    <fo:block id="appendix-a">
    付録A
    </fo:block>
  • 外部リンク
    <fo:block>
    ここが <fo:basic-link external-destination="http://www.w3.org/">W3Cのウェブサイト</fo:basic-link>です。
    </fo:block>

相対アドレス指定の外部リンクは、PDF出力の設定use-launch-for-relative-uri によって、「ファイルを開く」、「World Wide Web リンク」のいずれかで動作するようにPDFへ変換されます。 絶対アドレス指定の外部リンクは、常に「World Wide Web リンク」に変換されます。

さらに、次のような高度なリンクを指定することができます。これらの理解のために、「PDFリファレンスマニュアル」を参照することをお勧めします。

  • 外部リンクに対して、以下の動作を明示できます。
    • PDF内への移動 (GoToR)
    • ファイルを開く (Launch)
    • World Wide Web リンク (URI)
  • PDFへの外部リンクに対して、内部リンクのようにIDを指定できます。
  • PDFへの外部リンクに対して、ページ番号を指定できます。
  • 内部リンクに対して、ページ番号を指定できます。
  • PDFの宛先形式を指定できます。
  • しおりに外部リンクを指定できます。
  • しおりに内部リンクを指定できます。

PDFに対する外部リンクの external-destination の指定は、基本的には次のPDFのパラメータ仕様に準じますが、XSL Formatter V3.4 では、すべてのパラメータが有効なわけではありません。無効なパラメータは無視されます。

この仕様書には次のような例が載っています。

  • http://mydocs/doc.pdf#nameddest=Chapter6
  • http://mydocs/doc.pdf#page=3
  • http://mydocs/doc.pdf#page=3&zoom=200,250,100
  • http://mydocs/doc.pdf#zoom=50
  • http://mydocs/doc.pdf#page=72&view=fitH,100
  • http://mydocs/doc.pdf#view=fitb&nameddest=Chapter3
  • http://mydocs/doc.pdf#pagemode=none
  • http://mydocs/doc.pdf#pagemode=bookmarks&page=2
  • http://mydocs/doc.pdf#page=3&pagemode=thumbs

XSL Formatter V3.4 では、次のパラメータのみが有効です。大文字小文字の違いは無視されます。

  • nameddest
  • page
  • zoom
  • view
  • viewrect

例えば、外部リンクの場合、fitH、fitR、fitBH の指定は無効です。これらは内部リンクでのみ有効です。 また、fitH などでPDFの数値パラメータが必要なもので、それが省略されている場合は 0 とみなされます。

PDFに対する外部リンクでは、show-destination プロパティで、新しいウィンドウを開くかどうかを指定することができます。リンク先がPDF以外では無効です。 show-destination="new" とすると、新しいウィンドウを開いて、そのウィンドウにPDFが表示されます。 show-destination="replace" とすると、新しいウィンドウを開かず、現在のウィンドウ内にPDFが表示されます。 指定されなかったときは、PDFのビューアアプリケーションの動作に依存します。 XSL-FOの仕様では、省略時は "replace" となっていますが、XSL Formatter V3.4 では若干異なる実装をしています。 show-destination プロパティは、以下の条件下では無効です。

  • axf:action-type の指定が "gotor" または "launch" でリンク先のファイルがPDFのとき以外では無効です。
  • 内部リンクでは無効です。分冊により、内部リンクであっても外部リンクとしてPDFに埋め込まれることがあります。内部リンクに指定された show-destination は、そういうときにのみ効果があります。

XSL Formatter V3.4 では、高度なリンクのために、以下の拡張プロパティを用意しています。

axf:action-type

外部リンクの動作を指定します。

Value: gotor | launch | uri | auto
Initial: auto
Applies to: fo:basic-link
Inherited: no
Percentages: N/A

値の意味は以下のとおりです。

gotor

リンク先を "GoToR" アクションで開きます。すなわち、PDFとして開きます。リンク先のURIはPDFであるとみなされます。

launch

リンク先を "Launch" アクションで開きます。すなわち、ファイルとして開きます。

uri

リンク先を "URI" アクションで開きます。すなわち、URI (World Wide Web) として開きます。

auto

システム既定値に依存します。

リンク先がhttp:などのローカルファイルでない場合は、常に"URI"アクションとなります。 axf:action-type="auto" のとき、 相対アドレス指定の外部リンクは、PDF出力の設定use-launch-for-relative-uri によって、「ファイルを開く」、「World Wide Web リンク」のいずれかで動作するようにPDFへ変換されます。 絶対アドレス指定の外部リンクは、常に「World Wide Web リンク」に変換されます。

axf:destination-type

リンクでの宛先形式を指定します。これは、リンク先でのPDFの宛先形式です。

Value: <string>
Initial: empty string
Applies to: block level formatting object
Inherited: no
Percentages: N/A

宛先形式には次の種類があります。指定のないときは axf:destination-type="xyz-top" とみなされます。値の大文字小文字の違いは無視されます。

PDFの宛先形式 指定方法
[page /XYZ left top zoom] left/top の値は、XSL Formatter V3.4 が計算しますが、nullか非nullかを明示することができます。zoom は利用者が任意値を指定できます。
axf:destination-type="xyz" left と top を null とします。
axf:destination-type="xyz-left" top を null とします。
axf:destination-type="xyz-top" left を null とします。
axf:destination-type="xyz-left-top"
zoom は、指定しなければ null です。指定するときは、次のように%値を指定します。
axf:destination-type="xyz-top 75"
数字だけの指定は xyz-top が指定されたとみなされます。
axf:destination-type="75"
[page /Fit]
axf:destination-type="fit"
[page /FitH top] top の値は、XSL Formatter V3.4 が計算します。内部リンクでの指定のみ有効です。
axf:destination-type="fith"
[page /FitV left] left の値は、XSL Formatter V3.4 が計算します。
axf:destination-type="fitv"
[page /FitR left bottom right top] left/bottom/right/top の値は、XSL Formatter V3.4 が計算します。内部リンクでの指定のみ有効です。
axf:destination-type="fitr"
[page /FitB]
axf:destination-type="fitb"
[page /FitBH top] top の値は、XSL Formatter V3.4 が計算します。内部リンクでの指定のみ有効です。
axf:destination-type="fitbh"
[page /FitBV left] left の値は、XSL Formatter V3.4 が計算します。
axf:destination-type="fitbv"

axf:outline-external-destination

しおりに外部リンクを設定します。

Value: <uri-specification>
Initial: empty string
Applies to: block-level formatting objects
Inherited: no
Percentages: N/A

値の意味は以下のとおりです。

<uri-specification>

リンク先のURIを指定します。

axf:outline-internal-destination

しおりに内部リンクを設定します。

Value: empty string | <idref> | <number-with-fragment>
Initial: empty string
Applies to: block-level formatting objects
Inherited: no
Percentages: N/A

値の意味は以下のとおりです。

<idref>

リンク先のIDを指定します。

<number-with-fragment>

リンク先のページ番号を指定します。 この文字列は、単純な数字列 (<number>) または、数字列とfragmentを#で繋げた次のような文字列です。

123#string

外部リンクでのID指定

外部リンクでIDを指定するとき、宛先形式は、リンク先のIDに付与されているものとします。URI中のパラメータは nameddest のみが有効です。 リンク先には、宛先形式を指定できます。

  • リンク元:
    <fo:basic-link external-destination="http://mydocs/doc.pdf#nameddest=Chapter6"
                   axf:action-type="gotor">
    
  • リンク先:
    <fo:block id="Chapter6" axf:destination-type="xxxx">
    

内部リンクでのID指定

内部リンクでIDを指定するとき、宛先形式は、外部リンクと同じくリンク先のIDに付与されているものとします。指定の仕方も外部リンクに対するものと同じです。

  • リンク元:
    <fo:basic-link internal-destination="Chapter6">
    
  • リンク先:
    <fo:block id="Chapter6" axf:destination-type="xxxx">
    

外部リンクでのページ番号指定

ページ番号指定は、URI中のパラメータ page で判断します。page と nameddest が共に指定されているときは、nameddest が優先されます。
ページ番号指定では、リンク先に宛先情報を置くことはできません。したがって、URI中のパラメータを解釈して宛先形式を決定します。解釈できないパラメータは捨てられます。

<fo:basic-link external-destination="http://mydocs/doc.pdf#page=72&amp;view=fitH,100"
               axf:action-type="gotor">

URIのパラメータに page も nameddest も含まれないときは、page=1 とみなされます。ページ番号は、PDFでの物理的なものと解釈されます。

内部リンクでのページ番号指定

internal-destination の値にページ番号も指定できるように拡張してあります。

<fo:basic-link internal-destination="72">

宛先形式の指定は、外部リンクURIのパラメータ部分を付加することで実現します。

<fo:basic-link internal-destination="72#view=fitH,100">

ページ番号は、PDFでの物理的なものと解釈されます。また、ページ番号だけの指定のときの宛先形式は view=fit とみなされます。

外部リンクのしおり

しおりに外部リンクを指定するには、次のように axf:outline-external-destination プロパティを指定します。

<fo:block axf:outline-level="1"
          axf:outline-title="第6章"
          axf:outline-external-destination="http://mydocs/doc.pdf#nameddest=Chapter6"
          axf:action-type="gotor"
          show-destination="new">

このとき、このしおりはそれが付いている fo:block などのブロックとは無関係となります。

内部リンクのしおり

しおりに内部リンクを指定するには、次のように axf:outline-internal-destination プロパティを指定します。

<fo:block axf:outline-level="1"
          axf:outline-title="第6章"
          axf:outline-internal-destination="Chapter6">

このとき、このしおりはそれが付いている fo:block などのブロックとは無関係となります。

注意事項

  • internal-destination と external-destination はいずれか一方のみを指定してください。
  • 多分冊出力のとき、内部リンクで指定されていたリンクが、外部リンクになることがあります。このとき、リンクの動作は、axf:action-type="gotor" とみなされます。

PDF出力における注釈

XSL Formatter V3.4 では、PDFへ注釈を付けることができます。 注釈の詳細は、「PDFリファレンスマニュアル」を参照してください。ここで指定できる注釈は、その一部です。

axf:annotation-type

注釈の種類を指定します。

Value: <string>
Initial: empty string
Applies to: all block-level and inline-level formatting objects
Inherited: no
Percentages: N/A

注釈の種類は、次のいずれかを指定することができます。

  • 空文字列

    注釈はありません。

  • "Text"

    テキスト注釈です。

  • "FreeText"

    フリーテキスト注釈です。

  • "Stamp"

    ラバースタンプ注釈です。

  • "FileAttachment"

    ファイル添付注釈です。

文字列の大文字小文字は区別されません。

axf:annotation-title

注釈のタイトルを指定します。

Value: <string>
Initial: empty string
Applies to: all block-level and inline-level formatting objects
Inherited: no
Percentages: N/A

axf:annotation-contents

注釈の内容を指定します。

Value: <string>
Initial: empty string
Applies to: all block-level and inline-level formatting objects
Inherited: no
Percentages: N/A

注釈の種類 (axf:annotation-type) が次のいずれかのときに表示される文字列を指定します。

  • "Text"
  • "FreeText"
  • "Stamp"
  • "FileAttachment"

axf:annotation-color

注釈の背景などに利用される色を指定します。

Value: <color> | none
Initial: none
Applies to: all block-level and inline-level formatting objects
Inherited: no
Percentages: N/A

axf:annotation-flags

注釈のフラグを指定します。

Value: <string>
Initial: empty string
Applies to: all block-level and inline-level formatting objects
Inherited: no
Percentages: N/A

以下の文字列を空白区切りで列挙して指定します。大文字小文字の区別はありません。

  • Invisible
  • Hidden
  • Print
  • NoZoom
  • NoRotate
  • NoView
  • ReadOnly
  • Locked
  • ToggleNoView

これらの意味については、「PDFリファレンスマニュアル」を参照してください。

axf:annotation-open

注釈の最初の状態を指定します。

Value: true | false
Initial: false
Applies to: all block-level and inline-level formatting objects
Inherited: no
Percentages: N/A

注釈の種類 (axf:annotation-type) が次のとき、その注釈が最初に開いた状態で表示されるかどうかを指定します。

  • "Text"

値の意味は以下のとおりです。

true

注釈を開いた状態で表示します。

false

注釈を閉じた状態で表示します。

axf:annotation-icon-name

注釈の表示に用いるアイコンの名前を指定します。

Value: <string>
Initial: empty string
Applies to: all block-level and inline-level formatting objects
Inherited: no
Percentages: N/A

注釈の表示に用いるアイコンの名前には、任意のものを指定できますが、それを表示できるかどうかは文書のビューアアプリケーションに依存します。 注釈の種類 (axf:annotation-type) によって指定できる標準の名前を示します。

  • "Text"

    標準の名前は以下のとおりです。

    • "Comment"
    • "Help"
    • "Insert"
    • "Key"
    • "NewParagraph"
    • "Note"
    • "Paragraph"

    空文字列の場合は "Note" とみなされます。

  • "Stamp"

    標準の名前は以下のとおりです。

    • "Approved"
    • "AsIs"
    • "Confidential"
    • "Departmental"
    • "Draft"
    • "Experimental"
    • "Expired"
    • "Final"
    • "ForComment"
    • "ForPublicRelease"
    • "NotApproved"
    • "NotForPublicRelease"
    • "Sold"
    • "TopSecret"

    空文字列の場合は "Draft" とみなされます。

  • "FileAttachment"

    標準の名前は以下のとおりです。

    • "Graph"
    • "Paperclip"
    • "PushPin"
    • "Tag"

    空文字列の場合は "PushPin" とみなされます。

axf:annotation-position-horizontal

注釈の水平位置を指定します。

Value: <length>
Initial: 0pt
Applies to: all block-level and inline-level formatting objects
Inherited: no
Percentages: N/A

指定する位置は領域の左端からの距離で、ポップアップやアイコンの位置、ラバースタンプ注釈の位置に利用されます。

axf:annotation-position-vertical

注釈の垂直位置を指定します。

Value: <length>
Initial: 0pt
Applies to: all block-level and inline-level formatting objects
Inherited: no
Percentages: N/A

指定する位置は領域の上端からの距離で、ポップアップやアイコンの位置、ラバースタンプ注釈の位置に利用されます。

axf:annotation-width

注釈の幅を指定します。

Value: <length> | auto
Initial: auto
Applies to: all block-level and inline-level formatting objects
Inherited: no
Percentages: N/A

このプロパティは、ポップアップの幅、ラバースタンプ注釈の幅に利用されます。

axf:annotation-height

注釈の高さを指定します。

Value: <length> | auto
Initial: auto
Applies to: all block-level and inline-level formatting objects
Inherited: no
Percentages: N/A

このプロパティは、ポップアップの高さ、ラバースタンプ注釈の高さに利用されます。

axf:annotation-font-family

フリーテキスト注釈のフォントファミリを指定します。

Value: <string>
Initial: depends on user agent
Applies to: all block-level and inline-level formatting objects
Inherited: no
Percentages: N/A

axf:annotation-font-size

フリーテキスト注釈のフォントのサイズを指定します。

Value: <absolute-size> | <relative-size> | <length> | <percentage>
Initial: depends on user agent
Applies to: all block-level and inline-level formatting objects
Inherited: no
Percentages: refer to the font size

axf:annotation-font-weight

フリーテキスト注釈のフォントの太さを指定します。

Value: normal | bold
Initial: normal
Applies to: all block-level and inline-level formatting objects
Inherited: no
Percentages: N/A

axf:annotation-font-style

フリーテキスト注釈のフォントを斜体にするかどうか指定します。

Value: normal | italic
Initial: normal
Applies to: all block-level and inline-level formatting objects
Inherited: no
Percentages: N/A

axf:annotation-text-color

フリーテキスト注釈の色を指定します。

Value: <color>
Initial: depends on user agent
Applies to: all block-level and inline-level formatting objects
Inherited: no
Percentages: N/A

axf:annotation-text-align

フリーテキスト注釈の配置を指定します。

Value: left | center | right
Initial: left
Applies to: all block-level and inline-level formatting objects
Inherited: no
Percentages: N/A

axf:annotation-file-attachment

ファイル添付注釈の関連付けられるファイルを指定します。

Value: <uri-specification>
Initial: empty string
Applies to: all block-level and inline-level formatting objects
Inherited: no
Percentages: N/A


トンボ

XSL Formatter V3.4 は、トンボを描くことができます。トンボは、page-width、page-height プロパティで指定される通常のページサイズ(仕上がり寸法)の外側に描画されるので、文書内容に影響はありません。 トンボの長さは、デフォルトでは10mmですが、オプション設定ファイルで調整することができます。

Printer Marks

axf:crop-offset
axf:crop-offset-top
axf:crop-offset-bottom
axf:crop-offset-left
axf:crop-offset-right

出力媒体の物理的な端から仕上がり寸法までの距離を指定します。

Value: <length>
Initial: 0pt
Applies to: fo:simple-page-master
Inherited: no
Percentages: N/A

仕上がり寸法は page-width、page-height プロパティによって指定される寸法です。 crop-offset はその外側にどれだけの余白をとるかを指定するものです。 上下左右に同じ値を指定するには axf:crop-offset を、個別の値を指定するには axf:crop-offset-top、axf:crop-offset-bottom、axf:crop-offset-left、axf:crop-offset-right を使用します。 axf:crop-offset と他を同時に指定したときは、axf:crop-offset-* の方が優先します。

axf:bleed
axf:bleed-top
axf:bleed-bottom
axf:bleed-left
axf:bleed-right

裁ち落としのための塗り足し(bleed)の領域の幅を指定します。

Value: <length>
Initial: 0pt
Applies to: fo:simple-page-master
Inherited: no
Percentages: N/A

塗り足し領域は、仕上がり寸法の外側に取られます。 上下左右に同じ値を指定するには axf:bleed を、個別の値を指定するには axf:bleed-top、axf:bleed-bottom、axf:bleed-left、axf:bleed-right を使用します。 axf:bleed と他を同時に指定したときは、axf:bleed-* の方が優先します。

axf:printer-marks

トンボなどの印刷マーク類を指定します。

Value: [ crop || cross || <uri-specification> [<uri-specification>]* ] | none
Initial: none
Applies to: fo:simple-page-master
Inherited: no
Percentages: N/A

値の意味は以下のとおりです。

crop

コーナートンボ(crop marks)を出力します。

cross

センタートンボ(cross marks、registration marks)を出力します。

<uri-specification>

SVGなどの画像を指定することにより、独自のトンボやカラーバーなどを出力することができます。URIは複数指定することができます。

コーナートンボは、axf:bleed の指定がある場合には、内トンボ(crop marks)と外トンボ(bleed marks)をあわせたものになります。 また、トンボは常にレジストレーションカラーで出力されます。他の色を利用したい場合は、SVGなどを利用してください。

axf:printer-marks-line-width

トンボの線の幅を指定します。

Value: <length> | auto
Initial: auto
Applies to: fo:simple-page-master
Inherited: no
Percentages: N/A

値がautoのときは、システム規定値に依存します。 その値は 0.2pt です。


ページ番号の制御

ページ番号を制御するために、XSL Formatter V3.4 は拡張プロパティを用意しています。

axf:suppress-duplicate-page-number

重複ページ番号参照の除去を指定します。

Value: true | false
Initial: false
Applies to: all formatting objects
Inherited: yes
Percentages: N/A

一般的な索引の組版をする場合、1つの索引項目には複数の fo:page-number-citation が連続します。このような場合に、標準のプロパティでは fo:page-number-citation が同じページ番号を参照していると、ページ番号が重複して出力されてしまいます。 true を指定すると、前の fo:page-number-citation と同じページ番号を参照しているとき、間の要素(カンマなど)と共にそのページ番号は非表示になります。

例を示します。

axf:suppress-duplicate-page-number を使用しない場合。

<fo:block text-align-last="justify">
 <fo:block>bcd
  <fo:leader lender-pattern="dots"/>
  <fo:basic-link internal-destination="ID1">
   <fo:page-number-citation ref-id="ID1"/>
  </fo:basic-link>
 <fo:/block>
 <fo:block>index
  <fo:leader lender-pattern="dots"/>
  <fo:basic-link internal-destination="ID2">
   <fo:page-number-citation ref-id="ID2"/>,
  </fo:basic-link>
  <fo:basic-link internal-destination="ID3">
   <fo:page-number-citation ref-id="ID3"/>,
  </fo:basic-link>
  <fo:basic-link internal-destination="ID4">
   <fo:page-number-citation ref-id="ID4"/>,
  </fo:basic-link>
  <fo:basic-link internal-destination="ID5">
   <fo:page-number-citation ref-id="ID5"/>,
  </fo:basic-link>
  <fo:basic-link internal-destination="ID6">
   <fo:page-number-citation ref-id="ID6"/>,
  </fo:basic-link>
  <fo:basic-link internal-destination="ID7">
   <fo:page-number-citation ref-id="ID7"/>,
  </fo:basic-link>
 </fo:block>
</fo:block>

フォーマットの結果。

Formatted result

axf:suppress-duplicate-page-number を使用した場合。

<fo:block text-align-last="justify" axf:suppress-duplicate-page-number="true">
 <fo:block>bcd
  <fo:leader lender-pattern="dots"/>
  <fo:basic-link internal-destination="ID1">
   <fo:page-number-citation ref-id="ID1"/>
  </fo:basic-link>
 <fo:/block>
 <fo:block>index
  <fo:leader lender-pattern="dots"/>
  <fo:basic-link internal-destination="ID2">
   <fo:page-number-citation ref-id="ID2"/>,
  </fo:basic-link>
  <fo:basic-link internal-destination="ID3">
   <fo:page-number-citation ref-id="ID3"/>,
  </fo:basic-link>
  <fo:basic-link internal-destination="ID4">
   <fo:page-number-citation ref-id="ID4"/>,
  </fo:basic-link>
  <fo:basic-link internal-destination="ID5">
   <fo:page-number-citation ref-id="ID5"/>,
  </fo:basic-link>
  <fo:basic-link internal-destination="ID6">
   <fo:page-number-citation ref-id="ID6"/>,
  </fo:basic-link>
  <fo:basic-link internal-destination="ID7">
   <fo:page-number-citation ref-id="ID7"/>,
  </fo:basic-link>
 </fo:block>
</fo:block>

フォーマットの結果。

Formatted result

axf:page-number-prefix

ページ番号の前置文字列を指定します。

Value: <string>
Initial: empty string
Applies to: fo:page-sequence
Inherited: no
Percentages: N/A

指定した文字列が fo:page-number、fo:page-number-citation でページ番号の前に出力されます。 また、この文字列はPDFでのページラベルにも利用されます。

<fo:page-sequence axf:page-number-prefix="A-" format="i" initial-page-number="10">
  <fo:static-content ...>
   ...<fo:page-number/>...
  </fo:static-content>
  ...
</fo:page-sequence>

axf:page-number-prefix の値に、アラビア語やヘブライ語などを指定することはできません。

axf:physical-page-number

物理的なページ番号を得ます。

Value: true | false | inherit
Initial: false
Applies to: fo:page-number, fo:page-number-citation
Inherited: no
Percentages: N/A

initial-page-number の値を無視して、page-sequence にもよらない物理的なページ番号を得ます。総ページ数を得るには、最後のページにIDを付け、次のようにします。

<fo:page-number-citation ref-id="lastpage" axf:physical-page-number="true"/>

axf:origin-id

ページ番号の基点を指定します。

Value: <idref>
Initial: none
Applies to: fo:page-number-citation
Inherited: no
Percentages: N/A

fo:page-number-citation で、ページ番号の基点となるIDを指定します。出力されるページ番号は、

[ref-id のページ] - [origin-id のページ] + 1

です。ref-id よりも後のページが指定されたときは 0 となります。

axf:assumed-page-number

ページ番号の予想値を指定します。

Value: <number>
Initial: N/A
Applies to: all formatting objects
Inherited: yes
Percentages: N/A

<fo:page-number-citation> が出現したときに、その参照先が未解決のことがあります。そのとき、<fo:page-number-citation> の評価では、最初に仮の領域を確保しておき、ページ番号が確定したときに正しい内容に調整されます。このとき、領域のサイズが変化することがあるため、組版結果が望ましくないことがあります。 例えば、領域が狭くなると不要な改行があるように見え、領域が広くなると文字がはみ出す、というような症状が現れます。 axf:assumed-page-number では、そのときの予想ページ番号を与えます。

XSL Formatter V3.4 は、少なくとも3桁のページ番号の領域を見込んで仮組版を行います。 明らかにそれよりも少ない場合は、axf:assumed-page-number="99" などを指定すればよいでしょう。

axf:assumed-page-number-prefix

ページ番号の前置文字列の予想値を指定します。

Value: <string>
Initial: N/A
Applies to: all formatting objects
Inherited: yes
Percentages: N/A

<fo:page-number-citation> が出現したときに、その参照先が未解決のことがあります。 そのとき、その参照先が同じ <fo:page-sequence> 内かどうかはこの時点で不明です。 異なる <fo:page-sequence> 内に参照先があるとき、その axf:page-number-prefix の値は異なる可能性があります。 そこで、最初に仮の領域を確保しておき、参照先が出現したときに正しい内容に調整されます。 このとき確保する仮の領域は、現在の <fo:page-sequence> に axf:page-number-prefix が指定してあればそれが仮定され、そうでなければ適当な短い文字列が仮定されます。 したがって、実際の領域のサイズが変化することがあるため、組版結果が望ましくないことがあります。 例えば、領域が狭くなると不要な改行があるように見え、領域が広くなると文字がはみ出す、というような症状が現れます。 axf:assumed-page-number-prefix は、仮に確保するときの領域の文字列を指定します。

axf:page-number-prefix が空の場合でも、仮組版時にはそれが空かどうかわからないので、ある程度の領域を確保してしまいます。これを抑止するためには、axf:assumed-page-number-prefix="''" を適当な要素に指定しておきます。 このとき、領域が確保されないため、axf:page-number-prefix の指定は無視されます。

axf:number-type

ページ番号を出力するのか段番号を出力するのかを指定します。

Value: page | column | page-and-column
Initial: page
Applies to: fo:page-number, fo:page-number-citation
Inherited: no
Percentages: N/A

値の意味は以下のとおりです。

page

ページ番号を出力します。

column

段番号を出力します。

page-and-column

ページ番号と段番号を出力します。

fo:page-number などに指定し、ページ番号の代わりに段番号を出力することができます。 ページ番号の書式には、formatプロパティ が適用されますが、段番号の書式には、axf:column-number-formatプロパティが適用されます。 column-count="1" や span="all" で段組でないとき、段番号は出力されません。

axf:column-number-format

段番号のための書式を指定します。

Value: <string>
Initial: A
Applies to: fo:page-sequence
Inherited: no
Percentages: N/A

axf:number-typeプロパティで段番号を出力するとき、その書式として採用されます。指定の方法は formatプロパティ と同様です。


Base URI の指定

相対指定のURIのベースとなる位置を指定します。
axf:base-uri の値は、ドキュメント内のすべての相対URIに適用されます。例えば、fo:basic-link を記述してリンクを作成するときに相対URIを指定した場合、axf:base-uri で指定された位置をベースURIとして解釈します。

axf:base-uri

Value: <uri-specification>
Initial: empty string
Applies to: all formatting objects
Inherited: yes
Percentages: N/A

次の例の場合、"http://www.antennahouse.co.jp/xsl-info/Thai/THAI-BangKokNationalMuseum.pdf" がリンク先となります。

<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"
         xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions"
         axf:base-uri="http://www.antennahouse.co.jp/xsl-info/">
                  :
                  :
<fo:basic-link external-destination="Thai/THAI-BangKokNationalMuseum.pdf">
    ...
</fo:basic-link>

SOFT HYPHEN のグリフの出力

通常、SOFT HYPHEN (U+00AD) は、行分割しなかったときは表示せず、行分割した場合は表示されます。しかし、この処理では、絵文字のようなフォントを使用した場合、U+00AD に割り当てられたグリフが印字されない場合が発生してしまいます。

XSL Formatter V3.4 は、拡張プロパティ axf:soft-hyphen-treatment を実装しています。これを使用することで、この問題を回避することができます。

<fo:block axf:soft-hyphen-treatment="preserve" font-family="Wingdings">abc&#xAD;xyz

axf:soft-hyphen-treatment

Value: auto | preserve | inherit
Initial: auto
Applies to: all formatting objects
Inherited: yes
Percentages: N/A

値の意味は以下のとおりです。

auto

SOFT HYPHEN はそこで改行が生じたとき以外は削除されます。(従来通り)

preserve

SOFT HYPHEN は削除されず、対応するグリフが出力されます。


行分割処理の制御

行分割処理を制御するために、XSL Formatter V3.4 は拡張プロパティを用意しています。 通常、行分割は UAX#14: Line Breaking Properties に従います。

axf:line-break

行分割の方法を指定します。

Value: normal | strict | inherit
Initial: normal
Applies to: all block-level and inline-level formatting objects
Inherited: yes
Percentages: N/A

値の意味は以下のとおりです。

normal

日本語で、Nonstarter文字のうち、JIS X 4051 での行頭禁則和字と、他の小書きのかな(U+3095、U+3096、U+31F0~U+31FF)の禁則処理をしません。 また、 axf:append-non-starter-charactersaxf:except-non-starter-charactersaxf:append-non-end-of-line-charactersaxf:except-non-end-of-line-characters の指定は無視されます。

strict

日本語で、Nonstarter文字を禁則処理します。 また、 axf:append-non-starter-charactersaxf:except-non-starter-charactersaxf:append-non-end-of-line-charactersaxf:except-non-end-of-line-characters で指定された文字も考慮されます。

LineBreak-4.0.0.txt でのNonstarter文字は以下のとおりです。 [JIS] は、JIS X 4051 で行頭禁則和字に分類されるものです。

0E5A;NS # THAI CHARACTER ANGKHANKHU                         ๚
0E5B;NS # THAI CHARACTER KHOMUT                             ๛
17D4;NS # KHMER SIGN KHAN                                   ។
17D6;NS # KHMER SIGN CAMNUC PII KUUH                        ៖
17D7;NS # KHMER SIGN LEK TOO                                ៗ
17D8;NS # KHMER SIGN BEYYAL                                 ៘
17D9;NS # KHMER SIGN PHNAEK MUAN                            ៙
17DA;NS # KHMER SIGN KOOMUUT                                ៚
203C;NS # DOUBLE EXCLAMATION MARK                           ‼
3005;NS # IDEOGRAPHIC ITERATION MARK                        々    [JIS]
301C;NS # WAVE DASH                                         〜
303B;NS # VERTICAL IDEOGRAPHIC ITERATION MARK               〻
303C;NS # MASU MARK                                         〼
3041;NS # HIRAGANA LETTER SMALL A                           ぁ    [JIS]
3043;NS # HIRAGANA LETTER SMALL I                           ぃ    [JIS]
3045;NS # HIRAGANA LETTER SMALL U                           ぅ    [JIS]
3047;NS # HIRAGANA LETTER SMALL E                           ぇ    [JIS]
3049;NS # HIRAGANA LETTER SMALL O                           ぉ    [JIS]
3063;NS # HIRAGANA LETTER SMALL TU                          っ    [JIS]
3083;NS # HIRAGANA LETTER SMALL YA                          ゃ    [JIS]
3085;NS # HIRAGANA LETTER SMALL YU                          ゅ    [JIS]
3087;NS # HIRAGANA LETTER SMALL YO                          ょ    [JIS]
308E;NS # HIRAGANA LETTER SMALL WA                          ゎ    [JIS]
3095;NS # HIRAGANA LETTER SMALL KA                          ゕ
3096;NS # HIRAGANA LETTER SMALL KE                          ゖ
309B;NS # KATAKANA-HIRAGANA VOICED SOUND MARK               ゛
309C;NS # KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK          ゜
309D;NS # HIRAGANA ITERATION MARK                           ゝ    [JIS]
309E;NS # HIRAGANA VOICED ITERATION MARK                    ゞ    [JIS]
30A0;NS # KATAKANA-HIRAGANA DOUBLE HYPHEN                   ゠
30A1;NS # KATAKANA LETTER SMALL A                           ァ    [JIS]
30A3;NS # KATAKANA LETTER SMALL I                           ィ    [JIS]
30A5;NS # KATAKANA LETTER SMALL U                           ゥ    [JIS]
30A7;NS # KATAKANA LETTER SMALL E                           ェ    [JIS]
30A9;NS # KATAKANA LETTER SMALL O                           ォ    [JIS]
30C3;NS # KATAKANA LETTER SMALL TU                          ッ    [JIS]
30E3;NS # KATAKANA LETTER SMALL YA                          ャ    [JIS]
30E5;NS # KATAKANA LETTER SMALL YU                          ュ    [JIS]
30E7;NS # KATAKANA LETTER SMALL YO                          ョ    [JIS]
30EE;NS # KATAKANA LETTER SMALL WA                          ヮ    [JIS]
30F5;NS # KATAKANA LETTER SMALL KA                          ヵ    [JIS]
30F6;NS # KATAKANA LETTER SMALL KE                          ヶ    [JIS]
30FB;NS # KATAKANA MIDDLE DOT                               ・
30FC;NS # KATAKANA-HIRAGANA PROLONGED SOUND MARK            ー    [JIS]
30FD;NS # KATAKANA ITERATION MARK                           ヽ    [JIS]
30FE;NS # KATAKANA VOICED ITERATION MARK                    ヾ    [JIS]
31F0;NS # KATAKANA LETTER SMALL KU                          ㇰ
31F1;NS # KATAKANA LETTER SMALL SI                          ㇱ
31F2;NS # KATAKANA LETTER SMALL SU                          ㇲ
31F3;NS # KATAKANA LETTER SMALL TO                          ㇳ
31F4;NS # KATAKANA LETTER SMALL NU                          ㇴ
31F5;NS # KATAKANA LETTER SMALL HA                          ㇵ
31F6;NS # KATAKANA LETTER SMALL HI                          ㇶ
31F7;NS # KATAKANA LETTER SMALL HU                          ㇷ
31F8;NS # KATAKANA LETTER SMALL HE                          ㇸ
31F9;NS # KATAKANA LETTER SMALL HO                          ㇹ
31FA;NS # KATAKANA LETTER SMALL MU                          ㇺ
31FB;NS # KATAKANA LETTER SMALL RA                          ㇻ
31FC;NS # KATAKANA LETTER SMALL RI                          ㇼ
31FD;NS # KATAKANA LETTER SMALL RU                          ㇽ
31FE;NS # KATAKANA LETTER SMALL RE                          ㇾ
31FF;NS # KATAKANA LETTER SMALL RO                          ㇿ
FE54;NS # SMALL SEMICOLON                                   ﹔
FE55;NS # SMALL COLON                                       ﹕
FF1A;NS # FULLWIDTH COLON                                   :
FF1B;NS # FULLWIDTH SEMICOLON                               ;
FF65;NS # HALFWIDTH KATAKANA MIDDLE DOT                     ・
FF67;NS # HALFWIDTH KATAKANA LETTER SMALL A                 ァ    [JIS]
FF68;NS # HALFWIDTH KATAKANA LETTER SMALL I                 ィ    [JIS]
FF69;NS # HALFWIDTH KATAKANA LETTER SMALL U                 ゥ    [JIS]
FF6A;NS # HALFWIDTH KATAKANA LETTER SMALL E                 ェ    [JIS]
FF6B;NS # HALFWIDTH KATAKANA LETTER SMALL O                 ォ    [JIS]
FF6C;NS # HALFWIDTH KATAKANA LETTER SMALL YA                ャ    [JIS]
FF6D;NS # HALFWIDTH KATAKANA LETTER SMALL YU                ュ    [JIS]
FF6E;NS # HALFWIDTH KATAKANA LETTER SMALL YO                ョ    [JIS]
FF6F;NS # HALFWIDTH KATAKANA LETTER SMALL TU                ッ    [JIS]
FF70;NS # HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK  ー    [JIS]
FF9E;NS # HALFWIDTH KATAKANA VOICED SOUND MARK              ゙
FF9F;NS # HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK         ゚

axf:append-non-starter-characters

CJKでの追加行頭禁則文字を指定します。

Value: <string>
Initial: empty string
Applies to: fo:page-sequence
Inherited: no
Percentages: N/A

<string> に含まれる文字が axf:line-break="strict" のときの行頭禁則対象に追加されます。 同一タグ内で axf:except-non-starter-characters に指定されている文字と同じ文字を指定した場合の効果は保証されません。 空白や、もともと行頭禁則される閉じ括弧類や句読点などを指定しても無視されます。 行頭禁則文字は、オプション設定ファイルの append-non-starter-characters で初期値を設定しておくことができます。

axf:except-non-starter-characters

CJKでの除外行頭禁則文字を指定します。

Value: <string>
Initial: empty string
Applies to: fo:page-sequence
Inherited: no
Percentages: N/A

<string> に含まれる文字が axf:line-break="strict" のときの行頭禁則対象から除外されます。 同一タグ内で axf:append-non-starter-characters に指定されている文字と同じ文字を指定した場合の効果は保証されません。 空白や、もともと行頭禁則される閉じ括弧類や句読点などを指定しても無視されます。 行頭禁則文字は、オプション設定ファイルの append-non-starter-characters で初期値を設定しておくことができます。

axf:append-non-end-of-line-characters

CJKでの追加行末禁則文字を指定します。

Value: <string>
Initial: empty string
Applies to: fo:page-sequence
Inherited: no
Percentages: N/A

<string> に含まれる文字が axf:line-break="strict" のときの行末禁則対象に追加されます。 同一タグ内で axf:except-non-end-of-line-characters に指定されている文字と同じ文字を指定した場合の効果は保証されません。 空白や、もともと行末禁則される開き括弧類などを指定しても無視されます。 行末禁則文字は、オプション設定ファイルの append-non-end-of-line-characters で初期値を設定しておくことができます。

axf:except-non-end-of-line-characters

CJKでの除外行末禁則文字を指定します。

Value: <string>
Initial: empty string
Applies to: fo:page-sequence
Inherited: no
Percentages: N/A

<string> に含まれる文字が axf:line-break="strict" のときの行末禁則対象から除外されます。 同一タグ内で axf:append-non-end-of-line-characters に指定されている文字と同じ文字を指定した場合の効果は保証されません。 空白や、もともと行末禁則される開き括弧類などを指定しても無視されます。 行末禁則文字は、オプション設定ファイルの append-non-end-of-line-characters で初期値を設定しておくことができます。

axf:word-break

単語の途中でも行分割可能にするかどうかを指定します。

Value: normal | break-all
Initial: normal
Applies to: all block-level and inline-level formatting objects
Inherited: yes
Percentages: N/A

値の意味は以下のとおりです。

normal

通常の行分割規則に従います。

break-all

単語間のすべての文字間で行分割可能にします。この指定は、scriptが次のときにのみ有効です。

  • Latn
  • Cyrl
  • Grek
  • Zyyy

詰めとぶら下げ

詰めやぶら下げを行うために、XSL Formatter V3.4 は拡張プロパティを用意しています。

axf:punctuation-trim

日本語で、行頭、行末の全角約物を半角扱いにするかどうかを指定します。

Value: none | start | end | both | auto | inherit
Initial: auto
Applies to: all block-level and inline-level formatting objects
Inherited: yes
Percentages: N/A

値の意味は以下のとおりです。

none

行頭行末の全角約物詰めを処理しません。

start

行頭での全角約物(開き括弧など)を半角に扱います。

end

行末での全角約物(閉じ括弧など)を半角に扱います。

both

行頭と行末での全角約物を半角に扱います。

auto

システムの既定値に依存します。

全角約物の詰め処理を行うかどうかは、オプション設定ファイルの punctuation-trim で初期値を設定しておくことができます。 また、GUIの 組版オプション設定ダイアログ でも設定することができます。

axf:kerning-mode

カーニング(詰め処理)を行うかどうかを指定します。

Value: none | contextual | auto | inherit
Initial: auto
Applies to: all block-level and inline-level formatting objects
Inherited: yes
Percentages: N/A

値の意味は以下のとおりです。

none

カーニングを処理しません。

contextual

日本語での全角約物と全角文字の間の詰めを処理します。処理されるのは以下の間隔です。

  • 全角閉じ括弧と全角開き括弧の間
  • 全角閉じ括弧と全角閉じ括弧の間
  • 全角閉じ括弧と全角中点類の間
  • 全角閉じ括弧と非約物の間
  • 全角開き括弧と全角開き括弧の間
  • 全角中点類と全角開き括弧の間
  • 非約物と全角開き括弧の間

全角句読点は全角閉じ括弧と同様に扱われます。
全角括弧と非約物の間は、axf:kerning-mode="contextual" を指定しただけでは詰まりません。axf:punctuation-spacing の値をデフォルトより小さく指定すれば詰めることができます。

auto

システムの既定値に依存します。

axf:kerning-mode="contextual" で処理される全角開き括弧は以下のとおりです。

2018;QU # LEFT SINGLE QUOTATION MARK                        ‘
201C;QU # LEFT DOUBLE QUOTATION MARK                        “
3008;OP # LEFT ANGLE BRACKET                                〈
300A;OP # LEFT DOUBLE ANGLE BRACKET                         《
300C;OP # LEFT CORNER BRACKET                               「
300E;OP # LEFT WHITE CORNER BRACKET                         『
3010;OP # LEFT BLACK LENTICULAR BRACKET                     【
3014;OP # LEFT TORTOISE SHELL BRACKET                       〔
3016;OP # LEFT WHITE LENTICULAR BRACKET                     〖
3018;OP # LEFT WHITE TORTOISE SHELL BRACKET                 〘
301A;OP # LEFT WHITE SQUARE BRACKET                         〚
301D;OP # REVERSED DOUBLE PRIME QUOTATION MARK              〝
FF08;OP # FULLWIDTH LEFT PARENTHESIS                        (
FF3B;OP # FULLWIDTH LEFT SQUARE BRACKET                     [
FF5B;OP # FULLWIDTH LEFT CURLY BRACKET                      {
FF5F;OP # FULLWIDTH LEFT WHITE PARENTHESIS                  ⦅

axf:kerning-mode="contextual" で処理される全角閉じ括弧は以下のとおりです。

2019;QU # RIGHT SINGLE QUOTATION MARK                       ’
201D;QU # RIGHT DOUBLE QUOTATION MARK                       ”
3009;CL # RIGHT ANGLE BRACKET                               〉
300B;CL # RIGHT DOUBLE ANGLE BRACKET                        》
300D;CL # RIGHT CORNER BRACKET                              」
300F;CL # RIGHT WHITE CORNER BRACKET                        』
3011;CL # RIGHT BLACK LENTICULAR BRACKET                    】
3015;CL # RIGHT TORTOISE SHELL BRACKET                      〕
3017;CL # RIGHT WHITE LENTICULAR BRACKET                    〗
3019;CL # RIGHT WHITE TORTOISE SHELL BRACKET                〙
301B;CL # RIGHT WHITE SQUARE BRACKET                        〛
FF09;CL # FULLWIDTH RIGHT PARENTHESIS                       )
FF3D;CL # FULLWIDTH RIGHT SQUARE BRACKET                    ]
FF5D;CL # FULLWIDTH RIGHT CURLY BRACKET                     }
FF60;CL # FULLWIDTH RIGHT WHITE PARENTHESIS                 ⦆

axf:kerning-mode="contextual" で処理される全角句読点は以下のとおりです。

3001;CL # IDEOGRAPHIC COMMA                                 、
3002;CL # IDEOGRAPHIC FULL STOP                             。
FF0C;CL # FULLWIDTH COMMA                                   ,
FF0E;CL # FULLWIDTH FULL STOP                               .

axf:kerning-mode="contextual" で処理される全角中点類は以下のとおりです。

30FB;NS # KATAKANA MIDDLE DOT                               ・
FF1A;NS # FULLWIDTH COLON                                   :
FF1B;NS # FULLWIDTH SEMICOLON                               ;

全角約物の詰め処理を行うかどうかは、オプション設定ファイルの punctuation-trim で初期値を設定しておくことができます。 また、GUIの 組版オプション設定ダイアログ でも設定することができます。

axf:punctuation-spacing

日本語で、全角約物と全角文字の間の詰めの間隔を指定します。

Value: <length> | <percentage> | inherit
Initial: 50%
Applies to: all block-level and inline-level formatting objects
Inherited: yes
Percentages: refer to the font size

この間隔は、axf:kerning-mode="contextual" で利用されます。 この間隔は、オプション設定ファイルの punctuation-spacing で初期値を設定しておくことができます。

axf:hanging-punctuation

日本語で、句読点のぶら下げを行うかどうかを指定します。

Value: none | end | inherit
Initial: none
Applies to: fo:block
Inherited: yes
Percentages: N/A

値の意味は以下のとおりです。

none

ぶら下げを処理しない。

end

行末の句読点のぶら下げを処理する。

処理される句読点は、全角の「。、.,」のみです。

axf:avoid-widow-words

段落の最後の行が1語(CJKのときは1文字)だけにならないようにします。 V3.4

Value: true | false
Initial: false
Applies to: fo:block
Inherited: yes
Percentages: N/A

値の意味は以下のとおりです。

true

追い込み(和文の文字間や欧文の単語間の詰め)で処理できるときに、段落の最後の行が1語(CJKのときは1文字)だけにならないようにします。

false

追い込み処理をしません。

段の幅(行の長さ)が短いときには、追い込む余地が少ないのであまり効果がありません。


和欧文間スペース

和欧文間に空きを入れるために、XSL Formatter V3.4 は拡張プロパティを用意しています。

axf:text-autospace

日本語で、和欧文間に空きを入れるかどうかを指定します。

Value: none | [ ideograph-numeric || ideograph-alpha ] | auto | inherit
Initial: auto
Applies to: all block-level and inline-level formatting objects
Inherited: yes
Percentages: N/A

値の意味は以下のとおりです。

none

空きを入れません。

ideograph-numeric

仮名漢字-数字間に空きを入れます。

ideograph-alpha

仮名漢字-アルファベット間に空きを入れます。

auto

システムの既定値に依存します。

空白を入れるかどうかは、オプション設定ファイルの text-autospace で初期値を設定しておくことができます。 また、GUIの 組版オプション設定ダイアログ でも設定することができます。

axf:text-autospace-width

日本語で、和欧文間の空きの量を指定します。

Value: <length> | <percentage> | inherit
Initial: 25%
Applies to: all block-level and inline-level formatting objects
Inherited: yes
Percentages: refer to the font size

この間隔は、axf:text-autospace で利用されます。 また、オプション設定ファイルの text-autospace-width で初期値を設定しておくことができます。


縦書きの下線

縦書きでの下線(傍線)をどちら側に付けるかを指定するために、XSL Formatter V3.4 は拡張プロパティを用意しています。

axf:vertical-underline-side

縦書きでの下線(傍線)をどちら側に付けるかを指定します。

Value: left | right | auto | inherit
Initial: auto
Applies to: all block-level and inline-level formatting objects
Inherited: yes
Percentages: N/A

値の意味は以下のとおりです。

left

左側に下線(傍線)を引きます。

right

右側に下線(傍線)を引きます。

auto

システムの既定値に依存します。

下線の位置は、オプション設定ファイルの vertical-underline-side で初期値を設定しておくことができます。 また、GUIの 組版オプション設定ダイアログ でも設定することができます。

axf:vertical-underline-side="auto" で、システムの既定値も自動のときは、languageプロパティでの言語が日本語(ja)または韓国語(ko)のときは右側に、その他の言語では左側に配置されます。languageプロパティの指定がないときは、標準のCJK言語 の設定によります。


NON-BREAKING SPACE の均等割り付け

通常、NON-BREAKING SPACE (U+00A0) は、均等割り付けの対象となります。axf:justify-nbsp プロパティは、U+00A0 を均等割り付けの対象から除外したいときに指定します。また、V2.5では、U+00A0 は均等割り付けの対象ではありませんでした。V2.5と互換にしたいときにも指定することができます。

axf:justify-nbsp

Value: true | false | inherit
Initial: true
Applies to: all formatting objects
Inherited: yes
Percentages: N/A

値の意味は以下のとおりです。

true

NON-BREAKING SPACE を均等割り付けの対象とします。

false

NON-BREAKING SPACE を均等割り付けの対象としません。


Kashida の割り合い

axf:text-kashida-space

アラビア語の均等割り付けで、Kashidaの割り合いを指定します。

Value: <percentage> | auto
Initial: auto
Applies to: all block-level and inline-level formatting objects
Inherited: yes
Percentages: yes

値の意味は以下のとおりです。

<percentage>

空白とKashidaの割り合いを表します。0% ならKashida拡張はなく、通常の均等割り付けと同じように空白のみが拡張されます。100%なら可能な限り Kashidaが挿入されます。値は、0%~100% の間でなければなりません。

auto

システムの既定値に依存します。

この割り合いは、オプション設定ファイルの text-kashida-space で初期値を設定しておくことができます。


脚注

XSL Formatter V3.4 では、脚注を段ごとに配置したり、同一ページ中の重複した脚注を削除したりすることができます。 また、傍注を作成することもできます。

axf:footnote-align

脚注の配置を指定します。

Value: auto | before | after
Initial: auto
Applies to: fo:region-body, fo:footnote
Inherited: no
Percentages: N/A

値の意味は以下のとおりです。

auto

自動で配置。脚注は通常の配置。傍注は本文が一段組の場合、アンカー位置に揃えて配置、二段組以上の場合、before側に寄せて配置

before

傍注を before 側に寄せて配置。 傍注ではない通常の脚注のときは、ページ内文字列の直後に配置。

after

傍注を after 側に寄せて配置。 傍注ではない通常の脚注のときは、ページの最後に配置。

脚注または傍注の配置の方法を指定します。傍注(axf:footnote-position により region-start あるいは region-end 内への配置が指定されている脚注)の場合、自動で配置するか、before側に寄せるか、after側に寄せるかを指定することができます。

axf:footnote-stacking

脚注の配置の方法を指定します。

Value: block | inline
Initial: block
Applies to: fo:region-body, fo:footnote
Inherited: no
Percentages: N/A

値の意味は以下のとおりです。

block

脚注をblock方向に並べて配置します。

inline

脚注をinline方向に並べて配置します。

axf:footnote-position

脚注を配置する場所を指定します。

Value: page | start | end | inside | outside | column
Initial: page
Applies to: fo:region-body, fo:footnote
Inherited: no
Percentages: N/A

値の意味は以下のとおりです。

page

各ページの region-body 内の after 側に配置。XSL 1.0 仕様の標準の脚注。

start

各ページの region-start 内に配置。縦組みでの頭注。横組みでの左側の傍注。

end

各ページの region-end 内に配置。縦組みでの脚注。横組みでの右側の傍注。

inside

偶数ページの region-end 内、奇数ページの region-start 内に配置。横組みでのノド寄りの傍注。

outside

偶数ページの region-start 内、奇数ページの region-end 内に配置。横組みでの標準的な傍注(左右量ページの小口寄り)。

column

各段の after 側に配置。横組みでの標準的な脚注。

region-start あるいは region-end 内に脚注を配置することが可能です(この注を傍注と呼びます)。 fo:region-body に指定する他、個別の fo:footnote への指定も有効です。これにより何種類かの注を混在させることが可能です。

傍注には次の制約があります。

  • 指定された領域に収まらない場合は、領域をオーバーフローします。
  • xsl-footnote-separator は無効です。

axf:suppress-duplicate-footnote

同一ページ内の同一の脚注を削除するかどうかを指定します。

Value: true | false | inherit
Initial: false
Applies to: fo:footnote
Inherited: yes
Percentages: N/A

同一ページ内の複数の場所に同一の脚注を割り当てたとき、同一脚注領域にそれらが重複して表示されるのを抑止します。


改訂バー

文書の一部に改訂バーを付けることができます。 改訂バーは、ボーダーや段間罫よりも上に表示されます。

Revision Bar Model

axf:revision-bar-color

改訂バーの色を指定します。

Value: <color> | inherit
Initial: the value of the 'color' property
Applies to: all block-level and inline-level formatting objects which are descendants of fo:flow
Inherited: yes
Percentages: N/A

axf:revision-bar-offset

改訂バーの表示オフセットを指定します。

Value: <length> | inherit
Initial: 0pt
Applies to: all block-level and inline-level formatting objects which are descendants of fo:flow
Inherited: yes
Percentages: N/A

axf:revision-bar-position

改訂バーの表示位置を指定します。

Value: start | end | inside | outside | alternate | both | inherit
Initial: start
Applies to: all block-level and inline-level formatting objects which are descendants of fo:flow
Inherited: yes
Percentages: N/A

値の意味は以下のとおりです。

start

改訂バーを start 側に配置します。

end

改訂バーを end 側に配置します。

inside

奇数ページでは start 側に、偶数ページでは end 側に配置します。

outside

奇数ページでは end 側に、偶数ページでは start 側に配置します。

alternate

段組のとき、最終段では改訂バーを end 側に、それ以外では start 側に配置します。

both

改訂バーを start 側と end 側に配置します。

axf:revision-bar-style

改訂バーのスタイルを指定します。

Value: <border-style> | inherit
Initial: none
Applies to: all block-level and inline-level formatting objects which are descendants of fo:flow
Inherited: yes
Percentages: N/A

axf:revision-bar-width

改訂バーの幅を指定します。

Value: <border-width> | inherit
Initial: medium
Applies to: all block-level and inline-level formatting objects which are descendants of fo:flow
Inherited: yes
Percentages: N/A


行番号

文章の一部に行番号を振ることができます。 行番号は、行領域に対して振られます。見た目が空であっても、そこに行領域があれば振られます。マージンやスペースに対しては振られません。 また、fo:float や fo:footnote 内では無効です。

注意: fo:block-containerやfo:tableなどで複雑に組まれたページに対して行番号を振ろうとしても、意図しない結果になることがあります。行番号は、なるべく単純な構造の文書へ応用してください。

axf:line-number

行番号を表示するかどうかを指定します。 V3.4

Value: none | show | hide
Initial: none
Applies to: all block-level formatting objects which are descendants of fo:flow
Inherited: yes
Percentages: N/A

値の意味は以下のとおりです。

none

行番号を振りません。

show

行番号を振ります。

hide

行番号を振りません。しかし、行数だけはカウントされます。

行番号は、axf:line-number="show" または axf:line-number="hide" が指定されたブロック内の行に対してカウントされます。

axf:line-number-background-color

行番号の背景色を指定します。 V3.4

Value: <color> | transparent
Initial: transparent
Applies to: all block-level formatting objects which are descendants of fo:flow
Inherited: yes
Percentages: N/A

axf:line-number-display-align

行番号の配置を指定します。 V3.4

Value: before | center | after | auto | inherit
Initial: auto
Applies to: all block-level formatting objects which are descendants of fo:flow
Inherited: yes
Percentages: N/A

値の意味は以下のとおりです。

before

行領域の上端に行番号を揃えます。

center

行領域の中心に行番号を揃えます。

after

行領域の下端に行番号を揃えます。

auto

横書きでは after と、縦書きでは center とみなされます。

axf:line-number-color

行番号の文字列の色を指定します。 V3.4

Value: <color> | inherit
Initial: the value of the 'color' property
Applies to: all block-level formatting objects which are descendants of fo:flow
Inherited: yes
Percentages: N/A

axf:line-number-font-family

行番号のフォントファミリを指定します。 V3.4

Value: [[<family-name> | <generic-family>],]* [<family-name> | <generic-family>] | inherit
Initial: depends on UA
Applies to: all block-level formatting objects which are descendants of fo:flow
Inherited: yes
Percentages: N/A

axf:line-number-font-size

行番号のフォントサイズを指定します。 V3.4

Value: <absolute-size> | <relative-size> | <length> | <percentage> | inherit
Initial: medium
Applies to: all block-level formatting objects which are descendants of fo:flow
Inherited: yes
Percentages: refer to the font size

axf:line-number-font-style

行番号を斜体にするかどうかを指定します。 V3.4

Value: normal | italic | inherit
Initial: normal
Applies to: all block-level formatting objects which are descendants of fo:flow
Inherited: yes
Percentages: N/A

axf:line-number-font-weight

行番号のフォントの太さを指定します。 V3.4

Value: normal | bold | bolder | lighter | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | inherit
Initial: normal
Applies to: all block-level formatting objects which are descendants of fo:flow
Inherited: yes
Percentages: N/A

axf:line-number-format

行番号のための書式を指定します。 V3.4

Value: <string>
Initial: 1
Applies to: fo:page-sequence
Inherited: no
Percentages: N/A

行番号を出力するとき、その書式として採用されます。 指定の方法は formatプロパティ と同様です。

axf:line-number-initial

最初の行の行番号を指定します。 V3.4

Value: <number> | auto
Initial: auto
Applies to: fo:page-sequence
Inherited: no
Percentages: N/A

値の意味は以下のとおりです。

auto

行番号を初期化せず、前の fo:page-sequence から引き継がれます。前の fo:page-sequence が存在しないときは 1 となります。

<number>

行番号を初期化します。

axf:line-number-interval

出力する行番号の間隔を指定します。 V3.4

Value: <number> | auto
Initial: auto
Applies to: fo:page-sequence
Inherited: no
Percentages: N/A

値の意味は以下のとおりです。

auto

前の fo:page-sequence の指定が引き継がれます。前の fo:page-sequence が存在しないときは 1 となります。

<number>

行番号の間隔を指定された値に設定します。

例えば、5、10、15 というように行番号を出力したいときに指定します。この場合、 axf:line-number-initial="1" axf:line-number-start="5" axf:line-number-interval="5" という指定をします。

axf:line-number-offset

行番号の表示オフセットを指定します。 V3.4

Value: <length> | inherit
Initial: 0pt
Applies to: all block-level formatting objects which are descendants of fo:flow
Inherited: yes
Percentages: N/A

axf:line-number-position

行番号の表示位置を指定します。 V3.4

Value: start | end | inside | outside | alternate | inherit
Initial: start
Applies to: all block-level formatting objects which are descendants of fo:flow
Inherited: yes
Percentages: N/A

値の意味は以下のとおりです。

start

行番号を start 側に配置します。

end

行番号を end 側に配置します。

inside

奇数ページでは start 側に、偶数ページでは end 側に配置します。

outside

奇数ページでは end 側に、偶数ページでは start 側に配置します。

alternate

段組のとき、最終段では行番号を end 側に、それ以外では start 側に配置します。

axf:line-number-reset

行番号のリセットを指示します。 V3.4

Value: auto | none | page | column
Initial: auto
Applies to: fo:page-sequence
Inherited: no
Percentages: N/A

値の意味は以下のとおりです。

auto

前の fo:page-sequence の指定が引き継がれます。前の fo:page-sequence が存在しないときは none となります。

none

行番号をリセットしません。

page

改ページが起こったときに行番号をリセットします。

column

改段が起こったときも行番号をリセットします。

行番号は、axf:line-number-initial で指定されている値にリセットされます。

axf:line-number-start

出力を開始する行番号を指定します。 V3.4

Value: <number> | auto
Initial: auto
Applies to: fo:page-sequence
Inherited: no
Percentages: N/A

値の意味は以下のとおりです。

auto

前の fo:page-sequence の指定が引き継がれます。前の fo:page-sequence が存在しないときは 1 となります。

<number>

出力を開始する行番号を指定された値に設定します。

行番号がここで指定された値以上のときに行番号が出力されます。 axf:line-number-initial="1" axf:line-number-start="5" という指定だと、最初の4行は出力されず、5行目から出力されます。 axf:line-number-initial="5" axf:line-number-start="6" という指定だと、最初の行は出力されず、その次の行が6として出力されます。

axf:line-number-text-decoration

行番号の文字列の修飾を指定します。 V3.4

Value: same as text-decoration
Initial: none
Applies to: all block-level formatting objects which are descendants of fo:flow
Inherited: yes
Percentages: N/A

値の意味は text-decoration と同じです。


ブロックの段組

ブロック内を段組にすることができます。各拡張プロパティは fo:block-container に指定できます。

axf:column-count

fo:block-container に対する段数を指定します。

Value: <number> | inherit
Initial: 1
Applies to: fo:block-container
Inherited: no
Percentages: N/A

axf:column-gap

fo:block-container に対する段間の幅を指定します。

Value: <length> | <percentage> | inherit
Initial: 12.0pt
Applies to: fo:block-container
Inherited: refer to width of the fo:block-container
Percentages: N/A


段間罫

段間に罫線を引きます。各拡張プロパティは fo:region-body、fo:block-container に指定できます。 段間罫は、ボーダーの上、改訂バーの下に表示されます。

Column Model

axf:column-rule-align

段間罫の位置を指定します。

Value: before | center | after | inherit
Initial: center
Applies to: fo:region-body, fo:block-container
Inherited: no
Percentages: N/A

axf:column-rule-color

段間罫の色を指定します。

Value: <color> | inherit
Initial: the value of the 'color' property
Applies to: fo:region-body, fo:block-container
Inherited: no
Percentages: N/A

axf:column-rule-length

段間罫の長さを指定します。

Value: <length> | <percentage>| inherit
Initial: 100%
Applies to: fo:region-body, fo:block-container
Inherited: no
Percentages: refer to the size of the column

axf:column-rule-style

段間罫のスタイルを指定します。

Value: <border-style> | inherit
Initial: none
Applies to: fo:region-body, fo:block-container
Inherited: no
Percentages: N/A

axf:column-rule-width

段間罫の幅を指定します。

Value: <border-width> | inherit
Initial: medium
Applies to: fo:region-body, fo:block-container
Inherited: no
Percentages: N/A


対角罫

テーブルセルなど、ボーダーを指定できる領域に斜めに対角罫を引きます。 axf:diagonal-border-* による対角罫は、領域の before-start側頂点と after-end側頂点を結ぶ線、 axf:reverse-diagonal-border-* による対角罫は、領域の before-end側頂点と after-start側頂点を結ぶ線となります。 writing-mode="lr-tb" の場合、対角罫は次のようになります。writing-mode="rl-tb" や "tb-rl" では逆になります。

Diagonal Border

axf:diagonal-border-color

対角罫の色を指定します。

Value: <color> | inherit
Initial: the value of the 'color' property
Applies to: all FOs which can have borders
Inherited: yes
Percentages: N/A

axf:diagonal-border-style

対角罫のスタイルを指定します。

Value: <border-style> | inherit
Initial: none
Applies to: all FOs which can have borders
Inherited: no
Percentages: N/A

axf:diagonal-border-width

対角罫の幅を指定します。

Value: <border-width> | inherit
Initial: medium
Applies to: all FOs which can have borders
Inherited: yes
Percentages: N/A

axf:reverse-diagonal-border-color

逆対角罫の色を指定します。

Value: <color> | inherit
Initial: the value of the 'color' property
Applies to: all FOs which can have borders
Inherited: yes
Percentages: N/A

axf:reverse-diagonal-border-style

逆対角罫のスタイルを指定します。

Value: <border-style> | inherit
Initial: none
Applies to: all FOs which can have borders
Inherited: no
Percentages: N/A

axf:reverse-diagonal-border-width

逆対角罫の幅を指定します。

Value: <border-width> | inherit
Initial: medium
Applies to: all FOs which can have borders
Inherited: yes
Percentages: N/A


ボーダー

axf:border-radius
axf:border-top-left-radius
axf:border-top-right-radius
axf:border-bottom-left-radius
axf:border-bottom-right-radius

丸め罫の径を指定します。

Border Radius

Value: <length> <length>?
Initial: 0
Applies to: all FOs which can have borders
Inherited: no
Percentages: N/A

最初の値は、水平方向の径(writing-modeがverticalのときは垂直方向)となります。 二番目の値は、もう一方の径となります。省略されたときは最初の値と同じとみなされます。 どちらかの径がゼロ以下のときは丸められません。

axf:box-shadow

ボックスシャドウを指定します。

Value: none | [ <length> <length> <length>? || <color> ]
Initial: none
Applies to: all FOs which can have borders
Inherited: no
Percentages: N/A

3つの<length>と<color>の意味は次のとおりです。

  • 最初の<length>は、水平方向の影のオフセットです。正の値のとき領域の右側に、負の値のとき左側の影となります。
  • 2番目の<length>は、垂直方向の影のオフセットです。正の値のとき領域の下側に、負の値のとき上側の影となります。
  • 3番目の<length>は、非負の値でなければならず、ぼかしの量を指定します。0ならぼかしはありません。XSL Formatter V3.4 ではこの値は無視され、常に0とみなされます。
  • <color>で影の色を指定します。


ページ背景

ページに対する背景を指定します。各拡張プロパティは fo:simple-page-master に指定できます。

axf:background-color

fo:simple-page-master に対する背景色を指定します。

Value: <color> | transparent
Initial: transparent
Applies to: fo:simple-page-master
Inherited: no
Percentages: N/A

axf:background-image

fo:simple-page-master に対する背景画像を指定します。

Value: <uri-specification> | none
Initial: none
Applies to: fo:simple-page-master
Inherited: no
Percentages: N/A

axf:background-position-horizontal

fo:simple-page-master に対する背景画像の水平位置を指定します。

Value: <percentage> | <length> | left | center | right | inherit
Initial: 0%
Applies to: fo:simple-page-master
Inherited: no
Percentages: refer to the size of the padding-rectangle

axf:background-position-vertical

fo:simple-page-master に対する背景画像の垂直位置を指定します。

Value: <percentage> | <length> | top | center | bottom | inherit
Initial: 0%
Applies to: fo:simple-page-master
Inherited: no
Percentages: refer to the size of the padding-rectangle

axf:background-repeat

fo:simple-page-master に対する背景画像の繰り返し方法を指定します。

Value: repeat | repeat-x | repeat-y | no-repeat | inherit
Initial: repeat
Applies to: fo:simple-page-master
Inherited: no
Percentages: N/A


オーバーフローの拡張

XSL Formatter V3.4 では、overflowプロパティの値を拡張しており、その値の動作を規定するための拡張プロパティを用意しています。

axf:overflow-condense

オーバフローしたテキストを領域内にどのように詰め込むかを指定します。

Value: [ letter-spacing || font-stretch || font-size || line-height ] | auto | inherit
Initial: auto
Applies to: all block-level formatting objects
Inherited: yes
Percentages: N/A

値の意味は以下のとおりです。

letter-spacing

文字間を調整して詰めます。

font-stretch

フォントの幅を調整して詰めます。

font-size

フォントサイズを調整して詰めます。

line-height

行の高さを調整して詰めます。

auto

システムの既定値に依存します。

overflow="condense" のとき、このプロパティで指定されている方法で領域内への詰め込みを行います。 詰め込むための調整に、文字の進行方向に関するものと、行の進行方向に関するものが混在しています。システムは、指定された方法に関して適当と思われる方法を組み合わせて処理を行うでしょう。

axf:overflow-replace

オーバフローしたテキストに対する代替文字列を指定します。

Value: <string>
Initial: システムの既定値に依存
Applies to: all block-level formatting objects
Inherited: yes
Percentages: N/A

overflow="replace" のとき、オーバフローしたテキストをこのプロパティで指定されている文字列の繰り返しで置き換えます。


関数の拡張

XSL Formatter V3.4 では、いくつかのFO関数を拡張しています。

rgb-icc

rgb-icc関数が受け付ける引数の書式は以下のとおりです。#から始まる識別名の大文字小文字は無視されます。これら#から始まる識別子を使った書式は、XSL Formatter V3.4 の拡張仕様です。

  • rgb-icc(#Grayscale,<Scale>)

    グレイスケールを指定します。<Scale> で濃さを指定します。

  • rgb-icc(<R>,<G>,<B>,#CMYK,<C>,<M>,<Y>,<K>)
  • rgb-icc(#CMYK,<C>,<M>,<Y>,<K>)

    CMYKを指定します。 RGBを省略したときは、CMYKから計算されます。

  • rgb-icc(<R>,<G>,<B>,#Separation,<Name>,<Tint>,<C>,<M>,<Y>,<K>)
  • rgb-icc(<R>,<G>,<B>,#Separation,<Name>,<Tint>)
  • rgb-icc(<R>,<G>,<B>,#Separation,<Name>)
  • rgb-icc(#Separation,<Name>,<Tint>,<C>,<M>,<Y>,<K>)

    セパレーションカラー(スポットカラー)を指定します。 <Name> には使用するインクの名前を指定します。例えば "PANTONE 131 PC" のように指定します。 <Tint> には色調を指定します。<Tint> を省略したときは 1.0とみなされます。 RGBまたはCMYKの指定が必要です。RGBを省略したときは、CMYKから計算されます。

  • rgb-icc(#Separation,<Name>,<Tint>)
  • rgb-icc(#Separation,<Name>)

    XSL Formatter PANTONE®オプションをご購入いただけば、1000以上のPANTONE®カラーの色名に対して、自動的にRGBやCMYKへの変換を行うことができるようになります。 例えば、FO中へは、

    rgb-icc(#Separation, 'PANTONE 131 PC')

    のように指定するだけです。

  • rgb-icc(<R>,<G>,<B>,#Registration,<Tint>)
  • rgb-icc(<R>,<G>,<B>,#Registration)

    レジストレーションカラーを指定します。 <Tint> には色調を指定します。<Tint> を省略したときは 1.0とみなされます。 レジストレーションカラーは、すべての色版に出力される登録商標などに利用します。 レジストレーションカラーは、#Separation の <Name> に "All" を指定することでも表現できます。

引数はそれぞれ次の値をとります。

  • <R>,<G>,<B> = %値、または 0~255
  • <C>,<M>,<Y>,<K> = %値、または 0.0~1.0
  • <Scale> = %値、または 0.0(黒)~1.0(白)
  • <Tint> = %値、または 0.0(明)~1.0(暗)

値の拡張

XSL Formatter V3.4 では、いくつかのFOプロパティの値を拡張しています。

clear

以下の太字の値が拡張されます。

Value: start | end | left | right | inside | outside | both | none | inherit

値の意味は以下のとおりです。

inside

奇数ページでは start と、偶数ページでは end とみなされます。

outside

奇数ページでは end と、偶数ページでは start とみなされます。

float

以下の太字の値が拡張されます。

Value: before | start | end | left | right | inside | outside | none | inherit

値の意味は以下のとおりです。

inside

奇数ページでは start 側に、偶数ページでは end 側に配置されます。

outside

奇数ページでは end 側に、偶数ページでは start 側に配置されます。

font-stretch

以下の太字の値が拡張されます。

Value: normal | wider | narrower | ultra-condensed | extra-condensed | condensed | semi-condensed | semi-expanded | expanded | extra-expanded | ultra-expanded | <percentage> | <number> | inherit

値の意味は以下のとおりです。

<percentage>

フォントの幅に対する割り合いを指定します。

<number>

<percentage> / 100 と等価です。

force-page-count

以下の太字の値が拡張されます。

Value: auto | even | doubly-even | odd | end-on-even | end-on-doubly-even | end-on-odd | doubly-even-document | no-force | inherit

値の意味は以下のとおりです。

doubly-even

指定されたpage-sequenceのページ数を強制的に4の倍数にします。

end-on-doubly-even

指定されたpage-sequenceの最後のページ番号を強制的に4の倍数にします。

doubly-even-document

文書先頭から数えたページ数を強制的に4の倍数にします。

format

formatプロパティでのフォーマットトークンは、XSLT 1.0で規定されるものといくつかの拡張をサポートします。 axf:column-number-format も同様です。

  • 1

    通常の十進数表現を生成します。01、001 などとして最低文字数を指定することができます。フォーマットトークンには、以下の数字を指定することができます。

    0123456789 U+0030, U+0031,... DIGIT
    ٠١٢٣٤٥٦٧٨٩ U+0660, U+0661,... ARABIC-INDIC DIGIT
    ۰۱۲۳۴۵۶۷۸۹ U+06F0, U+06F1,... EXTENDED ARABIC-INDIC DIGIT
    ०१२३४५६७८९ U+0966, U+0967,... DEVANAGARI DIGIT
    ০১২৩৪৫৬৭৮৯ U+09E6, U+09E7,... BENGALI DIGIT
    ੦੧੨੩੪੫੬੭੮੯ U+0A66, U+0A67,... GURMUKHI DIGIT
    ૦૧૨૩૪૫૬૭૮૯ U+0AE6, U+0AE7,... GUJARATI DIGIT
    ୦୧୨୩୪୫୬୭୮୯ U+0B66, U+0B67,... ORIYA DIGIT
    ౦౧౨౩౪౫౬౭౮౯ U+0C66, U+0C67,... TELUGU DIGIT
    ೦೧೨೩೪೫೬೭೮೯ U+0CE6, U+0CE7,... KANNADA DIGIT
    ൦൧൨൩൪൫൬൭൮൯ U+0D66, U+0D67,... MALAYALAM DIGIT
    ๐๑๒๓๔๕๖๗๘๙ U+0E50, U+0E51,... THAI DIGIT
    ໐໑໒໓໔໕໖໗໘໙ U+0ED0, U+0ED1,... LAO DIGIT
    ༠༡༢༣༤༥༦༧༨༩ U+0F20, U+0F21,... TIBETAN DIGIT
    ၀၁၂၃၄၅၆၇၈၉ U+1040, U+1041,... MYANMAR DIGIT
    ០១២៣៤៥៦៧៨៩ U+17E0, U+17E1,... KHMER DIGIT
    ᠐᠑᠒᠓᠔᠕᠖᠗᠘᠙ U+1810, U+1811,... MONGOLIAN DIGIT
    0123456789 U+FF10, U+FF11,... FULLWIDTH DIGIT
    〇一二三四五六七八九 U+3007, U+4E00,... CJK 漢数字
  • A

    A B C ... Z AA AB AC ... という規則的表現を生成します。 languageプロパティの値によって、その言語のアルファベットが採用されますが、すべての言語に対応しているわけではありません。対応していない場合はlanguage="en"とみなされます。

  • a

    a b c ... z aa ab ac ... という規則的表現を生成します。 languageプロパティの値によって、その言語のアルファベットが採用されますが、すべての言語に対応しているわけではありません。対応していない場合はlanguage="en"とみなされます。

  • I

    I II III IV V VI VII VIII IX X ... という規則的表現を生成します。 数値が3999を超えるときは "1" として評価されます。

  • i

    i ii iii iv v vi vii viii ix x ... という規則的表現を生成します。 数値が3999を超えるときは "1" として評価されます。

  • あ い う え お ... わ を ん ああ あい ... という規則的表現を生成します。

  • ア イ ウ エ オ ... ワ ヲ ン アア アイ ... という規則的表現を生成します。

  • い ろ は に ほ ... ゑ ひ も せ す いい いろ ... という規則的表現を生成します。

  • イ ロ ハ ニ ホ ... ヱ ヒ モ セ ス イイ イロ ... という規則的表現を生成します。

  • 全角複数文字列

    以上のどの規則にも該当しない全角複数文字列は、それ自身で生成規則を表します。 例えば、"上中下" という文字列は、 上 中 下 上上 上中 上下 ... という規則的表現を生成します。

internal-destination

以下の太字の値が拡張されます。

Value: empty string | <idref> | <number-with-fragment>

値の意味は以下のとおりです。

<number-with-fragment>

PDFへの内部リンクのとき有効で、ページ番号を示します。 この文字列は、単純な数字列 (<number>) または、数字列とfragmentを#で繋げた次のような文字列です。

123#string

fragmentに関しては、リンクの作成を参照してください。

overflow

以下の太字の値が拡張されます。

Value: visible | hidden | scroll | replace | condense | error-if-overflow | auto | inherit

値の意味は以下のとおりです。

replace

axf:overflow-replace で指定されている文字列を、領域いっぱいに繰り返して埋めます。指定されている文字列が空なら空文字列に置き換えられます。元の文字列は捨てられます。

condense

あふれた文字列を領域内に詰め込みます。詰め込む方法は、axf:overflow-condense で指定されます。

これらの値は、fo:block-container または fo:inline-container にのみ適用されます。

page-position

以下の太字の値が拡張されます。

Value: only | first | last | rest | any | inherit

値の意味は以下のとおりです。

only

これが指定されたページマスタは、最初かつ最後のページのとき(1ページしかないとき)にのみ機能します。 (XSL 1.1)


Copyright © 1996-2010 Antenna House, Inc. All rights reserved.
Antenna House is a trademark of Antenna House, Inc.