marginpar 之前不需要空格

marginpar 之前不需要空格

目前我正在写一份小报告。因此,我不得不重新定义命令\marginpar{}new,因为我希望它的字体大小比“普通文本”小。我编写的代码如下:

\documentclass{scrbook}

\usepackage{graphicx}
\usepackage{xcolor}
\usepackage{mparhack}    
\usepackage{calc}    

\setlength{\fboxsep}{1pt}

\makeatletter

\let\oldmarginpar\marginpar
\renewcommand\marginpar[1]{\oldmarginpar[\color{black}\scriptsize #1]%
{\color{black}\scriptsize #1}}

\makeatother

\begin{document}
\chapter{Hello everybody!}

... but anyway, it's interesting. \marginpar{I don't know why there's some space ... ?}

\end{document}

现在,有一张图片来显示出现的问题: 垂直空间问题

我不知道为什么,但在我重新定义之后,添加的边距之前有一些垂直空间。它不再像“普通文本”那样从同一行开始。

所以我的问题是,我如何才能重新定义它,\marginpar使它始终从“普通文本”的“上线”开始。在上面给出的图像中,我希望文本\marginpar出现在蓝线上 - “普通文本”和\marginpar文本应该使用相同的第一个“上线”。(不幸的是,我不知道我在这里描述的内容的确切印刷名称,但我希望你能帮助我并理解我的意思......)

提前致谢,eniem

答案1

您必须使用\textcolor而不是\color

\documentclass{scrbook}

\usepackage{graphicx}
\usepackage{xcolor}
\usepackage{mparhack}
\usepackage{calc}

\setlength{\fboxsep}{1pt}

\makeatletter

\let\oldmarginpar\marginpar
\renewcommand\marginpar[1]{\oldmarginpar[\textcolor{black}{\scriptsize #1}]%
{\textcolor{black}{\scriptsize #1}}}

\makeatother

\begin{document}
\chapter{Hello everybody!}

... but anyway, it's interesting. \marginpar{I don't know why there's some space ... ?}

\end{document}

在此处输入图片描述

相关内容