멀티콜로 열거하다

멀티콜로 열거하다

다음 이미지는 내가 찾고 있는 것을 보여줍니다.

여기에 이미지 설명을 입력하세요

본질적으로 위와 같이 번호 매기기가 발생하기를 원하지만 multicolenumitem패키지를 사용합니다. 하지만 다음 코드를 사용하여 시도해 보면 다음과 같습니다.

\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage{enumitem,multicol}
\begin{document}
\begin{enumerate}
\item Evaluate each of the following if $x$ is a non-zero real number.
    \begin{multicols}{2}
    \begin{enumerate}[itemsep=1cm]% The item sep is my choice here.
    \item $\dfrac{|x|}{x}$
    \item $\dfrac{x}{|x|}$
    \item $\dfrac{|-x|}{-x}$
    \item $|x|-|-x|$
    \end{enumerate} 
    \end{multicols}
\end{enumerate}
\end{document}

나는 얻다:

여기에 이미지 설명을 입력하세요

본질적으로 나는 (b)그것이 있는 곳에 있기를 원합니다 (c). 이 작업이 수행되었다는 것을 알고 있지만 찾을 수 없는 것 같습니다.

답변1

다음은 정의된 명령을 사용하는 옵션입니다 \newitem. 내용은 \parbox자연스럽게 왼쪽에서 오른쪽으로 흐르는 a로 설정되어 원하는 스타일로 열거형을 제공합니다.

여기에 이미지 설명을 입력하세요

\documentclass{article}
\usepackage{amsmath,amssymb}% http://ctan.org/pkg/{amsmath,amssymb}
\usepackage{enumitem,multicol,setspace}% http://ctan.org/pkg/{enumitem,multicol,setspace}
\newcounter{subenum}[enumi]
\renewcommand{\thesubenum}{\alph{subenum}}
\newcommand{\newitem}[1]{%
  \refstepcounter{subenum}%
  \parbox{\dimexpr.5\linewidth-.5\columnsep}{%
    \makebox[\labelwidth][r]{(\thesubenum)\hspace*{\labelsep}}%
    #1}\hfill%
}
\begin{document}
\begin{enumerate}[start=8]
  \item Evaluate each of the following if $x$ is a non-zero real number.
    \begin{multicols}{2}
      \begin{enumerate}[itemsep=1cm]% The item sep is my choice here.
        \item $\dfrac{|x|}{x}$
        \item $\dfrac{x}{|x|}$
        \item $\dfrac{|-x|}{-x}$
        \item $|x|-|-x|$
      \end{enumerate} 
    \end{multicols}
  \item Evaluate each of the following if $x$ is a non-zero real number.\par
    \setstretch{3}%
    \newitem{$\dfrac{|x|}{x}$}
    \newitem{$\dfrac{x}{|x|}$}
    \newitem{$\dfrac{|-x|}{-x}$}
    \newitem{$|x|-|-x|$}
\end{enumerate}
\end{document}

간격 고려사항은 다음과 같습니다.setspace조정할 수 있습니다( \topsep필요한 경우 추가 " " 공백도 제거함).


열 수를 변경하는 데 좀 더 자동화된 접근 방식을 사용하려면 다음을 추가하세요.

\usepackage[nomessages]{fp}% http://ctan.org/pkg/fp

문서 서문에 추가하고 사용하십시오.

\FPeval\thecolwidth{round(1/4:4)}% Specify number of columns -> column width
\newcommand{\newitem}[1]{%
  \refstepcounter{subenum}%
  \parbox{\dimexpr\thecolwidth\linewidth-.5\columnsep}{%
    \makebox[\labelwidth][r]{(\thesubenum)\hspace*{\labelsep}}%
    #1}\hfill%
}

에 대한 정의대로 \newitem. 열 수를 늘리려면 1/4을 수정하세요 .1/<col nums>

답변2

여기에 이미지 설명을 입력하세요

\documentclass{article}
\usepackage{amsmath,amssymb}
%\tracingall
\def\horizlist#1#2#3{%
  \setcounter{enumi}{0}%
  #3%
  \flushleft
  \dimen0 \linewidth
  \divide\dimen0 by #1\relax
  \advance\dimen0 -#2\relax
  \def\item{\hfil\egroup\penalty50 \hfill
  \refstepcounter{enumi}%
  \leavevmode\hbox to \dimen0 \bgroup\space(\theenumi)\space}%
  \leavevmode\bgroup\hskip 0pt plus -1fill }

\def\endhorizlist{\hfil\egroup\endflushleft}

\begin{document}
\begin{enumerate}
\item Evaluate each of the following if $x$ is a non-zero real number.
    \begin{horizlist}{2}{1cm}{\renewcommand\theenumi{\alph{enumi}}}
    \item $\dfrac{|x|}{x}$
    \item $\dfrac{x}{|x|}$
    \item $\dfrac{|-x|}{-x}$
    \item $|x|-|-x|$
    \end{horizlist}
\end{enumerate}
\end{document}

여기서 무슨 일이 일어나고 있는지 보려면 아래로 가기 전에 오른쪽에서 왼쪽으로 번호 매기기를 원하는 경우 이는 일반적인 단락 단어 순서이므로 해야 할 일은 고정 너비의 일련의 상자를 만드는 것입니다. 텍스트 너비를 사용하고 왼쪽 플러시 단락에 이러한 상자의 단락을 만들면 Tex는 자연스럽게 한 줄에 세 개의 상자로 단락을 감싸고 모두 동일한 너비이므로 수직으로 정렬됩니다. 나머지 코드는 카운터를 증가시키고 상자 앞에 (\the...)를 추가하고 \makebox[0.3\textwidth]{...}표준 \item구문을 사용하도록 구문을 숨기므로 목록 유형 간에 쉽게 전환할 수 있습니다.

즉, 외관상 구문 변경을 제외하고는 동일한 다음과 비교됩니다.

여기에 이미지 설명을 입력하세요

\documentclass{article}

\begin{document}
\begin{flushleft}

\makebox[.3\textwidth][l]{one one}
\makebox[.3\textwidth][l]{two 2 two 2 two}
\makebox[.3\textwidth][l]{three three 3}
\makebox[.3\textwidth][l]{4 4 4 4 4 }
\makebox[.3\textwidth][l]{fifth box}
\makebox[.3\textwidth][l]{number 6}
\makebox[.3\textwidth][l]{7 7 7 7 }
\makebox[.3\textwidth][l]{eight}
\makebox[.3\textwidth][l]{nine nine}
\makebox[.3\textwidth][l]{10}

\end{flushleft}
\end{document}

결과가 세 개의 열에 있는 것처럼 보이더라도 단락의 각 "단어"가 동일한 크기의 상자이므로 정렬이 자동으로 수행되는 조판 단락일 뿐입니다.

답변3

이것은 쉽습니다.exsheets패키지와tasks패키지. 다음 예는 자체 설명이 되기를 바랍니다.

\documentclass{article}
\usepackage[T1]{fontenc}

\usepackage{mathtools}
\DeclarePairedDelimiter\abs{\lvert}{\rvert}

\usepackage{exsheets}% loads the `tasks' package
\SetupExSheets{
  headings = runin-nr
}
\settasks{
  counter-format = tsk[a]. ,
  label-format = \sffamily\itshape\bfseries
}

\setcounter{question}{43}% only for this example

\begin{document}

\begin{question}
  Evaluate each of the following if $x$ is a non-zero real number.
  \begin{tasks}(2)
    \task $\dfrac{\abs{x}}{x}$
    \task $\dfrac{x}{\abs{x}}$
    \task $\dfrac{\abs{-x}}{-x}$
    \task $\abs{x}-\abs{-x}$
  \end{tasks}
\end{question}

\end{document}

여기에 이미지 설명을 입력하세요

답변4

resume다음은 다음 과 같은 기능을 사용하는 지루한 것입니다.enumitem패키지. 코드가 시작되면 환경이 너무 많이 중지되므로 가장 효율적이지 않습니다 enumerate. 그러나 결과는 시각적으로 수용 가능합니다. 단지 표 형식의 환경이므로 모든 종류의 추가 조정을 도입할 수 있습니다.

\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage{enumitem}
\newcommand{\Choices}[4]{\begin{tabular}{p{0.5\textwidth} p{0.5\textwidth}} 
\begin{enumerate*}[series=lafter]
    \item #1
\end{enumerate*} &%
\begin{enumerate*}[resume=lafter]
    \item #2
\end{enumerate*} \\[2\baselineskip]
\begin{enumerate*}[resume=lafter]
    \item #3
\end{enumerate*} &%
\begin{enumerate*}[resume=lafter]
    \item #4
\end{enumerate*}
\end{tabular}}

\begin{document}
\begin{enumerate}
\item Evaluate each of the following if $x$ is a non-zero real number.

\Choices{$\dfrac{|x|}{x}$}{$\dfrac{x}{|x|}$}{$\dfrac{|-x|}{-x}$}{$|x|-|-x|$}

\item Evaluate each of the following if you can.

\Choices{This question is not answerable (is that a real word?)}
{This question does not have any correct answer}
{$\int_0^\pi{\tan\sqrt\theta d\theta}$}
{Whatever is a valid answer!}
\end{enumerate}
\end{document}

여기에 이미지 설명을 입력하세요

관련 정보