以文章模式显示框架

以文章模式显示框架

我的问题

ignorenonframetext在 中可以只显示和beamer之间的内容。但是在 中,我们如何才能跳过和之间的代码(即它只保留在文章模式中)而不在每一帧上添加覆盖?\begin{frame}\end{frame}Beamerarticle\begin{frame}\end{frame}nonframetext

ignoreframe我在 beamerarticle 中没有看到与(不存在)选项等效的选项。

我真的很想避免使用过多的覆盖层\begin{frame}<presentation>

在此处输入图片描述

语境

为了避免框架之间的文本beamer,我使用\documentclass[ignorenonframetext]{beamer}

但在工作时beamerarticle,是否有相当于\documentclass[ignorenonframetext]{beamer}可以完成的工作(不存在)

\documentclass[11pt,twoside]{book} \usepackage[ignoreframe]{beamerarticle}

基于这里我理解,要使用overlay(像\begin{frame}<presentation>)IMO 在打字上投入大量精力,我需要替换我所有的简单\begin{frame}。我假设在我的工作流程中幻灯片必然会出现在我的演示文稿中......)。

我可能误用了...这个handout选项。beamerarticle

平均能量损失

\documentclass[11pt]{article}
\usepackage[envcountsect,handout]{beamerarticle}


\begin{document}

\section{First section}

%\only<article>{% I'd like to avoid the chore to place overlays on all my text that is not in a frame)
Long  text that will appear only in article mode (here is a `article.cls`). Long  text that will appear only in article mode (here is a `article.cls`). Long  text that will appear only in article mode (here is a `article.cls`). Long  text that will appear only in article mode (here is a `article.cls`). Long  text that will appear only in article mode (here is a `article.cls`). Long  text that will appear only in article mode (here is a `article.cls`). Long  text that will appear only in article mode (here is a `article.cls`). Long  text that will appear only in article mode (here is a `article.cls`). Long  text that will appear only in article mode (here is a `article.cls`). Long  text that will appear only in article mode (here is a `article.cls`). 
%}


%\only<article>{% I'd like to avoid the chore to place overlays on all my text that is not in a frame)
    \begin{itemize}
        \item It will
        \item appear
        \item in the article
    \end{itemize}
%}

\begin{frame}
{Frame skipped in article}
    \begin{block}{Block title}
    \begin{enumerate}
        \item first
        \item Second
        \item third
    \end{enumerate}
    \end{block}
\end{frame}

\end{document}

答案1

全部归功于 SamCarter 的回答这里。它能够创建中间格式,您可以在beamer其中article mode看到帧的内容。特别适用于表达要包含的内容article和关键信息beamer

在此处输入图片描述

“类似于https://groups.google.com/d/msg/de.comp.text.tex/ycdX_TPNjjM/sK17Tse1AgAJ可以在文章模式中添加 beamer 覆盖规范作为默认规范:

\documentclass[11pt]{article}
%\documentclass{beamer}
\usepackage[envcountsect]{beamerarticle}
\makeatletter
\mode
<article>
{
  \long\def\beamer@@@@frame<#1>[#2]{%
    \global\let\insertframetitle=\@empty%
    \global\let\insertframesubtitle=\@empty%
    \beamer@slideinframe=1\relax%
    \refstepcounter{framenumber}%
    \beamer@slideinframe=0\relax%
    \beamer@anotherslidefalse%
    \beamer@masterdecode{beamer,#1}%
    \ifbeamer@anotherslide%
      \let\beamer@howtotreatframe\beamer@dosingleframe%
    \else% no slides in frame
      \let\beamer@howtotreatframe\beamer@donoframe%
    \fi%
    \beamer@slideinframe=1\relax%
    \beamer@howtotreatframe}
}
\makeatother
\begin{document}
test
\begin{frame}
    \frametitle{Title of the frame}
    \framesubtitle{Subtitle of the frame}
    \begin{itemize}[<+->]
        \item first
        \item Second
        \item third
    \end{itemize}
\end{frame}
\begin{frame}<beamer>
    \frametitle{Title of the frame}
    \framesubtitle{Subtitle of the frame}
    \begin{itemize}[<+->]
        \item first
        \item Second
        \item third
    \end{itemize}
\end{frame}
\end{document}

(也许可以用一些 xpatch magic 来缩短代码……)

警告:

如果框架明确标记为文章,它们甚至会被隐藏,例如 \begin{frame} 将不起作用“

相关内容