在页面边框处放置一些东西

在页面边框处放置一些东西

我想将小页面推到页面的左边界。我理解,这\leftmargin应该是页面边框和文本主体之间的距离。因此,使用hspace该长度的负数应该可以将其推到边缘。但事实并非如此。我遗漏了什么吗?

此外,由于框的宽度和长度相同,它不应该与文本主体齐平吗?

梅威瑟:

\documentclass{article}
\usepackage[margin=2cm, a4paper, nomarginpar, hoffset=0pt]{geometry}
\usepackage{showframe}
\usepackage{color}
\definecolor{blackgray}{rgb}{0.25,0.25,0.25}
\setlength{\parindent}{0pt}
\begin{document}
\hspace{-\leftmargin}%
\colorbox{blackgray}{%
        \begin{minipage}{\leftmargin}
                \color{white}test
        \end{minipage}
}
\end{document}

输出 输出

答案1

\leftmargin是错误的测量值(有帮助...)。左边距测量为 1 英寸,加上\oddsidemargin(对于实际的 2cm 边距,将为负数),因此这就是您想要的:

\documentclass{article}
\usepackage[margin=2cm, a4paper, nomarginpar, hoffset=0pt]{geometry}
\usepackage{showframe}
\usepackage{color}
\definecolor{blackgray}{rgb}{0.25,0.25,0.25}
\setlength{\parindent}{0pt}
\begin{document}
\hspace{-\dimexpr1in+\oddsidemargin\relax}%
\colorbox{blackgray}{%
        \begin{minipage}{\dimexpr1in+\oddsidemargin-2\fboxsep\relax}
                \color{white}test
        \end{minipage}
}

\end{document}

请注意的宽度设置minipage,它使用相同的尺寸,但也删除了其中两个部分,\fboxsep即内部文本周围的填充colorbox

相关内容