![命令中的 \noindent 不起作用](https://linux22.com/image/385388/%E5%91%BD%E4%BB%A4%E4%B8%AD%E7%9A%84%20%5Cnoindent%20%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8.png)
我花了很多时间寻找解决问题的方法,但似乎找不到。以下是摘要:
在我的文档中,我有一个用于描述的自定义命令,我希望这个描述没有缩进。
该文件是
documentclass{article}
\usepackage[document]{ragged2e}
\usepackage{graphicx}
\usepackage{wrapfig, framed, caption}
\usepackage{hyperref}
\usepackage[utf8]{inputenc}
\usepackage[nochapters]{classicthesis}
\usepackage[LabelsAligned]{currvita}
\newcommand{\MarginText}[1]{\marginpar{\color{royalblue}\itshape\small#1}}
\newlength{\datebox}\settowidth{\datebox}{11/2017x-x09/2018}
\newcommand{\NewEntry}[3]{\noindent\hangindent=2em\hangafter=0\noindent\parbox[t]{\datebox}{\small #1} {\small \textbf{#2}}
\newcommand{\Description}[1]{\hangindent=2em\hangafter=0\noindent\raggedright\small {#1}\noindent\par\normalsize\vspace{1em}}
\begin{document}
\NewEntry{10/2018-Present}{Corrector of Discrete Mathematics, \textsc{University Ulm}}
\Description{\MarginText{ SK Mathematik} Algebraic structures, Elementary Number Theory, Finite bodies, Foundations of Coding Theory. \ \ $\cdotp$\ \ }
\end{document}
结果是
有什么办法可以消除“代数”和“基础”之间的空白吗?
任何帮助都将不胜感激!
答案1
该问题与您的代码无关:它是由于您在\margintext{...}
和代数之间留下的空间造成的:
\documentclass[twoside, svgnames]{article}%
\usepackage{showframe}
\renewcommand{\ShowFrameLinethickness}{0.3pt}
\usepackage{xcolor}
\newcommand{\Description}[1]{\hangindent=2em\hangafter=0\noindent\raggedright\small#1\noindent\par\normalsize\vspace{1em}}
\newcommand{\MarginText}[1]{\marginpar{\color{RoyalBlue}\itshape\small#1}}
\begin{document}
\Description{\MarginText{ SK Mathematik }%
Algebraic structures, Elementary Number Theory, Finite bodies, Foundations of Coding Theory.}
Some more text
Some more text
\end{document}
答案2
\noindent
中的迫使\Descritiption
段落过早开始,因此 之后的空格\marginpar
在 hmode 中设置为可见而不是被忽略。
你可以删除它们,但不幸的是,\marginpar
在垂直模式下会出现多于段落,因此最简单的方法是\noindent
在 之前使用\marginpar
,然后\ignorespaces
忽略后面的任何空格。
重新使用 Bernard 的例子作为问题中的例子不会产生任何输出。
\documentclass[twoside, svgnames]{article}%
\usepackage{showframe}
\renewcommand{\ShowFrameLinethickness}{0.3pt}
\usepackage{xcolor}
\newcommand{\Description}[1]{\hangindent=2em\hangafter=0 \raggedright\small#1\par\normalsize\vspace{1em}}
\newcommand{\MarginText}[1]{\small\noindent\marginpar{\color{RoyalBlue}\itshape#1}\ignorespaces}
\begin{document}
\Description{\MarginText{ SK Mathematik }
Algebraic structures, Elementary Number Theory, Finite bodies, Foundations of Coding Theory.}
Some more text
Some more text
\end{document}