Typstでスライドを作るためのパッケージは検索してみると五つ出てくる.あれ,この前調べたときは三つだったのが増えている.なお,一つはスライド用というよりは矢印を引くパッケージみたいなので直接は関係なさそう.
- polylux:多分一番歴史が長そう.ちなみにpolyluxというのは東ドイツでよく使われているOHPのブランド名だそうだ.なお,ドイツではプロジェクターを「beamer」と呼ぶらしい.なんだかこれを使わないとならない気がしてきたぞ.
- touyingはpolyluxのフォーク的なものなのかな? 別にpolyluxでよさそう.
- slydstは名前的によさそうなんだけど,画面の一部だけ後から表示するとか(beamerでの
\pause
)の機能がなさそう. - minideck:2024年7月1日releaseと最も新しい.まだ触っていませんけどぱっと見良さそう?
というわけでpolyluxを使ってみましょう.
準備
ともかく読み込む.日本語用の設定もしておきましょう.
#import "@preview/polylux:0.3.1": *
// 日本語設定.スライドなのでゴシックにしてみました.
#set text(
lang:"ja",
font: ("New Computer Modern", "Yu Gothic"),
)
ともかく使う
polyluxでスライドを作るには,polyluxの機能を使い自力で書くか,用意されているテーマを使うかの二通りの方法がある.(LaTeXのbeamerと違い)テーマを使うかどうかで中身の書き方も少し変わってくる.
まずはそのまま使ってみましょう.
// 紙サイズの設定.これで16:9となる.
//#set page(paper: "presentation-16-9")
// こちらは4:3.
// #set page(paper: "presentation-4-3")
// 直接指定してもよい
#set page(width: 30cm, height: 20cm)
#set text(size: 25pt)
// #polylux-slideの引数に各スライドの中身を書いていく
// 書き方は通常のTypstの書き方とあまり変わらない
#polylux-slide[
= 初めに
polyluxを使って書いています.
- 箇条書き
- 通常の使い方とあまり変わらない
]
中身の書き方は普通に書く時とあまり変わりません.
オーバーレイ
スライドを順番に出していくあれです.一番簡単なのはpause.
#polylux-slide[
一番シンプルなpause.
#pause
この部分はこのスライドの二枚目以降に出てくる.
#pause
この部分は三枚目以降
]
もうちょっと細かくしたいときは次のように.
#polylux-slide[
もう少し細かい制御はonlyとuncoverでできる.
onlyを使うと指定した枚数目だけ表示される.#only(2)[この部分は二枚目にだけ表示される.]それ以外ではなかったことにされるので,この部分の文章は二枚目以外では前に詰められる.
uncoverも同様.#uncover(2)[この部分は二枚目にだけ表示される.]onlyと違い,uncoverはそれ以外では見えないだけなので,この前には二枚目以外では空白が空く.#uncover(2, mode: "transparent")[この部分は二枚目以外では薄い灰色になる.]
何枚目かの指定はいろいろある.
- #uncover((3,6))[3,6枚目のみに表示される.]
- #uncover("1-2,4,6-8")[1,2,4,6,7,8枚目のみに表示される.]
]
ほかにも#uncover(beginning: 2, until: 4)[***]
とかもある.
文章の一部を変更していきたいときにはalternativesが便利.
#polylux-slide[
$A B C$が#alternatives[直角三角形][三角形]ならば#alternatives[$c^(2) =a^2 + b^2$][$c^(2) =a^2 + b^2 - 2a b cos C$]である.
// 中央寄せ
$A B C$が#alternatives(position: center)[直角三角形][三角形]ならば#alternatives(position: center)[$c^(2) =a^2 + b^2$][$c^(2) =a^2 + b^2 - 2a b cos C$]である.
// もっと細かく指定
$A B C$が#alternatives-match(position: center, ("1,3": [直角三角形],"2": [三角形]))ならば……
// 三枚目以降も最後のものを表示する.
$A B C$が#alternatives(repeat-last: true)[直角三角形][三角形]ならば#alternatives(repeat-last: true)[$c^(2) =a^2 + b^2$][$c^(2) =a^2 + b^2 - 2a b cos C$]である.
]
#uncover
との違いは,それ以外の部分に影響を与えないこと.複数の者の幅の最大値を計算してその分を確保してくれる.
ハンドアウト
スライドを印刷して配るときには邪魔になるのはいつも通り.
#enable-handout-mode(true)
これをファイルの頭の方に入れておけば#uncover
がなかったことになる.なお,#only
と#alternatives
は影響を受けない.
テーマ
テーマはimportで読み込む.今のところ,simple,clearn,metropolis,university,bipartiteがデフォルトで用意されている.simpleを使う場合は次のようにして読み込む.
#import themes.simple: *
テーマの設定は#show
を使ってやる.
#show: simple-theme.with(
aspect-ratio: "4-3", // 画面サイズを4:3に
footer: [my slide], // すべてのスライドの下に「my slide」と表示
background: blue, // 背景色を青
foreground: red, // 文字色を赤(ひどい配色……)
)
設定できる項目はテーマによって異なる.aspect-ratioはsimpleテーマの場合16-9か4-3しか設定できないみたい.
// タイトル用のページ
#title-slide[
= シンプルなスライド
あべのり
]
// 通常のスライド
#slide[
= シンプルなスライド
これはシンプルなスライドです.
#pause
pauseとかも利用可能.
]
// backgroundも指定可能.指定しなくてもよい.
#focus-slide(foreground: red)[
注目してほしいスライド
]
#title-slide
とか#slide
とか#focus-slide
はbipartiteテーマ以外では大体同様に使える.それ以外のコマンドが使えたりする.
bipartiteテーマは左右に別のものを出せるテーマ.
#import themes.bipartite: *
// タイトル用のページ
#title-slide(
title: [タイトル],
subtitle: [サブタイトル],
author: [著者],
date: [4月1日]
)
// 通常のスライド
#west-slide(title: [ページのタイトル])[
左にタイトル,右に中身.
]
#west-slide(title: [ページのタイトル])[
右にタイトル,左に中身.
]
#split-slide[
真ん中で別れる.
ここは左部分(右寄せになる)
][
右部分(左寄せ)
]
0 件のコメント:
コメントを投稿
コメントの追加にはサードパーティーCookieの許可が必要です