我可以使用以下命令在整个页面宽度上绘制一条规则:
\noindent\makebox[\linewidth]{\rule{\paperwidth}{1pt}}
但我无法画虚线。有什么想法吗?我需要一条线来划分页面,忽略边距,也就是说,即使在边距区域也画虚线。
答案1
插入\dotfill
:
\documentclass{article}
\usepackage{lipsum}
\newcommand{\dividepage}{%
\par\noindent
\makebox[\linewidth]{\raisebox{.2\baselineskip}{\makebox[2\paperwidth]{\dotfill}}}%
\par
}
\begin{document}
\lipsum[1]
\dividepage
\lipsum[1]
\end{document}
我将其稍微抬高,使其位于两个段落的中间。为了避免过度使用,我指定了2\paperwidth
as 的宽度,\dotfill
以确保它可以延伸到两个边距(并超出页面)。
答案2
这是一个 tikz 解决方案:
\documentclass{article}
\usepackage{lipsum}
\usepackage{tikz}
\usetikzlibrary{positioning}
\newcounter{SplCounter}
\def\tikzmark#1{\tikz[remember picture]\coordinate(#1);}
\newlength{\yplace}
\newcommand\mySplitter[1][dotted]{%
\stepcounter{SplCounter}%
\setlength{\yplace}{\dimexpr\textheight/2-\pagetotal-1.5\baselineskip\relax}%
\tikzmark{Spl\theSplCounter}%
\par
\begin{tikzpicture}[remember picture,overlay]%
\draw[#1] ([yshift=\yplace,xshift=-\paperwidth/2]current page.center)--([yshift=\yplace,xshift=\paperwidth/2]current page.east);%
\end{tikzpicture}\par
}
\begin{document}
\lipsum[2]\mySplitter
\lipsum[3]\mySplitter[dashdotted,red,ultra thick]
\lipsum[4]\mySplitter[-,green!34!brown,thick]
Could just write the text here without empty lines... A
new paragraph will start even if I don't want to...
\end{document}
输出: