resizebox 및 verbatim 모드의 충돌

Nov 08 2020

축어 모드에서 resizebox를 사용해야합니다. resizebox 내에서 동사 모드 사용 사이에 충돌이 있습니까? 표의 첫 번째 열을 보면 항상 |각 텍스트 끝에 추가 됩니다. 나는 그것에 대해 전혀 모른다. 크기 조정 상자에 넣지 않으면 첨부되어 있으므로 문제가 없습니다.

이 문제를 어떻게 해결할 수 있습니까?

\documentclass{beamer}
\begin{document}


\frame{Operatorler}
    \resizebox{\textwidth}{!}{
    \begin{tabular}{lll}
        \textbf{test}  & \textbf{test}   &   \textbf{test}\\
        \verb|+|  & toplama     & a\\
        \verb|−|  & çıkarma     & a\\
        \verb|*|  & çarpma      & a\\
        \verb|/|  & bölme       & a\\
        \verb|%|  & bölme sonrası kalan (mod alma işlemi)   & a\\
        \verb|++| & artırma     & a\\
        \verb|--| & azaltma     & a\\
    \end{tabular}
    } % end of scope of "\resizebox"  directive
    \framebreak

    \begin{tabular}{lll}
        \textbf{test}  & \textbf{test}   &   \textbf{test}\\
        \verb|+|  & toplama     & a\\
        \verb|−|  & çıkarma     & a\\
        \verb|*|  & çarpma      & a\\
        \verb|/|  & bölme       & a\\
        \verb|%|  & bölme sonrası kalan (mod alma işlemi)   & a\\
        \verb|++| & artırma     & a\\
        \verb|--| & azaltma     & a\\
    \end{tabular}
\end{document}

다음을 생성합니다.

답변

2 egreg Nov 07 2020 at 23:14

\verb다른 명령에 대한 인수에 사용할 수 없으므로 \resizebox재질에 \verb.

그러나 먼저 상자를 만든 다음 크기를 조정할 수 있습니다.

\documentclass{beamer}

\newsavebox{\tablebox}

\begin{document}

\begin{frame}[fragile]
\frametitle{Operatorler}

\begin{lrbox}{\tablebox}
    \begin{tabular}{lll}
        \textbf{test}  & \textbf{test}   &   \textbf{test}\\
        \verb|+|  & toplama     & a\\
        \verb|-|  & çıkarma     & a\\
        \verb|*|  & çarpma      & a\\
        \verb|/|  & bölme       & a\\
        \verb|%|  & bölme sonrası kalan (mod alma işlemi)   & a\\
        \verb|++| & artırma     & a\\
        \verb|--| & azaltma     & a\\
    \end{tabular}
\end{lrbox}
\resizebox{\textwidth}{!}{\usebox{\tablebox}}

\end{frame}

\end{document}

나는 (U + 2212)를 하이픈으로 변경했는데, 그 문맥에서는 이해가되지 않습니다.

어쨌든 테이블의 크기를 조정해야합니까? 텍스트 너비보다 더 넓은 것으로 판명되면 더 작은 글꼴을 사용하는 것이 좋습니다.

구문도 피하는 것이 좋습니다.

\frame{Title}{
  <contents>
}

더 나은 구문을 사용하려면

\begin{frame}
\frametitle{Title}
<contents>
\end{frame}

fragile(프레임에 축어 자료가 포함 된 경우) 와 같은 옵션을 추가 할 수도 있습니다 .

또한 \verb모두 피할 수 있고

    \begin{tabular}{lll}
        \textbf{test}  & \textbf{test}   &   \textbf{test}\\
        \texttt{+}  & toplama     & a\\
        \texttt{-}  & çıkarma     & a\\
        \texttt{*}  & çarpma      & a\\
        \texttt{/}  & bölme       & a\\
        \texttt{\%}  & bölme sonrası kalan (mod alma işlemi)   & a\\
        \texttt{++} & artırma     & a\\
        \texttt{--} & azaltma     & a\\
    \end{tabular}

동일한 출력을 가질 것입니다. 만 %요구 탈출한다.

2 StevenB.Segletes Nov 08 2020 at 01:49

verbatimbox프레임에 들어가기 전에도 내용을 상자로 저장하는 데 사용할 수 있습니다 .

\documentclass{beamer}
\usepackage{verbatimbox}
\begin{document}
\begin{myverbbox}{\Percent}%\end{myverbbox}

\begin{frame}
\frametitle{Operatorler}
\resizebox{\textwidth}{!}{%
\begin{tabular}{lll}
    \textbf{test}  & \textbf{test}   &   \textbf{test}\\
    \texttt{+}  & toplama     & a\\
    \texttt{-}  & çıkarma     & a\\
    \texttt{*}  & çarpma      & a\\
    \texttt{/}  & bölme       & a\\
    \Percent  & bölme sonrası kalan (mod alma işlemi)   & a\\
    \texttt{++} & artırma     & a\\
    \texttt{--} & azaltma     & a\\
\end{tabular}
}
\end{frame}
\end{document}

leandriis Nov 08 2020 at 16:50

표의 크기를 텍스트 너비만큼 넓게 만들려고하는 대신 글꼴 크기를 다음 \largetabular*함께 사용 했습니다 \extracolsep{\fill}}.

\documentclass{beamer}

\begin{document}

\begin{frame}[fragile]
\frametitle{Operatorler}
\large
    \begin{tabular*}{\textwidth}{@{\extracolsep{\fill}}lll}
        \textbf{test}  & \textbf{test}   &   \textbf{test}\\
        \verb|+|  & toplama     & a\\
        \verb|-|  & çıkarma     & a\\
        \verb|*|  & çarpma      & a\\
        \verb|/|  & bölme       & a\\
        \verb|%|  & bölme sonrası kalan (mod alma işlemi)   & a\\
        \verb|++| & artırma     & a\\
        \verb|--| & azaltma     & a\\
    \end{tabular*}

\end{frame}

\end{document}

\verb그러나 사용하지 않고 \ttfamily:

\documentclass{beamer}
\usepackage{array}
\begin{document}

\begin{frame}
\frametitle{Operatorler}
\large
    \begin{tabular*}{\textwidth}{@{\extracolsep{\fill}}>{\ttfamily}lll}
        \sffamily\textbf{test}  & \textbf{test}   &   \textbf{test}\\
        +  & toplama     & a\\
        -  & çıkarma     & a\\
        *  & çarpma      & a\\
        /  & bölme       & a\\
        \% & bölme sonrası kalan (mod alma işlemi)   & a\\
        ++ & artırma     & a\\
        -- & azaltma     & a\\
    \end{tabular*}

\end{frame}

\end{document}