18

How to place 3 abstracts (English, French and Arabic) on on the same page?

I tried to put them in a single page, but it does not work :

\documentclass[12pt,a4paper]{report}
\usepackage[Bjornstrup]{fncychap}
\usepackage[utf8]{inputenc}
\usepackage{arabtex}
\begin{document}
 \begin{abstract}
   %abstract in french
 \end{abstract}
\renewcommand{\abstractname}{Abstract}
\begin{abstract}
   %abstract in english
 \end{abstract}
\renewcommand{\abstractname}{ملخص}
\begin{abstract}
   %abstract in arabic
 \end{abstract}
\end{document}
  • Couldn't you just put the three abstracts in the same abstract environment, with a little space between them? It looks to me like the abstract environment is designed to start a new page each time, at least in the report class. – John Wickerson Jun 8 '13 at 9:56
  • If you don't really need the report class, using the article class you'll have all of them in the same page. – karlkoeller Jun 8 '13 at 9:59
  • the summary arab it does not work too! but the other, each is displayed on a page : \renewcommand{\abstractname}{ملخص} \begin{abstract} %abstract in arabic \end{abstract} – physics Jun 8 '13 at 10:00
  • @karlkoeller : yes i need the report class – physics Jun 8 '13 at 10:01
  • 1
    Put all abstract environment inside a single minipage. – Marco Daniel Jun 8 '13 at 10:31
18

If you don't need the titlepage class option (used by default in report), the easiest solution is to use notitlepage:

\documentclass[12pt,a4paper,notitlepage]{report}
\usepackage[ngerman,french,english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{arabtex}

\begin{document}
\selectlanguage{french} 
\begin{abstract}
Abstract in French
\end{abstract}
\selectlanguage{english} 
\begin{abstract}
Abstract in English
\end{abstract}
\selectlanguage{ngerman} 
\begin{abstract}
Abstract in German
\end{abstract}
\selectlanguage{english}

\end{document}

enter image description here

Notice that I used the babel package with three modules: ngerman, french, and english (since english is the last declared language, this is the main language for the document) and then used \selectlanguage to change to the corresponding option for each abstract.

In your actual code you won't need ngerman (I only used ngerman to simulate a third language since I don't have the Arabic font you are using), so load only the french and english modules.

As egreg has mentioned in a comment, instead of issuing \selectlanguage commands, one can enclose the abstracts in languages different from the main one in otherlanguage environments. This is cleaner, for it doesn't require to reset the language at the end:

\documentclass[12pt,a4paper,notitlepage]{report}
\usepackage[ngerman,french,english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{arabtex}

\begin{document}
\begin{otherlanguage}{french} 
\begin{abstract}
Abstract in French
\end{abstract}
\end{otherlanguage}

\begin{abstract}
Abstract in English
\end{abstract}

\begin{otherlanguage}{ngerman} 
\begin{abstract}
Abstract in German
\end{abstract}
\end{otherlanguage}

\end{document}
  • 6
    Instead of issuing \selectlanguage commands, enclose the abstracts in languages different from the main one in a \begin{otherlanguage}{<language>} command. This is cleaner, for it doesn't require to reset the language at the end. – egreg Jun 8 '13 at 22:00
  • 1
    @egreg I've added your suggestion to my answer. Thanks! – Gonzalo Medina Jun 9 '13 at 0:45
  • May I ask why this code doesn't work for me when I am using the document class amsbook? – Salomo Feb 21 '19 at 22:13
  • What about creating two \chapter*{ABSTRACT} and \chapter*{ABSTRACT2} ? – skan Sep 14 '19 at 23:56

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.