テーマについて

スライドの見た目はRDとは別に指定します。それがテーマです。

テーマのテスト用のスライドがsample/theme-bench.rabにあるので 活用してください。

置き場所

テーマはrubyの$LOAD_PATHから検索されます。新しくテーマを作成 した場合は$LOAD_PATHに含まれているパス/rabbit/theme/テーマ 名/テーマ名.rbあるいはソースがあるディレクトリ/テーマ 名.rbに置いてください。

書き方

テーマはRubyスクリプトです。難しいと思われるかもしれませんが, 凝ったことをしなければそれほど難しいことはありません。

テーマは以下のような記述を列挙していくことになると思います。

  1. 対象となるスライド中の要素(段落とか、ページタイトルと か)を選択
  2. 選択した要素に対して属性を変更したり、描画時の動作を加 えたりする。

例えば、各ページ(タイトルページは含まない)にあるタイトルの 文字の色を変更したい場合は以下のように書きます。

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_procadd_post_draw_procで指定できます。これらの手続きを削除 するときは、それぞれclear_pre_draw_procsclear_post_draw_procsを使います。

詳しくは。。。とりあえず,今のところはdefaultテーマを参考に してください。