删除参考书目项目上方的空白

删除参考书目项目上方的空白

如何正确删除未添加相应标题的参考书目上方的空格?请参见下面的屏幕截图,其中不一致的空格由红线分隔。使用“paracol”包获得了两列布局。(我应该在这里提到,使用此包对添加的额外空间没有影响。)

不一致的空间;使用封闭的 MWE 生成的输出

MWE 用于生成输出:

\documentclass[11pt,a4paper]{article}
\def\section*#1{}          % let's get rid of the caption 'References'
\usepackage{bibunits}
\usepackage{paracol}
\setcolumnwidth{3cm,10cm}  % column widths
\begin{document}
\noindent\textbf{Published articles}
\par\begin{paracol}{2}
  \noindent peer-reviewed\\journals
  \switchcolumn
  \begin{bibunit}\nocite{*}\putbib[pub]\end{bibunit}
\end{paracol}
\end{document}

BibTeX 文件 pub.bib:

@article{art,
    author  = {John Doe and Jane Smith},
    title   = {Some witty paper title},
    journal = {Journal},
    year    = {2014},
    volume  = {1},
    number  = {2},
    pages   = {1--5}
}

请注意,由于使用了“bibunits”包(我需要插入多个参考书目),因此必须使用参数“bu1”而不是 .bib 文件的名称来运行 BibTeX。

我知道这个话题‘从 bibunit 中删除标题'但不幸的是,其中提到的技巧毫无帮助。

当我尝试通过将各种尺寸/长度设置为 0 pt 来删除多余的空间时,有时会发生轻微的变化,但空间仍然相差甚远。那么,我需要将哪个参数设置为 0 pt 才能删除多余的空间?或者 - 我是否需要以其他方式重新定义节标题\def\section*#1{}

到目前为止,唯一有帮助的方法是使用\vskip\correction\vskip0pt\correction​​验确定的负长度,但这更像是一种解决方法,而不是解决方案。:/

谢谢。

nvx

答案1

这是因为\topsep书目是按列表排版的。如果你设置\topsep\partopsep为零,那么问题就解决了。考虑egreg 的代码并在重新定义中添加\setlength{\topsep}{0pt}和以删除多余的空格。\setlength{partopsep}{0pt}thebibliography

\documentclass[11pt,a4paper]{article}
\makeatletter
\renewenvironment{thebibliography}[1]
     {\list{\@biblabel{\@arabic\c@enumiv}}%
           {\settowidth\labelwidth{\@biblabel{#1}}%
            \leftmargin\labelwidth
            \setlength{\topsep}{0pt}                     %%<--- here. 
            \setlength{\partopsep}{0pt}
            \advance\leftmargin\labelsep
            \@openbib@code
            \usecounter{enumiv}%
            \let\p@enumiv\@empty
            \renewcommand\theenumiv{\@arabic\c@enumiv}}%
      \sloppy
      \clubpenalty4000
      \@clubpenalty \clubpenalty
      \widowpenalty4000%
      \sfcode`\.\@m}
     {\def\@noitemerr
       {\@latex@warning{Empty `thebibliography' environment}}%
      \endlist}
\makeatother          % let's get rid of the caption 'References'
\usepackage{bibunits}
\usepackage{paracol}
\setcolumnwidth{3cm,10cm}  % column widths
\begin{document}
\noindent\textbf{Published articles}
\par\begin{paracol}{2}
  \noindent peer-reviewed\\journals
  \switchcolumn
  \begin{bibunit}\nocite{*}\putbib[pub]\end{bibunit}
\end{paracol}
\end{document}

在此处输入图片描述

tcolorbox以下是作为附加奖励使用的刺杀:

\documentclass[11pt,a4paper]{article}
\def\section*#1{}          % let's get rid of the caption 'References'
\usepackage{bibunits}
\usepackage[many]{tcolorbox}
\tcbuselibrary{skins,breakable}
\newtcolorbox{mycolumn}[1][]{
    colback=white,
    left=0.5ex,
    top=0pt,
    arc=0pt,
    outer arc=0pt,
    enlarge left by=1in,
    enlarge right by=-\dimexpr1in+\parindent\relax,
    right=\dimexpr1in\relax,
    leftrule=0pt,
    rightrule=0pt,
    toprule=0pt,
    bottomrule=0pt,
    breakable,
    nobeforeafter,
    enhanced jigsaw,
    overlay={
      \node[anchor=north east,inner sep=0pt,align=left,text width=1in]
        at ([yshift=-1.5ex]frame.north west) {#1};
    },
    before=\vskip\itemsep\noindent
  }

\begin{document}
\noindent\textbf{Published articles}
\begin{mycolumn}[peer-reviewed\\journals] 
  \begin{bibunit}
    \nocite{*}
    \putbib[xampl]
  \end{bibunit}
\end{mycolumn}
\end{document}

在此处输入图片描述

1in适当调整定义中的所有实例mucolumn。 优点tcolorbox是可以随心所欲地使用颜色和边框规则。

相关内容