[Tex/LaTex] Drawing a horizontal \rule through the middle of a line

formattinglayoutlineline-breakingrules

How can I do something like \noindent\rule{\linewidth}{0.25mm}
but in a way that doesn't leave a big gap before it?
Currently it's kind of like \bottomrule, almost as if it skips a line. I want it to be more like \midrule, so it runs through the middle of where the text would usually be. It's not a table or tabular environment, so I can't really use those.

I'm using it to create strong visible separators between three distinct stanzas, paragraphs, or similar text blocks. I wouldn't usually do so, but it's a special situation.

Here's a comparison. Looking at them now, neither are really what I want.
I want them to be a bit of each. So, usually theres a blank line between two paragraphs, right? Well i want to draw a line directly down the middle of that empty line. So the gap is symmetrically divided. I know it's a tiny thing, but with a word processor it would be relatively simple adjustment.

\documentclass{article}
\usepackage{booktabs}
\usepackage{amsmath}
\usepackage{lipsum}

\begin{document}

    \section{I'm a Heading}
    \lipsum[1-1]
    $$i^{(m)} = \frac{A_n}{\sum{q(uation)}}$$
    \noindent\rule{\linewidth}{0.25mm}
    \lipsum[2-2]
    \noindent\rule{\linewidth}{0.25mm}
    \lipsum[3-3]
    \noindent\rule{\linewidth}{0.25mm}
    \lipsum[4-4]
    \noindent\rule{\linewidth}{0.25mm}

\end{document}

enter image description here


\documentclass{article}
\usepackage{booktabs}
\usepackage{amsmath}
\usepackage{lipsum}

\begin{document}

    \section{I'm a Heading}
    \lipsum[1-1]
    $$i^{(m)} = \frac{A_n}{\sum{q(uation)}}$$
    \noindent\toprule
    \lipsum[2-2]
    \noindent\midrule
    \lipsum[3-3]
    \noindent\midrule
    \lipsum[4-4]
    \noindent\bottomrule

\end{document}

enter image description here

Best Answer

You can use vcenter to make sure the rule is perfectly centered on the center-line rather than the baseline and use an \hrule of height 0.25mm.

\documentclass[12pt,a4paper]{article}
\usepackage{enumitem}

\newcommand\separator{\par\vskip-\lastskip\noindent$\vcenter{\hfil\hrule height .25mm}$\par}

\begin{document}

Some paragraph ..
\separator
Some other paragraph ..

Now with \verb|enumerate|:
\begin{enumerate}
\item First item 
\item Second item
\item Third item
\end{enumerate}
\separator
\begin{enumerate}[topsep=0pt]
\item First item 
\item Second item
\item Third item
\end{enumerate}

\end{document}

enter image description here