テーマについて
スライドの見た目はRDとは別に指定します。それがテーマです。
テーマのテスト用のスライドがsample/theme-bench.rabにあるので 活用してください。
置き場所
テーマはrubyの$LOAD_PATHから検索されます。新しくテーマを作成 した場合は$LOAD_PATHに含まれているパス/rabbit/theme/テーマ 名/テーマ名.rbあるいはソースがあるディレクトリ/テーマ 名.rbに置いてください。
書き方
テーマはRubyスクリプトです。難しいと思われるかもしれませんが, 凝ったことをしなければそれほど難しいことはありません。
テーマは以下のような記述を列挙していくことになると思います。
- 対象となるスライド中の要素(段落とか、ページタイトルと か)を選択
- 選択した要素に対して属性を変更したり、描画時の動作を加 えたりする。
例えば、各ページ(タイトルページは含まない)にあるタイトルの 文字の色を変更したい場合は以下のように書きます。
match(Page, HeadLine) do |heads| heads.prop_set("foreground", "red") end
headsというように複数形になっているのは、headsは タイトル(見出し,head line)を0個以上含んでいるからです。
プロパティ
prop_set
では前景色(foreground)以外にも以下のものが指
定できます。詳しくはPango Text Attribute
Markup
を見てください。
- font_desc
- フォント情報を指定します。
- font_family
-
フォント名を指定します。
フォント名の一覧は
font_families
とやればフォント名の 配列として取得できます。 - face
- font_familyと同じです。
- size
-
フォントの大きさを指定します。
フォントの大きさを数値で指定する場合は、指定する数値を
screen_size
で変換してからPango::SCALE
を掛けて ください。例えば,フォントの大きさを(Rabbitのテーマの世 界の単位で)2にする場合は以下のようにします。screen_size(2) * Pango::SCALE
- style
- フォントのスタイルを指定します。
- weight
- フォントの重みを指定します。
- variant
- フォントのvariant(変形方法って感じ?)を指定します。
- stretch
- フォントの伸び縮みの具合を指定します。
- foreground
- 前景色を指定します。
- background
- 背景色を指定します。
- underline
- 下線の種類をします。
- rise
- 文字の上下の位置を指定します。
- strikethrough
- 取消線を引くかどうかを指定します。
- fallback
- 指定したフォントがなかった場合に似たようなフォントで代用 するかどうかを指定します。
- lang
- 言語を指定します。
- b
- 太字にします。
- big
- フォントのサイズを大きくします。
- i
- 斜体にします。
- s
- 取消線を引きます。
- sub
- 下付き文字にします。
- sup
- 上付き文字にします。
- small
- フォントのサイズを小さくします。
- tt
- 固定スペースフォントにします。
- u
- 下線を引きます。
フック
要素が描画される前、又は後に実行される手続きを指定することが
できます。それぞれ,add_pre_draw_proc
,
add_post_draw_proc
で指定できます。これらの手続きを削除
するときは、それぞれclear_pre_draw_procs
、
clear_post_draw_procs
を使います。
詳しくは。。。とりあえず,今のところはdefaultテーマを参考に してください。