« 2006年06月24日 | メイン | 2006年06月26日 »

2006年06月25日

XSL-FOによるXMLのPDF化 (17) XSL-FOの概要 6

(8) 一般的なマージン特性-行内
行内レベルの領域では、領域の前方(start)と後方(end)に空き量を指定できます。この場合の前方、後方というのは、横書きでは、それぞれ領域の左、右になります。
space-end
space-start

この空き量も、スペース指定子を使って最小値、最適値、最大値を指定します。

V1.1仕様書では次の4つの特性が追加されています。
margin-top
margin-bottom
margin-left
margin-right

但し、これは仕様書の書き方が変わっただけです。もともと margin-* はCSSでの指定方法です。これはXSL-FOでは、ブロックレベルの space-before, space-after, start-indent, end-indent とインラインレベルの space-start, space-end のどちらにも変換されるようになっていました。

(9) 一般的な相対位置決め特性
CSS2から引き継いだものです。V1.0ではひとつだけです。
relative-position

CSS2 では position プロパティだったのが、XSL では absolute-position プロパティと relative-position に分かれ、position プロパティは shorthand の扱いとなりました。

V1.1で次の4つの特性が追加になりました。
top
right
bottom
left

これもmargin-* と同様、仕様書の書き方が変わっただけで、内容は変わっていません。top、right、bottom、left プロパティは、absolute-position とrelative-position の両方で使われるものです。XSL 1.0 の仕様書の書き方では、両方にあてはまるものは一方にだけ記載されていたのが、XSL 1.1 では両方に記載されるようになりました。

(10) 領域配置特性
行内レベルのオブジェクトや表のセル、箇条書きの項目を行の上、下、各種のベースラインの位置などに対してどのように配置するかをきめ細かく指定するための特性です。
alignment-adjust
alignment-baseline
baseline-shift
display-align
dominant-baseline
relative-align

V1.0 とV1.1で変わっていません。

(11) 領域寸法特性
ブロックレベルの領域の大きさ、あるいは行内レベルの領域の大きさなどの寸法を指定するための特性です。V1.0では次の12項目が定義されています。
block-progression-dimension
content-height
content-width
height
inline-progression-dimension
max-height
max-width
min-height
min-width
scaling
scaling-method
width

CSSでは、height(高さ)、width(幅)しかありません。これに対して、XSL-FOでは、writing-modeで行と文字の進行方向の指定ができますので、height(高さ)、width(幅)の指定では不十分です。そこでブロックの進行方向の寸法(block-progression-dimension)、行内の進行方向の寸法(inline-progression-dimension)という指定方法を導入しています。例えば、widthは横書きではinline-progression-dimensionに対応しますが、縦書きではblock-progression-dimensionに対応します。

V1.1では、新しく、次の2項目が追加になりました。
allowed-height-scale
allowed-width-scale

これらは、グラフィックスを拡大縮小させるときの制約を指定するのに使います。

投票をお願いいたします

投稿者 koba : 09:30 | コメント (0) | トラックバック