降低多列分隔线的高度

降低多列分隔线的高度

multicol我正在使用和来整合一个表格rule,以便我可以拥有动态大小的单元格并使用宏而不是手动来填充它。

它基本上可以正常工作,但是我想减少列之间的线的高度。查看我如何构建它的示例以及完整文档结果的图片。

\documentclass{article}
\usepackage[a5paper,margin=15mm, top=0.8cm, bottom=0.7cm, left=1cm, right=1cm,headsep=2pt]{geometry}
\usepackage{multicol}

\newcounter{qnumber}
\setcounter{qnumber}{0}
\newcommand{\question}[1]{%
\rule{\columnwidth}{0.01pt} \newline
\stepcounter{qnumber}
  Q\theqnumber. \textsf{#1}

  \vspace{4.5mm}
}

\begin{document}
\pagestyle{intervention}
\thispagestyle{intervention}

\setlength{\columnseprule}{0.1pt}
\section*{Week 1}
\begin{multicols}{2}

\question{Calculate the following:
    \begin{enumerate}[(a)] 
        \item $10 \times 0.5$
        \item $10 \times 0.25$
    \end{enumerate}  
}

\end{multicols}
\end{document}

产生如下输出:

在此处输入图片描述

我该如何降低这个高度?

答案1

这是一个解决方案tikz

我创建了一个带有两个参数的宏\mypagerule,它们分别表示距页面顶部和底部的距离(以厘米为单位)。

您必须为每个页面设置它,但从您发布的图片来看,我认为您只有一页。

这是代码(我做了一些修改以使其可编译):

\documentclass{article}
\usepackage[a5paper,top=0.8cm, bottom=0.7cm, left=1cm, right=1cm,headsep=2pt]{geometry}
\usepackage{multicol}
\usepackage{enumitem}
\setenumerate{label={(\alph*)},leftmargin=*}

\usepackage{tikz}
\usetikzlibrary{calc}
\newcommand{\mypagerule}[2]{%
    \begin{tikzpicture}[overlay,remember picture]
        \draw($(current page.north)-(0,#1)$)--($(current page.south)+(0,#2)$);% --
    \end{tikzpicture}
}   

\newcounter{qnumber}
\setcounter{qnumber}{0}
\newcommand{\question}[1]{%
    \noindent
    \rule{\columnwidth}{0.01pt} \newline
    \stepcounter{qnumber}
    Q\theqnumber.~\textsf{#1}
    \vspace{4.5mm}
}

\begin{document}
    \section*{Week 1}
    \begin{multicols}{2}
        \question{Calculate the following:
            \begin{enumerate}
                \item $10 \times 0.5$
                \item $10 \times 0.25$
            \end{enumerate} 
        }
        \question{Calculate the following percentage:
            \begin{enumerate}
                \item $10$\% of $500$
                \item $5$\% of $500$
            \end{enumerate} 
        }
        \question{Round the following numerbers (I don't know the rest of the question):
            \begin{enumerate}
                \item $10.456789789$
                \item $51.5454844$
            \end{enumerate} 
        }
        \question{The following question is about Standard Form:
            \begin{enumerate}
                \item Express $3600$ in standard form
                \item Write $2.1 \times {10}^{3}$ as a normal number
            \end{enumerate} 
        }
        \question{Mr Wilson and Mr Bedford have a peanlty shoot-out. The probability of Mr Wilson scoring is 0.4:
            \begin{enumerate}
                \item What is the probability he misses?
            \end{enumerate} 
        }
        \question{Ten students take ten penalties each. The number that each of them scores is below:
            \begin{enumerate}
                \item $1$
                \item $2$
                \item $3$
                \item $4$
                \item $5$
                \item $6$
                \item $7$
                \item $8$
                \item $9$
                \item $10$
            \end{enumerate} 
        }
    \mypagerule{2}{6}
    \end{multicols} 
\end{document}

这是输出(实际的线的粗细是正确的,在图片中看起来很粗但实际上不是):

在此处输入图片描述

答案2

这是一个不太优雅的解决方案,等待更好的解决方案。它只是提高了\rule定义每个单元格的 s。注释掉的部分可能是一个更好的解决方案的线索……但我无法实现它。

\documentclass{article}
\usepackage[a5paper]{geometry}
\usepackage{multicol}
\usepackage{graphicx}

\begin{document}

\setlength{\columnseprule}{0.1pt}

%\def\columnseprulecolor{%
%\rotatebox{90}{\makebox[0.4\textheight][c]{\rule{0.4\textheight}{0.1pt}}}
%    }%

\section*{Section Title}

\begin{multicols}{2}

\noindent\raisebox{2.25ex}{\rule{\columnwidth}{0.01pt}}
Here is some content, in its own cell defined by the column separator rule and the rules above and below it.\vspace{5ex}
\raisebox{2.25ex}{\rule{\columnwidth}{0.01pt}}
Here is some content, in its own cell defined by the column separator rule and the rules above and below it.\vspace{5ex}
\raisebox{2.25ex}{\rule{\columnwidth}{0.01pt}}
Here is some content, in its own cell defined by the column separator rule and the rules above and below it.\vspace{5ex}
\raisebox{2.25ex}{\rule{\columnwidth}{0.01pt}}
Here is some content, in its own cell defined by the column separator rule and the rules above and below it.\vspace{5ex}
\raisebox{2.25ex}{\rule{\columnwidth}{0.01pt}}
Here is some content, in its own cell defined by the column separator rule and the rules above and below it.\vspace{5ex}
\raisebox{2.25ex}{\rule{\columnwidth}{0.01pt}}
Here is some content, in its own cell defined by the column separator rule and the rules above and below it.\vspace{5ex}

\end{multicols}
\end{document}

相关内容