LaTeX幻燈片提綱

【注】筆記來自《LaTeX入門》——劉海洋。更多細節內容可以參考官方用戶手冊。

texdoc beamer

1. 簡介

由於現代的 LaTeX 系統主要以 pdf 文件爲輸出方式,因此它可以用來生成各種專門的電子文檔,諸如書籍、文章、幻燈片等。

1.1 工具

LaTeX 中專門用來製作幻燈片的工具有很多,諸如:

  • beamer 文檔類
  • powerdot 文檔類
  • prosper 文檔類
  • pdfslide 宏包
  • ppower4 宏包
  • pdfscreen 宏包

1.2 beamer 文檔類

目前最流行的 LaTeX 幻燈片工具爲 beamer 文檔類,它以頁面(被稱爲「幀」)爲基本組織單位,提供豐富的功能選項和許多預定義的風格主題,支持各種編譯程序。因此,本文也使用 beamer 文檔類來製作幻燈片提綱。

2. 幻燈片提綱

2.1 代碼框架

使用 beamer 文檔類與編寫一般的 LaTeX 文檔的代碼框架是一樣的:

\documentclass{beamer}
\begin{document}
% ...
\end{document}

如果要在 beamer 文檔類中使用中文,則可以使用 ctexctexcap 宏包,前者只引入必要的中文,後者還會翻譯圖表等環境名稱。爲了方便起見,本文使用 ctexcap 宏包。

\usepackage[UTF8,noindent]{ctexcap}

【注】引入 ctexcap 宏包時使用 noindent 參數表示取消段前縮進,因爲與一般文檔不同,在幻燈片的段落中通常不使用首行縮進。

2.2 幻燈片風格

修改 beamer 幻燈片格式的基本方式是使用主題。beamer 提供了 20 多種不同的幻燈片風格,可以在導言區使用 \usetheme 命令自主選擇:

\usetheme{PaloAlto}

beamer 提供的官方預定義主題風格可參考此處,對於更多非官方預定義主題風格可參考此處

【注】有趣的是,beamer 文檔類提供的官方預定義主題風格大多是以作者遊歷的一些地點命名的。

實際上,beamer 的主題是由不同的內部主題、外部主題、色彩主題、字體主題等組合而成的,因此可以分別使用各自對應命令來選擇各自的主題:

  • \useinnertheme:選擇內部主題
  • \useoutertheme:選擇外部主題
  • \usecolortheme:選擇色彩主題
  • \usecolortheme:選擇字體主題

2.2.1 內部主題

內部主題主要控制的是標題頁、列表項目、定理環境、圖表環境、腳註等一幀以內的內容格式。預定義的內部主題有:

  • default
  • circles
  • rectangles
  • rounded
  • inmargin

2.2.2 外部主題

外部主題主要控制的是幻燈片頂部尾部的信息欄、邊欄、圖表、幀標題等一幀以外的內功格式。預定義的外部主題有:

  • default
  • infolines
  • miniframes
  • smoothbars
  • sidebar
  • split
  • shadow
  • tree
  • smoothtree

2.2.3 色彩主題

色彩主題控制各個部分的色彩。預定義的色彩主題有:

  • default
  • albatross
  • beaver
  • beetle
  • crane
  • dolphin
  • dove
  • fly
  • lily
  • orchid
  • rose
  • seagull
  • seahorse
  • sidebartab
  • structure
  • whale
  • wolverine

2.2.4 字體主題

字體主題則控制幻燈片的整體字體風格。預定義的字體主題有:

  • default:無襯線字體
  • professionalfonts:不對字體有特別的設置,需要使用另外專門的宏包進行設置
  • serif:襯線字體,此時最好選擇較大的字號和較粗的字體
  • structurebold
  • structureitalicserif
  • structuresmallcapsserif

【注】structure 開頭的幾個字體主題主要是對 beamer 文檔類中的幾個結構有特別設置。

2.2.5 自定義風格

beamer 使用一種模板機制,將幻燈片的不同內容組件格式抽象爲模板代碼、模板字體、模板色彩,模板代碼是實現組件的具體代碼。在 beamer 中,提供了許多自定義的設置命令讓用戶自定義幻燈片風格:

  • setbeamercolor:設置組件的色彩
  • setbeamerfont:設置組件字體
  • setbeamertemplate:設置組件模板的具體實現代碼

比如對於 itemize 列表,可以設置:

\setbeamertemplate{itemize items}[circle]
\setbeamercolor{itemize item}{fg=black}
\setbeamercolor{itemize/enumerate body}{fg=gray}
\setbeamerfont{itemize/enumerate body}{family=\rmfamily}

這樣就設置了列表項的符號是一個黑色的圓形,同時類標得內容是 \rmfamily 的灰色文字。

對於簡單的樣式修改通過組合現有的主題和背景插圖來完成,但對 beamer 進行更詳細的樣式定製時,字體、色彩、模板名目繁多,可能需要參考在安裝目錄下 theme/ 目錄中的模板源代碼。beamer 的每一個主題對應一個後綴爲 .sty 的主題文件,使用命令 \usetheme\useinnertheme 等切換主題,其實就是在載入主題文件。可以查看官方手冊,定製自己的主題文件:

texdoc beamer

2.3 幻燈片內容

2.3.1 幀

beamer 中,幀用 frame 環境得到。一幀裏面的內容可以使用各種常見的 LaTeX 命令和環境。在每一幀當中,內容有一定的水平邊距,並且整體垂直居中顯示。幻燈片每一幀通常都有標題,甚至還有小標題:

\begin{frame}
    \frametitle{標題}
    \framesubtitle{小標題}
    這是簡單的一幀
\end{frame}
% 標題和小標題還可以有下面更簡潔的方式
\begin{frame}{標題}{小標題}
    這是簡單的一幀
\end{frame}

beamer 重定義了大量 LaTeX 環境,使它們的格式更適合在幻燈片中顯示,比如列表環境和定理類環境,但它們的使用方式和一般的文檔沒有區別。

\begin{frame}
    \frametitle{古中國數學}
    \framesubtitle{定理髮現}
    中國在 3000 多年前就知道勾股數的概念,比古希臘更早一些。

    《周髀算經》的記載:
    \begin{itemize}
        \item 公元前 11 世紀,商高答周公問:
        \begin{quote}
            勾廣三,股修四,徑隅五。
        \end{quote}
        \item 又載公元前 7--6 世紀陳子答榮方問,表述了勾股定理的一般形式:
        \begin{quote}
            若求邪至日者,以日下爲勾,日高爲股,勾股各自乘,並而開方除之,得邪至日。
        \end{quote}
    \end{itemize}
\end{frame}

2.3.2 首頁

幻燈片首頁也是 beamer 中的一幀,其顯示內容也是要在幀環境中設置。但首頁又往往和其它頁不一樣,需要顯示整個幻燈的標題、小標題、作者、學院、日期、標題圖形等。beamer 在導言區爲首頁提供了顯示相對應內容的命令,在首頁幀中需要通過使用 \maketitle 或者 \titlepage 使得這些內容顯示到首頁幀中。

\title{雜談勾股定理}
\subtitle{數學史講座之一}
\author{BlueHeart}        
\institute{九章學堂}
\date{\today}
\begin{document}
    \begin{frame}
        \maketitle % 等價於 \titlepage
    \end{frame}
    % ...
\end{document}

2.3.3 分節

和一般文檔類一樣,在 beamer 中可以使用 sectionsubsectionsubsubsection 以及 \part 命令對幻燈片分節,然後使用 \tableofcontents 命令產生目錄。目錄頁也是幀,需要在目錄幀中通過使用 \tableofcontents 才能產生目錄並將其顯示到目錄幀中。

\begin{frame}
    \frametitle{目錄}
    \tableofcontents
\end{frame}

\part 命令本身不產生標題,但 beamer 提供了一個 \partpage 命令,它和 \titlepage 命令類似,可以在一幀中產生文檔某部分的標題。一個完整的演講報告 beamer 文檔一般控制在幾十幀的篇幅,使用 \part\section\subsubsection 的命令進行分節足以。但如果希望將所有很多次的演講報告內容放進同一個單獨的文件,則可以使用 \lecture 命令進行更高一層的內容劃分。

\lecture{雜談勾股定理}{gougu} % 兩個參數分別表示「講座標題」和「講座標籤」

\lecture 命令本身並不產生任何標題和效果,beamer 提供 \insertlecture 命令向文檔中插入 \lecture 的標題。還可以通過 \AtBeginLecture 命令在每一講前面都添加一幀,代替 \maketitle

% 導言區
\AtBeginLecture{
    \begin{frame}
        \Large
        本週論題:\insertlecture
    \end{frame}
}

此外,\lecture 的另一個用途是使用 \includeonlylecture{<標籤>} 來使文檔編譯時只輸出選定標籤的那一講,這樣通過修改標籤就可以只使用一個文件來分別生成單獨的幻燈片了。

2.3.4 目錄

beamer 中的 \tableofcontents 可以在可選參數中使用許多參數控制其格式:

  • \tableofcontents[currentsection]:只顯示當前一節的目錄結構
  • \tableofcontents[currentsubsection]:只顯示當前一小節的目錄結構

【注】以上參數設置在某些情況下是非常有用的,因爲演講時可能需要在每一節的開頭都顯示一下即將講到的內容結構,因而每一節前面都應該有一個小目錄,特別是缺少導航條顯示分節標題的格式更是如此。

爲了方便在每一節前面添加一個目錄,beamer 還提供了 \AtBeginSection\AtBeginSubsection 命令,它們的用法與 LaTeX 原有的 \AtBeginDocument 命令功能類似,用來給每一節或每一小節前面增加一段代碼(\AtBeginDocument 命令在整個文檔前面添加一段內容,主要用在宏包製作):

% 導言區
\AtBeginSection[]{  % 空選項[]表示 \section* 前不加目錄
    \begin{frame}{本節概要}
        \tableofcontents[currentsection]
    \end{frame}
}

2.4.5 定理

beamer 文檔類,已經與定義了許多定理類環境:

  • definitiondefinitions:定義
  • theorem:定理
  • corollary:推論
  • proof:證明
  • fact:事實
  • example:例子

除了上述預定義的定理類環境,還可以自定義定理環境:

\newtheorem{thm}{定理}
\begin{frame}{現代敘述}
    \begin{thm}[勾股定理]
        直角三角形斜邊的平方等於兩直角邊的平方和。
    \end{thm}
\end{frame}

2.4.6 區塊

類似定理環境的彩色框效果,beamer 還提供了其他的區塊環境,可以用於強調一部分內容。beamer 提供了三種區塊環境:

  • block
  • alertblock
  • exampleblock

它們除了使用的配色不同之外,用法和結果都大致相同:

\begin{frame}
    \begin{block}{塊標題}
        這是一個區塊
    \end{block}
\end{frame}

2.4.7 圖表

beamer 中使用圖表和在一般文檔中的語法並無區別。不過由於 beamer 是按幀組織內容的,位置固定,因此 figuretable 環境不再是浮動的環境。

\begin{frame}{古中國數學}{定理證明}
    有論者認爲早在公元前 11 世紀商高即已證明勾股定理。完整的證明見於三國時(公元 3 世紀)趙爽對《周髀算經》的註釋。
    \begin{figure}
        \centering
        \includegraphics[height=0.4\textheight]{xiantu.pdf}
        \caption{趙爽的弦圖可給出勾股定理的一個富於對稱美的證明}
    \end{figure}
\end{frame}

除了標準的圖表環境,beamer 還提供了一個 \logo 命令,用於把一個較小的圖表放在幻燈片的左上角落裏,可以用它來放置校徽、公司商標等內容。\logo 命令一般放在導言區:

\logo{\includegraphics{logo.pdf}}

beamer 內部使用 pgf 宏包繪製定理邊框、幻燈片按鈕等圖形。對於一些簡單的數學圖形,使用基於 pdftikz 宏包直接畫圖是最方便的,比如在繪製直角三角形:

\begin{frame}
    \begin{center}
        \begin{tikzpicture}[scale=0.5,font=\small]
            \draw[thick] (0,0) node[left] {$A$}
            -- (4,0) node[right] {$C$}
            -- (4,3) node[above right] {$B$} -- cycle;
            \draw (3.5,0) |- (4,0.5);
        \end{tikzpicture}
    \end{center}
\end{frame}

幻燈片中的表格務求簡明清晰,可以考慮使用行色彩相間的彩色表格。xcolor 宏包通過加上 table 選項就可以實現給表格行加上顏色。由於 beamer 本身就會載入 xcolor 宏包,因此可以直接在 beamer 參數中設置:

\documentclass[xcolor=table]{beamer}
\begin{frame}
    \rowcolors{2}{blue!25}{blue!50}
    \begin{tabular}{ccc}
        \rowcolor{green}x & y & z \\
        3 & 4 & 5 \\
        5 & 12 & 13 \\
    \end{tabular}
\end{frame}

其中,\rowcolors{n}{color}...{color} 命令使用來表格除去首行外,連續 n 行的背景顏色設定,並以 n 爲週期循環。而 \rowcolor{color} 命令用來在表格中單獨設置一行的背景顏色。

2.4.8 參考文獻

beamer 中添加參考文獻列表與一般文檔的語法沒有區別,不過與書面的文稿不同,在幻燈片中通常並不適合特別冗長的文獻列表,列出的條目不宜過多,也不需要文獻編號。因此,beamer 中的文獻列表,文字排版比較寬鬆,列表前沒有標題,默認格式也是沒有編號的(因爲幻燈片很難前後跳躍翻頁,因此編號引用用途不大)。

\begin{frame}{參考文獻}
    \notice{Shiye}
    \bibliography{math}
\end{frame}

如果確實需要對文獻進行引用,那麼最好使用「作者,年代」的引用格式,避免完全不直觀的數字編號可能造成的問題。

【注】beamer 的文獻格式比較特殊,它並不支持 natbib 宏包及其對應的 .bst 文獻格式。可以使用相對簡單的 apalike 文獻格式,它按照 APA 的格式,提供了基本的作者年代引用方式。biblatex 宏包與 beamer 沒有明顯的衝突,也可以使用。

% 提供簡單的作者年代引用格式
\bibliographystyle{apalike}

2.4 幻燈片動態

2.4.1 覆蓋

覆蓋是最爲基本的一種幻燈片效果,它是把同一幀幻燈片的不同內容按一定次序拆分成幾頁顯示出來。利用覆蓋可以讓內容逐步顯示,也可以讓不同內容依次替代,產生類似動畫的效果。

逐條顯示是最爲常用的覆蓋效果,其基本命令是 \pause,表示幻燈片在此處會停頓一下,在 \pause 後面的所有內容會在 pdf 文件的下一頁顯示。對於目錄幀,可以給目錄命令加上選項使得目錄在一項後面暫停。

\begin{frame}{目錄}
    \tableofcontents[pausesections]
\end

更爲一般的是 \onslide,它可以指定內容在一幀中的第幾步顯示,使用 \onslide 時「不顯示的內容還佔用原來的位置」。在 \onslide 後面的尖括號中的內容就是覆蓋步驟的設置。覆蓋語法支持單個的步驟,也支持多個步驟和區間。

\begin{frame}
    \onslide<1>{只有第一步}
    \onslide<2->{第二步之後}
    \onslide<1,3>{第一、三兩步}
\end{frame}

\only 命令與 \onslide 命令類似,不過 \only 命令「在不顯示的步驟沒有額外的佔位」,可以得到內容代替的效果。

\begin{frame}
    計數:\only<1>{1}\only<2>{2}\only<3>{3}\only<4->{4}

    \onslide<5>數完了
\end{frame}

\onslide\only 命令還有許多變種,它們的效果都大同小異。

  • \uncover\visible\onslide 大體相同,只是用不同的方式隱藏文字。
  • \invisible\visible 具有相反的效果。
  • \alt 可以分別設置在指定步驟和步驟外的內容。
  • \temporal 可以分別指定步驟與此步驟前後的內容。

【注】這種使用尖括號表示步驟的覆蓋語法,實際上在 beamer 的很多命令和環境後面都可以使用,比如:

% 加粗
\begin{frame}
    \textbf<3>{只在第三步加粗}
\end{frame}
% 定理
\begin{frame}
    \begin{theorem}<2->
        第二步以後顯示定理
    \end{theorem}
\end{frame}
% 列表
\begin{frame}
    \begin{itemize}
        \item<1-> 開始顯示
        \item<3-> 最後顯示
        \item<2-> 然後顯示
    \end{itemize}
\end{frame}

在覆蓋語法中,使用 + 號就類似使用了 \pause,這可以避免手工計數。連續使用多個 \item<+-> 就可以表示 \item<1->\item<2->\item<3-> …… 的效果。此外,還可以在整個 enumerateitemize 環境後面加上 [<+->] 的可選項,相當於對每個 \item 後面都使用了 <+->,非常方便:

\begin{frame}
    \begin{itemize}[<+->]
        \item 開始顯示
        \item 其次顯示
        \item 最後顯示
    \end{itemize}
\end{frame}

\structure\alert 命令用於在指定的步驟設置高亮,前者使用幻燈片中結構的色彩,後者使用更鮮明的警告色彩(一般是紅色)。它們也可以帶上覆蓋的語法:

\alert<2>{在第二步強調重要的內容}

此外,高亮命令可以作爲覆蓋語法的一部分,用在 \item 等命令後面,這樣既能控制條目何時顯示,可以控制條目高亮:

\begin{itemize}
    \item<+-| alert@+> 公元前 6 世紀,畢達哥拉斯學派發現一個法則,可以構造直角三角形的邊長;
    \item<+-| alert@+> 公元前 3 世紀,歐幾里得《幾何原本》使用面積法證明勾股定理。
\end{itemize}
% 更簡潔表達爲
\begin{itemize}[<+-| alert@+>]
    \item 公元前 6 世紀,畢達哥拉斯學派發現一個法則,可以構造直角三角形的邊長;
    \item 公元前 3 世紀,歐幾里得《幾何原本》使用面積法證明勾股定理。

2.4.2 活動對象和多媒體

beamer 中可以使用一些真正的動態演示功能,包括 pdf 動畫、javascript 表單、多媒體對象等內容。不過,並非所有的 pdf 閱讀器都支持這些動態功能。

pdf 動畫是把動畫內容分別畫在許多頁中,再通過 pdf 文件中自動快速翻頁產生的效果。beamer 提供了 \animate\animatevalue 命令生成動畫。

  • \animate<自動步進的步數>:定義自動步進的步數,指定的幾步會迅速翻頁。
  • \animatevalue<起步,止步>{寄存器,起始值,終止值}:設置動畫變量,變量是整數或長度寄存器,可以用於控制畫面。
\newdimen\xoffset
\begin{frame}
    % 第一步是靜止的,之後自動運動
    \animate<2-10>
    \animatevalue<1-10>{\xoffset}{0cm}{5cm}
    \hspace{\xoffset}從左到右
\end{frame}

beamer 本身的動畫功能比較簡單,如果要求更高,可以使用 animate 宏包在幻燈片中畫出 pdf 動畫來。animate 宏包的動畫是嵌入在一個 pdf 頁面內的,不需要自動翻頁,並且通過 javascript 代碼提供了更豐富的控制功能。

beamer 還支持 pdf 頁面的動畫切換效果,這些效果只在 pdf 文件全屏觀看是時有效。比如,可以設置一幀中的第二步爲頁面從左邊飛入:

\begin{frame}{動畫切換}
    \only<1>{舊內容}
    \only<2>{新內容}
    \transcover<2>
\end{frame}

beamer 支持的 pdf 頁面切換效果如下表:

命令 效果
\transblindshorizontal 水平百葉窗
\transblindsvertical 垂直百葉窗
\transboxin 盒狀收縮
\transboxout 盒裝展開
\transcover 新頁面飛入,覆蓋舊頁面
\transdissolve 溶解
\transfade 漸顯
\transglitter 閃爍(與溶解類似)
\transpush 新頁面推進,推走舊頁面
\transsplitverticalin 垂直收縮
\transsplitverticalout 垂直展開
\transsplithorizontalin 水平收縮
\transsplithorizontalout 水平展開
\transuncover 舊頁面飛走,揭開新頁面
\transwipe 沿直線消除舊頁面

beamer 的一個附屬包 multimedia 可以用來在 pdf 幻燈片中嵌入視頻、音頻等多媒體信息。multimedia 提供視頻的基本命令是 \movie

\movie[可選項]{文字}{多媒體文件名}

比如,下面的代碼可以用來播放 4:3 的 AVI 視頻 foo.avi

\usepackage{multimedia}
% 導言區
% ……
\begin{frame}
    % 自動播放,無顯示內容
    \movie[width=4cm,height=3cm]{Click to play}{foo.avi}
\end{frame}

類似地,\sound 命令用來在 pdf 幻燈片中插入音頻:

\usepackage{multimedia}
% 導言區
% ……
\begin{frame}
    % 自動播放,無顯示內容
    \sound[autostart]{}{foo.au}
\end{frame}

【注】multimedia 的多媒體功能必須使用 pdfLaTeX 進行編譯,無法使用 xeLaTeX 處理中文。

media9 宏包(其前身爲 movie15,僅支持 pdfLaTeX)提供了比 multimedia 宏包更爲強大的多媒體功能,可以嵌入 Adobe Reader 9 所支持的各類媒體和 3D 對象,並支持各種編譯引擎和輸出驅動,使用 xeLaTeX 可以用它來代替 multimedia

除了動畫和多媒體信息,使用第三方宏包,還可以在 beamer 中添加更多的動態內容。tdclock 宏包使用 javascript 代碼和 pdf 表單,可以在幻燈片中插入日期和時間,可以用來在演講中計時:

\usepackage{tdclock}
\begin{frame}
    當前時間:\tdtime;已經過去時間:\crono
\end{frame}

不過 tdclock 宏包對 pdfTeX 支持最好,使用 xeLaTeX 會出現一些問題。

ocgtools 宏包提供了所謂可選內容塊的功能,可以在幻燈片中添加一個可彈出的可選內容塊。ocgtools 要求使用 pdfTeX,且同時要求安裝 acrotex 包組件。

\usepackage{ocgtools}
\begin{frame}
    % 點擊公式會顯示定理名稱
    \ocgminitext{$a^+b^2=c^2$}{Pythagoras Theorem}
\end{frame}

3. 附錄

3.1 學習資料

  • 《LaTeX入門》——劉海洋
  • 《The beamer class User Guide》——Tantau et al.
  • 《The beamer class User Guide》中譯本——黃旭華

3.2 幻燈片實例

效果展示如下:

代碼實現如下:

\documentclass[xcolor=table,hideothersubsections]{beamer}
\usetheme{PaloAlto}
\useinnertheme{circles}
\useoutertheme{smoothbars}
\usecolortheme{default}
\usefonttheme{default}

\setbeamertemplate{itemize items}[circle]
\setbeamercolor{itemize item}{fg=black}
\setbeamercolor{itemize/enumerate body}{fg=gray}
\setbeamerfont{itemize/enumerate body}{family=\rmfamily}

\usepackage[UTF8,noindent]{ctexcap}
\usepackage{tikz}

\title{雜談勾股定理}
\subtitle{數學史講座之一}
\author{BlueHeart0621}
\institute{九章學堂}
\date{\today}
\begin{document}
    \begin{frame}
        \maketitle
    \end{frame}

    \section{目錄}
        \begin{frame}
            \frametitle{目錄}
            \tableofcontents
        \end{frame}

    \section{勾股定理在古代}
        \subsection{古希臘數學}
            \begin{frame}
                \frametitle{古希臘數學}
                勾股定理在西方稱爲畢達哥拉斯定理,古希臘數學家在 2000 多年前就已經發現並證明了它\footnote{克萊因(2002).古今數學思想.上海科學技術出版社}。
            \end{frame}
        
        \subsection{古中國數學}
            \begin{frame}
                \frametitle{古中國數學}
                \framesubtitle{定理髮現}
                中國在 3000 多年前就知道勾股數的概念,比古希臘更早一些。

                《周髀算經》的記載:
                \begin{itemize}
                    \item 公元前 11 世紀,商高答周公問:
                    \begin{quote}
                        勾廣三,股修四,徑隅五。
                    \end{quote}
                    \item 又載公元前 7--6 世紀陳子答榮方問,表述了勾股定理的一般形式:
                    \begin{quote}
                        若求邪至日者,以日下爲勾,日高爲股,勾股各自乘,並而開方除之,得邪至日。
                    \end{quote}
                \end{itemize}
            \end{frame}

            \begin{frame}
                \frametitle{古中國數學}
                \framesubtitle{定理證明}
                有論者認爲早在公元前 $11$ 世紀商高即已證明勾股定理\footnote{曲安京(1998).商高、趙爽與劉徽關於勾股定理的證明.數學傳播,20(3)}。完整的證明見於三國時(公元 $3$ 世紀)趙爽對《周髀算經》的註釋。
                \begin{figure}
                    \centering
                    \includegraphics[scale=0.45]{xiantu.pdf}
                    \caption{趙爽的弦圖可以給出勾股定理的一個富於對稱美的證明}
                \end{figure}
            \end{frame}
    
    \section{勾股定理在現代}
        \subsection{現代敘述}
            \begin{frame}
                \frametitle{現代敘述}
                \begin{theorem}{(勾股定理)}
                    直角三角形謝別的平方等於量直角邊的平方和。
                    可以用符號語言表述爲:設直角三角形 $ABC$,其中 $\angle{C} = 90^\circ$,則有
                    \begin{equation}
                        AB^2 = BC^2 + AC^2
                        \label{eq:pythagorean}
                    \end{equation}
                    \begin{center}
                        \begin{tikzpicture}[scale=0.5,font=\small]
                        \draw[thick] (0,0) node[left] {$A$}
                           -- (4,0) node[right] {$C$}
                           -- (4,3) node[above right] {$B$} -- cycle;
                        \draw (3.5,0) |- (4,0.5);
                        \end{tikzpicture}
                        \end{center}
                \end{theorem}
            \end{frame}
        \subsection{勾股數}
            \begin{frame}
                \frametitle{勾股數}
                滿足式\ref{eq:pythagorean}的整數稱爲勾股數。前面所說畢達哥拉斯學派得到的三元數就是勾股數。常見的勾股數如下表所示。

                \rowcolors{2}{green!25}{green!50}
                \begin{table}
                    \centering
                    \begin{tabular}{rrr}
                        \rowcolor{blue!50} 直角邊 $a$ & 直角邊 $b$ & 斜邊 $c$ \\
                        3 & 4 & 5 \\
                        5 & 12 & 13 \\
                        7 & 24 & 25 \\
                        8 & 15 & 17 \\
                    \end{tabular}
                    \caption{較小的幾組勾股數}
                    \label{tb:pythagorean}
                \end{table}
            \end{frame}
\end{document}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章