Doublespace 환경이 이상하게 작동하고 어떻게 해야 할지 모르겠습니다.

Doublespace 환경이 이상하게 작동하고 어떻게 해야 할지 모르겠습니다.

저는 TeX를 사용하여 일반적인 시험의 형식을 복제하려는 고등학교 교사입니다. 이 작업을 더 쉽게 하기 위해 일반적인 질문을 흉내낼 수 있는 명령을 작성하려고 합니다. 현재 이중 공백 환경에 몇 가지 문제가 있습니다. 서식에서는 이중 공백을 사용하여 질문 줄을 만듭니다. 다음은 이것을 구현하는 작업 예입니다.

\newcounter{qnumber}
\newcounter{partnumber}[qnumber]
\newcommand{\writeq}[3][0]{ %simple written question command
    \stepcounter{qnumber}
    \textbf{Question \arabic{qnumber}\hfill (#2 marks)}\\
    #3\\
    \begin{doublespace}
        \foreach \n in {1,...,#1}{\rule{\linewidth}{0.5pt}\\}
    \end{doublespace}    
}

\writeq[3]{4}{My question is this one.}

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

이제 "여러 부분으로 구성된 질문"을 만들고 다음 명령을 구성했습니다.

%Multi-part question commands
\newcommand{\mpqstem}[2]{
    \stepcounter{qnumber}
    \setcounter{partnumber}{0}  % Reset part number
    \noindent \textbf{Question \arabic{qnumber}\hfill (#1 marks)}\\ \\ 
    #2 \vspace{0.2cm}
}

\newcommand{\mpq}[3][0]{ %simple written question command
    \stepcounter{partnumber}
    \alph{partnumber}) \hangindent=1.27cm \hangafter=0 #3\\
    \rule{0pt}{1pt}\hfill(#2 marks)\vspace{0.5cm}
    \begin{doublespace}
        \foreach \n in {1,...,#1}{\rule{\linewidth-1.27cm}{0.5pt}\\}
    \end{doublespace} 
}

줄기는 컨텍스트를 설정하는 데 사용되며 mpq 명령은 해당 부분과 관련된 실제 질문입니다. 그러나 이 조합을 사용하면 텍스트는 이중 간격으로 표시되지만 줄은 표시되지 않습니다. 이유를 알 수 없습니다. 아래에서 명령을 사용하려고 시도하는 것과 내가 얻는 내용을 참조하십시오.

\mpqstem{4}{This is the scary question, and thankfully this bit is showing up okay without any double-spacing. But that also makes sense, since this command doesn't touch the spacing.}

\mpq[2]{2}{This is part 1, and it's going to be very long to show what is happening with the spacing and make it clear that this is double-spaced.}

\mpq[2]{2}{This is part 2, and it's also going to be very long to show what is happening with the spacing and make it clear that this is double-spaced.}

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

답변1

귀하의 코드 조각에는 중요한 정보가 많이 부족하여 컴파일할 수 없습니다. 하지만 @UlrikeFischer의 제안을 마음 \\에 새기고 \par. 예를 들어 세 가지 명령의 경우 다음 코드는 최종 형식 지정 목표를 달성하는 데 도움이 될 수 있습니다.

\newcounter{qnumber}
\newcounter{partnumber}[qnumber] tie 'partnumber' counter to 'qnumber' counter

\newcommand{\writeq}[3][0]{ %simple written question command
    \refstepcounter{qnumber} % use \refstepcounter, not \stepcounter
    \par\noindent
    \textbf{Question \arabic{qnumber}\hfill(#2 marks)}
    \par
    #3
    \par
    \begin{doublespace}
        \foreach \n in {1,\dots,#1}{\rule{\linewidth}{0.5pt}}
        \par
    \end{doublespace}
}

\newcommand{\mpqstem}[2]{
    \refstepcounter{qnumber}
    %%\setcounter{partnumber}{0}  % not needed
    \par\noindent 
    \textbf{Question \arabic{qnumber}\hfill(#1 marks)}
    \par
    \vspace{1\baselineskip}
    #2 
    \par
    \vspace{2mm}
}

\newcommand{\mpq}[3][0]{ %simple written question command
    \refstepcounter{partnumber}
    \par\noindent \hangindent=1.27cm \hangafter=0
    \alph{partnumber}) #3
    \par\noindent
    \rule{0pt}{1pt}\hfill(#2 marks)
    \par
    \vspace{5mm}
    \begin{doublespace}
        \foreach \n in {1,\dots,#1}{\rule{\linewidth-1.27cm}{0.5pt}}
        \par
    \end{doublespace} 
}

관련 정보