Изменить положение fancyhdr нижнего колонтитула в уценке R

Я долго пытался решить эту проблему, но я не могу понять это правильно. Я использую разметку R для создания презентации проектора, и я хотел бы включить нижний колонтитул с помощью пакета fancyhdr LaTeX. Проблема, с которой я сталкиваюсь, состоит в том, что нижний колонтитул не полностью на каждом слайде. Я предполагаю, что это связано с полями, используемыми beamer, но я не знаю, как это изменить.

Здесь MWE. Это файл.rmd:

---
title: "Untitled"
author: ""
date: "10 januari 2019"
output: 
  beamer_presentation:
    includes:
      in_header: preamble.tex
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE)
```

## R Markdown

SOME NICE TEXT

Это в файле "preamble.tex", который указан в YAML:

\usepackage{fancyhdr}
\pagestyle{fancy}

\lhead{}
\chead{}
\rhead{}
\lfoot{Text in footer}
\cfoot{}
\rfoot{\thepage}
\renewcommand{\headrulewidth}{0.4pt}
\renewcommand{\footrulewidth}{0.4pt}

Вот как это выглядит. Нижний колонтитул не полностью на слайде:

Заранее спасибо за вашу помощь!

1 ответ

Решение

Когда используешь beamer, гораздо более естественно установить footline шаблон, чем пытаться использовать fancyhdr как вы бы использовали, например, и article документ класса (или pdf_document в мире R Markdown). Меняя свой preamble.tex к следующему:

\setbeamertemplate{footline}
{
    \leavevmode%
    \hbox{%
        \begin{beamercolorbox}[wd = .5\paperwidth, ht = 1ex, dp = 1ex, center]{author in head/foot}%
            Text in footer
        \end{beamercolorbox}%
        \begin{beamercolorbox}[wd = .5\paperwidth, ht = 1ex, dp = 1ex, center]{date in head/foot}%
            \insertframenumber{}
        \end{beamercolorbox}
    }%
    \vskip3pt%
}

\addtobeamertemplate{footline}{\begin{center}\rule{0.6\paperwidth}{0.4pt}\end{center}\vspace*{-1ex}}{}

Результаты в этом выводе:

что, я считаю, довольно близко к тому, что вы хотите (черная полоса посередине - это просто пространство между слайдами в программе просмотра PDF, которую я использовал); Вы можете изменить определение, пока не получите его именно там.

Другие вопросы по тегам