歡迎光臨
每天分享高質量文章

如何使用 Beamer 創建演示文稿 | Linux 中國

Beamer 將 LaTeX 強大的排版功能和生態系統帶進創建幻燈片中。
— Moshe Zadka

 

致謝
譯自 | opensource.com 
作者 | Moshe Zadka
譯者 | LCTT / geekpi

Beamer 將 LaTeX 強大的排版功能和生態系統帶進創建幻燈片中。

Beamer[1] 是用於生成幻燈片的 LaTeX 包。它最棒的功能之一是它可以利用 LaTeX 強大的排版系統和其生態系統中的所有其他軟體包。例如,我經常在包含代碼的 Beamer 演示文稿中使用 LaTeX 的 listings[2] 包。

創建演示文稿

要創建一個 Beamer 文件,輸入:

  1. \documentclass{beamer}

與任何其他 LaTeX 文件一樣,添加你要使用的任何包。例如,要使用 listings 包,請輸入:

  1. \usepackage{listings}

將所有內容放在 document 環境中:

  1. \begin{document}

Beamer 文件通常時是一系列的 frame 環境。包含代碼的 frame 應該被標記為 fragile

  1. \begin{frame}[fragile]

使用標題開始你的 frame

  1. \frametitle{Function to Do Stuff}

開始演示前測試你的代碼

世上最糟糕的感受之一你在演講中說到代碼時,突然發現了一個 bug —— 也許是拼錯了關鍵詞或者漏掉了括號。

解決方法之一就是測試演示的代碼。在多數演示環境中,這意味著創建一個單獨的檔案、編寫測試接著拷貝和粘貼。

然而,在 Beamer 中有一種更好的方法。想象一下,你有一個名為 do_stuff.py 的檔案,其中包含代碼。你可以在第二個檔案中編寫 do_stuff.py 代碼的測試,你可以將其命名為 test_do_stuff.py,並且可以使用 pytest[3] 測試。但是,do_stuff.py 中的大多數行都缺乏教學價值,比如定義輔助函式。

要簡化你受眾看到的東西,你可在演示文稿中只匯入你要討論的行到 frame 中:

  1. \lstinputlisting[
  2.    language=Python,
  3.    firstline=8,
  4.    lastline=15
  5. ]{do_stuff.py}

由於你會對這幾行(從 8 到 15)進行討論,因此幻燈片上不需要任何其他內容。結束 frame

  1. \end{frame}

在下一張幻燈片中,你想展示剛纔的 do_stuff() 函式的用法示例:

  1. \begin{frame}[fragile]
  2. \frametitle{Calling Function to Do Stuff}
  3. \lstinputlisting[
  4.    language=Python,
  5.    firstline=17,
  6.    lastline=19
  7. ]{do_stuff.py}
  8. \end{frame}

你使用相同的檔案,但這次顯示呼叫該函式的行。最後,結束 document

  1. \end{document}

假設你在 do_stuff.py 中有一個合適的 Python 檔案,這將生成一個含有 2 頁的幻燈片。

Beamer 還支持必要的功能如漸進式演示,每次給觀眾展示一部分以免受到前面的打擾。在行中放入 \pause 會將頁面分成不同的部分:

  1. \begin{frame}
  2. Remember:
  3. \begin{itemize}
  4. \item This will show up on the first slide. \pause
  5. \item This will show up on the
  6.      second slide, as well as the preceding point. \pause
  7. \item Finally, on the third slide,
  8.       all three bullets will show up.
  9. \end{frame}

創建講義

Beamer 中我最喜歡的功能是可以用 \documentclass[ignorenonframetext]{beamer} 設置忽略 frame 外的所有內容。當我準備演示文稿時,我離開頂部(宣告文件類的位置)並自動生成它的兩個版本:我的演示稿使用 Beamer 忽略任何 frame 之外的所有文本,另一個含有類似這樣的頭:

  1. \documentclass{article}
  2. \usepackage{beamerarticle}

這會生成一份講義:一份含有所有 frame 和它們之間文字的 PDF。

當會議組織者要求我發佈我的幻燈片時,我會包含原始幻燈片作為參考,但我希望人們拿到的是講義,它包含了所有我不想在幻燈片上寫的解釋部分。

在創建幻燈片時,人們經常會考慮是為演講優化講稿還是為之後想要閱讀它的人們優化。幸運的是,Beamer 提供了兩全其美的辦法。


via: https://opensource.com/article/19/1/create-presentations-beamer

作者:Moshe Zadka[5] 選題:lujun9972 譯者:geekpi 校對:wxy

赞(0)

分享創造快樂