8

i include multicol environment to my .tex file to use one column abstract to my article written with \documentclass[10pt, twocolumn]{article}. But when i use multicols instead twoclumns the abstract (title and contents) changes font size to smaller one.

How can in fix it?

%%%%****This is my code*****
\documentclass[10pt]{article}
\usepackage{multicol}
\setlength{\columnsep}{20.0pt}
 \title{some title}

\begin{document}
\maketitle
  %%this this title haven't the correct size    
\begin{abstract}
    this abstract haven't the correct size  
\end{abstract}
\begin{multicols}{2}


\section{introduction}%%this title have the correct size
some introduction.

Whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever.
\section{another section}
Whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever
\end{multicols}
\end{document}

Thanks.

  • The abstract is defined differently for oneside and twoside documents. – Johannes_B Apr 23 '17 at 6:54
  • 1
    Instead of using the abstract environment, you can simply use \section*{Abstract} instead. Or even \begin{quote} {\normalfont\large\bfseries\centering Abtract\par} this abstract haven't the correct size \end{quote}. – Johannes_B Apr 23 '17 at 6:56
  • Many thanks, it works. But how i can to modify the abstract's definition? – Gabriel Sandoval Apr 23 '17 at 7:03
9

Here it is.

Simply modify the meaning of abstract by inserting the following lines in your preamble:

\makeatletter
\renewenvironment{abstract}{%
    \if@twocolumn
      \section*{\abstractname}%
    \else %% <- here I've removed \small
      \begin{center}%
        {\bfseries \Large\abstractname\vspace{\z@}}%  %% <- here I've added \Large
      \end{center}%
      \quotation
    \fi}
    {\if@twocolumn\else\endquotation\fi}
\makeatother

MWE:

%%%%****This is my code*****
\documentclass[10pt]{article}
\usepackage{multicol}
\setlength{\columnsep}{20.0pt}
 \title{some title}

\makeatletter
\renewenvironment{abstract}{%
    \if@twocolumn
      \section*{\abstractname}%
    \else %% <- here I've removed \small
      \begin{center}%
        {\bfseries \Large\abstractname\vspace{\z@}}%  %% <- here I've added \Large
      \end{center}%
      \quotation
    \fi}
    {\if@twocolumn\else\endquotation\fi}
\makeatother

\begin{document}
\maketitle
  %%this this title haven't the correct size
\begin{abstract}
    this abstract have the correct size
\end{abstract}
\begin{multicols}{2}


\section{introduction}%%this title have the correct size
some introduction.

Whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever.
\section{another section}
Whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever, whatever
\end{multicols}
\end{document}

Output:

enter image description here

  • If you want to get rid of the initial indent, remove \quotation – BullyWiiPlaza Feb 14 at 22:29
5

It's worth examining how the abstract environment is defined by the article document class:

\if@titlepage
  \newenvironment{abstract}{%
      \titlepage
      \null\vfil
      \@beginparpenalty\@lowpenalty
      \begin{center}%
        \bfseries \abstractname
        \@endparpenalty\@M
      \end{center}}%
     {\par\vfil\null\endtitlepage}
\else
  \newenvironment{abstract}{%
      \if@twocolumn
        \section*{\abstractname}%
      \else
        \small
        \begin{center}%
          {\bfseries \abstractname\vspace{-.5em}\vspace{\z@}}%
        \end{center}%
        \quotation
      \fi}
      {\if@twocolumn\else\endquotation\fi}
\fi

In your case, since neither the titlepage nor the twocolumn options are in effect, the definition works out to be

 \newenvironment{abstract}{%
        \small
        \begin{center}%
          {\bfseries \abstractname\vspace{-.5em}\vspace{\z@}}%
        \end{center}%
        \quotation
      }
      {\endquotation}

The upshot is that if neither the titlepage nor the twocolumn options are in effect, (a) the relative font size is changed to \small, (b) the abstract's title (given by \abstractname) is centered, and (c) the body of the abstract is typeset inside a quotation environment; most importantly, this means that the margins inside the abstract environment are bit wider (and the text block is a bit narrower) than they are in the body of the text.

If you prefer the "look" that's produced if the twocolumn option is set, just issue the following instruction (in the preamble):

\renewenvironment{abstract}{\section*{\abstractname}}{}

Or, even more simply, just don't use the abstract environment at all. Instead, simply type

\section*{\abstractname}

followed by the body of the abstract.

  • 1
    Hi my friend. Looking forward for your 200k :-) – karlkoeller Apr 23 '17 at 7:19
  • @karlkoeller - Thanks so much!! Hopefully, the 200k rep event will happen within a month or so. (If papiro hadn't chosen to "depart" so dramatically earlier this year, it would already have happened, some time in March...) – Mico Apr 23 '17 at 7:23
4

Another two solutions that are not looking at the internals, but just imitate them. One for a regular twocolumn (documentclass option) document, one for an imitated twocolumn document (using package multicol).

gabrielsandovalAbstractTwocolumn

\documentclass[10pt,twocolumn]{article}
\usepackage{blindtext}
\usepackage{titling}
\title{Wombats are cool}

\renewcommand{\maketitlehookd}{%
    \begin{center}\normalfont\Large\bfseries\centering Abstract\end{center}
    \begin{quotation}
        \blindtext
    \end{quotation}
}
\begin{document}
\maketitle


\section{Introduction}
\blindtext[2]
\section{Capybara}
\blindtext
\end{document}

Using package multicol, note the different margins.

gabrielsandovalAbstractFakeTwocol

\documentclass[10pt]{article}
\usepackage{blindtext}
\usepackage{multicol}
\setlength{\columnsep}{20.0pt}
\title{K\"urbiskernbr\"otchen}

\begin{document}
\maketitle
\begin{center}\normalfont\Large\bfseries\centering Abstract\end{center}
\begin{quotation}
    \blindtext
\end{quotation}

\begin{multicols}{2}

    \section{Introduction}
    Whenever, whereever, we're meant to be together
    \blindtext
    \section{Wombat}
    \blindtext
\end{multicols}
\end{document}
  • @Mico twocolumn and imitated twocolumn was referring to the documentclass option. Not to the abstract environment. – Johannes_B Apr 23 '17 at 7:32
  • OK, I withdraw my comment. – Mico Apr 23 '17 at 7:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.