2015-02-20 17 views
10

Tôi đang cố gắng thêm số khung vào bản trình bày Beamer của tôi được viết trong rmarkdown. Tuy nhiên, tôi muốn chặn các con số trên trang tiêu đề bằng cách sử dụng tùy chọn \ begin {frame} [plain] (từ câu trả lời thứ hai ở đây: https://tex.stackexchange.com/questions/82794/removing-page-number-from-title-frame-without-changing-the-theme). Tuy nhiên, khi biên dịch từ rmarkdown sang tex, \ titlepage đã tạo một môi trường khung, do đó, trong hiệu ứng tôi nhận được một khung đôi và do đó là một lỗi.Thêm các tùy chọn khung hình khoan trong knitr/rmarkdown

Vì vậy, khi biên soạn này:

--- 
output: 
    beamer_presentation: 
    includes: 
     in_header: header.tex 
--- 

\begin{frame}[plain] 
\titlepage 
\end{frame} 

tôi có được điều này trong mủ:

\begin{frame{ 

    \begin{frame} 
    \titlepage 
    \end{frame} 

\end{frame} 

Trong header.tex Tôi có điều này:

\let\otp\titlepage 
\renewcommand{\titlepage}{\otp\addtocounter{framenumber}{-1}} 

Vì vậy, cách giải quyết của tôi bây giờ là để chỉ sử dụng một \ plain phụ đề trong rmarkdown, sau đó biên dịch thành .tex, thêm tùy chọn [plain], sau đó biên dịch sang pdf. Tuy nhiên, tôi muốn tránh bước trung gian đó. Điều này có thể trong rmarkdown không?

Trả lời

5

sử dụng pandoc để chuyển đổi tệp Rmd ​​thành pdf qua beamer/latex. pandoc sử dụng templates để kiểm soát cách chuyển đổi diễn ra.

Một cách để đối phó với vấn đề của bạn là:

  1. Download the default beamer template sử dụng và mở nó.

  2. Thay đổi dòng 137 từ này:

    \frame{\titlepage} 
    

    Để này:

    \frame[plain]{\titlepage} 
    
  3. Thêm đường dẫn đến mẫu sửa đổi của bạn trong tập tin Rmd của bạn:

    --- 
    output: 
        beamer_presentation: 
        includes: 
         in_header: header.tex 
        template:/path/to/new/template.tex 
    --- 
    

Lưu ý rằng bạn cần phải xác định toàn bộ con đường, hoặc lưu trữ các mẫu nơi pandoc thể tìm thấy nó (~/.pandoc/templates trên một máy linux)

Các vấn đề liên quan