Wie kann ich in Beamer eine große Tabelle auf mehrere Frames (Folien) aufteilen?

Wie kann ich in Beamer eine große Tabelle auf mehrere Frames (Folien) aufteilen?
\begin{frame}[allowframebreaks]{CLI Protocol}
\begin{center}
    \footnotesize

    \begin{table}
        \begin{tabular}{|>{\bfseries \ttfamily}c|>{\ttfamily}c|L{12cm}|} \hline
            \multicolumn{1}{|c}{\bfseries Definition}
                & \multicolumn{1}{|c|}{\bfseries Protocol}
                & \multicolumn{1}{c|}{\bfseries Desc} \\ \hline
            GLUSTER\_CLI\_PROBE               & CLI\_PROBE
                & Desc \\ \hline
            GLUSTER\_CLI\_CREATE\_VOLUME      & CLI\_CREATE\_VOLUME
                & Desc \\ \hline
            GLUSTER\_CLI\_DEFRAGE\_VOLUME     & CLI\_DEFRAG\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_DEPROBE             & FRIEND\_REMOVE
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_LIST\_FRIENDS       & LIST\_FRIENDS
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_UUID\_RESET         & UUID\_RESET
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_UUID\_GET           & UUID\_GET
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_START\_VOLUME       & START\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_STOP\_VOLUME        & STOP\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_DELETE\_VOLUME      & DELETE\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_GET\_VOLUME         & GET\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_ADD\_BRICK          & ADD\_BRICK
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_ATTACH\_TIER        & ATTACH\_TIER
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_REPLACE\_BRICK      & REPLACE\_BRICK
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_REMOVE\_BRICK       & REMOVE\_BRICK
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_LOG\_ROTATE         & LOG FILENAME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_SET\_VOLUME         & SET VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_SYNC\_VOLUME        & SYNC\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_RESET\_VOLUME       & RESET\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_FSM\_LOG            & FSM\_LOG
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_GSYNC\_SET          & GSYNC\_SET
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_PROFILE\_VOLUME     & STATS\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_QUOTA               & QUOTA
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_GETWD               & GETWD
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_STATUS\_VOLUME      & STATUS\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_MOUNT               & MOUNT
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_UMOUNT              & UMOUNT
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_HEAL\_VOLUME        & HEAL\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_STATEDUMP\_VOLUME   & STATEDUMP\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_LIST\_VOLUME        & LIST\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_CLRLOCKS\_VOLUME    & CLEARLOCKS\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_COPY\_FILE          & COPY\_FILE
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_SYS\_EXEC           & SYS\_EXEC
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_SNAP                & SNAP
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_BARRIER\_VOLUME     & BARRIER\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_GET\_VOL\_OPT       & GET\_VOL\_OPT
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_BITROT              & BITROT
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_GET\_STATE          & GET\_STATE
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_RESET\_BRICK        & RESET\_BRICK
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_TIER                & TIER
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_REMOVE\_TIER\_BRICK & REMOVE\_TIER\_BRICK
                & ᅟDesc \\ \hline
        \end{tabular}

        \caption{RPC Services - CLI}
        \label{tab:cli-rpc-services}
    \end{table}
\end{center}
\end{frame}

Ich möchte diese große Tabelle über mehrere Frames hinweg platzieren, aber wenn ich mein Skript mit diesem Code erstelle, wird ein leerer Frame und dann diese Tabelle angezeigt, die mehrere Frames nicht unterbricht.

Ich habe versucht, „[allowframebreaks]“ festzulegen, aber es wird nicht angewendet.

Gibt es nichts, was ich ausprobieren muss?

Antwort1

Paket verwendenlongtableund ersetzen Sie tabulardurch longtable. Weitere Einzelheiten finden Sie in den verlinkten Dokumenten.

\documentclass{beamer}
\usepackage{array}
\usepackage{longtable}
\newcolumntype{L}[1]{>{\flushleft\arraybackslash}p{#1}}
\begin{document}

\begin{frame}[allowframebreaks]{CLI Protocol}
\begin{center}
    \footnotesize

    \begin{table}
        \begin{longtable}{|>{\bfseries \ttfamily}c|>{\ttfamily}c|L{1.5cm}|} \hline
            \multicolumn{1}{|c|}{\bfseries Definition}
                & \multicolumn{1}{c|}{\bfseries Protocol}
                & \multicolumn{1}{c|}{\bfseries Desc} \\ \hline
            GLUSTER\_CLI\_PROBE               & CLI\_PROBE
                & Desc \\ \hline
            GLUSTER\_CLI\_CREATE\_VOLUME      & CLI\_CREATE\_VOLUME
                & Desc \\ \hline
            GLUSTER\_CLI\_DEFRAGE\_VOLUME     & CLI\_DEFRAG\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_DEPROBE             & FRIEND\_REMOVE
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_LIST\_FRIENDS       & LIST\_FRIENDS
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_UUID\_RESET         & UUID\_RESET
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_UUID\_GET           & UUID\_GET
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_START\_VOLUME       & START\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_STOP\_VOLUME        & STOP\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_DELETE\_VOLUME      & DELETE\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_GET\_VOLUME         & GET\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_ADD\_BRICK          & ADD\_BRICK
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_ATTACH\_TIER        & ATTACH\_TIER
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_REPLACE\_BRICK      & REPLACE\_BRICK
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_REMOVE\_BRICK       & REMOVE\_BRICK
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_LOG\_ROTATE         & LOG FILENAME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_SET\_VOLUME         & SET VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_SYNC\_VOLUME        & SYNC\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_RESET\_VOLUME       & RESET\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_FSM\_LOG            & FSM\_LOG
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_GSYNC\_SET          & GSYNC\_SET
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_PROFILE\_VOLUME     & STATS\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_QUOTA               & QUOTA
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_GETWD               & GETWD
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_STATUS\_VOLUME      & STATUS\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_MOUNT               & MOUNT
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_UMOUNT              & UMOUNT
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_HEAL\_VOLUME        & HEAL\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_STATEDUMP\_VOLUME   & STATEDUMP\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_LIST\_VOLUME        & LIST\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_CLRLOCKS\_VOLUME    & CLEARLOCKS\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_COPY\_FILE          & COPY\_FILE
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_SYS\_EXEC           & SYS\_EXEC
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_SNAP                & SNAP
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_BARRIER\_VOLUME     & BARRIER\_VOLUME
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_GET\_VOL\_OPT       & GET\_VOL\_OPT
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_BITROT              & BITROT
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_GET\_STATE          & GET\_STATE
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_RESET\_BRICK        & RESET\_BRICK
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_TIER                & TIER
                & ᅟDesc \\ \hline
            GLUSTER\_CLI\_REMOVE\_TIER\_BRICK & REMOVE\_TIER\_BRICK
                & ᅟDesc \\ \hline
        \end{longtable}

        \caption{RPC Services - CLI}
        \label{tab:cli-rpc-services}
    \end{table}
\end{center}
\end{frame}
\end{document}

verwandte Informationen