LaTeX/Curriculum Vitae

From Wikibooks, open books for an open world
Jump to navigation Jump to search


Getting Started
  1. Introduction
  2. Installation
  3. Installing Extra Packages
  4. Basics
  5. How to get help

Common Elements

  1. Document Structure
  2. Text Formatting
  3. Paragraph Formatting
  4. Colors
  5. Fonts
  6. List Structures
  7. Special Characters
  8. Internationalization
  9. Rotations
  10. Tables
  11. Title creation
  12. Page Layout
  13. Customizing Page Headers and Footers‎
  14. Importing Graphics
  15. Floats, Figures and Captions
  16. Footnotes and Margin Notes
  17. Hyperlinks
  18. Labels and Cross-referencing
  19. Initials


  1. Errors and Warnings
  2. Lengths
  3. Counters
  4. Boxes
  5. Rules and Struts

Technical Text

  1. Mathematics
  2. Advanced Mathematics
  3. Theorems
  4. Chemical Graphics
  5. Algorithms
  6. Source Code Listings
  7. Linguistics

Special Pages

  1. Indexing
  2. Glossary
  3. Bibliography Management
  4. More Bibliographies

Special Documents

  1. Scientific Reports (Bachelor Report, Master Thesis, Dissertation)
  2. Letters
  3. Presentations
  4. Teacher's Corner
  5. Curriculum Vitae
  6. Academic Journals (MLA, APA, etc.)

Creating Graphics

  1. Introducing Procedural Graphics
  2. MetaPost
  3. Picture
  4. PGF/TikZ
  5. PSTricks
  6. Xy-pic
  7. Creating 3D graphics


  1. Macros
  2. Plain TeX
  3. Creating Packages
  4. Creating Package Documentation
  5. Themes


  1. Modular Documents
  2. Collaborative Writing of LaTeX Documents
  3. Export To Other Formats

Help and Recommendations

  1. FAQ
  2. Tips and Tricks


  1. Authors
  2. Links
  3. Package Reference
  4. Sample LaTeX documents
  5. Index
  6. Command Glossary

edit this boxedit the TOC

A curriculum vitæ or résumé has a universal requirement: its formatting must be flawless. This is a great example of cases where the power of LaTeX comes to the front. Thanks to its strong typographical stance, LaTeX is definitely a document processor of choice to write a CV.

Of course you can design your own CV by hand. Otherwise, you may want to use a dedicated class for that task. This way, writing a CV in LaTeX is as simple as filling the forms, and you are done. The important thing to mention is that a class or package not only defines the syntax of the form to be filled out, but also the layout. While filling out a form is very easy, changing a layout that is supposed to be fixed, is extremely hard. Best results will be achieved when doing a CV from scratch, using list environments and tabulars.

⇒ Be aware of res.cls which is still used by some people. It is a very old class, that is nearly impossible to customize. Only very experienced users should use res.cls. ⇐

A full list of CV packages is available at CTAN.


[edit | edit source]
\documentclass[utf8, a4paper, 10pt, helvetica, narrow, flagWB, booktabs, totpages, english]{europecv}
\usepackage{graphicx}                        % Required to draw the flag
\usepackage[a4paper, left=3cm, right=2cm, top=2cm, bottom=2cm]{geometry} 

% Commands europecv

\ecvLogoWidth{12mm}		             % Size logo europass
%\ecvLeftColumnWidth{4cm}		     % Size of column and vertical line (different from standard)
%\ecvfootnote{footnote}	             % Foot notes
\ecvname{\textsc{Surname}, First Name}

% Personal picture

\ecvpicture[height=1in]{namefile_pic}   % File picture without extension                 
\ecvafterpicture{\ecvspace{-2.5cm} }

% Address

\ecvaddress{Address first line\\& Address second line\\& City, State}

% Telephone 

\ecvtelephone{+44 (0) 123 4567}
%\ecvfax{+39 01234567}


% Other personal info



% Begin europecv environment


\ecvpersonalinfo		% Print personal info in preamble

\ecvitem{}{}		% 1 free line - \ecvitem{}{} adds elements to a section
%\ecvsection{}		% \ecvsection{} adds sections

\ecvitem{\large\textbf{Desired employment / Occupational field} }{\Large\textbf{Dream job} }  % desired job

% Sections

% School

\ecvsection{Education and training}

\ecvitem{Dates}{From September 1900 to August 1905}\\
\ecvitem{Title of qualification awarded}{Name of the\\& degree}\\
\ecvitem{Principal subjects/occupational skills covered}{Learned skills}\\
\ecvitem{Name and type of organisation providing education and training}{My University\\&
City\\& Nation\\&
Post code\\&
Tel. +44 (0) 123 45678 23}\\
\ecvitem{Level in national or international classification}{Level of degree}\\


% Single course

\ecvitem{Dates}{August 2013}
\ecvitem{Title of qualification awarded}{Name of certification}
\ecvitem{Principal subjects/occupational skills covered}{Skills of certification}
\ecvitem{Name and type of organisation providing education and training}{Institution}\\

% Last working experience

\ecvsection{Work Experience}
\ecvitem{Dates}{From June 1957 to February 1987}\\
\ecvitem{Occupation or position held}{Name of the job}\\
\ecvitem{Main activities and responsibilities}{Activities during \\& this job}
\ecvitem{Name and address of employer}{Name of employer\\&
Employer address\\&
Second line\\& City\\& Nation\\&
Tel. +39 (0) 1234 5678}\\
\ecvitem{Type of business or sector}{Business}\\

% Volunteer experiences

\ecvsection{Volunteer Experience}

\ecvitem{Dates}{From August 2000 to present}\\
\ecvitem{Occupation or position held}{First Aider}\\
\ecvitem{Main activities and responsibilities}{Activities}
\ecvitem{Name and address of employer}{Name\\&
City\\& Post code\\&
Tel. +44 (0) 1234 7654}\\
\ecvitem{Type of business or sector}{Business}\\

% Personal competences

\ecvsection{Personal skills and competences}

% Languages

% Mothertongue

\ecvmothertongue[10pt]{Italian}\\		% 10pt leave a one-char line space before the text

% Table for common language evaluation

\ecvlanguage{English}{\ecvCOne}{\ecvCOne}{\ecvCOne}{\ecvCOne}{\ecvCOne}	         % second language and levels
      % Language levels A1 - A2 - B1 - B2 - C1 - C2 from basic to advanced.
      % in this package are \ecv + A, B or C and the sub-level in letters (One or Two)
\ecvlanguage{French}{\ecvBTwo}{\ecvBTwo}{\ecvBTwo}{\ecvBTwo}{\ecvBTwo}       % third
\ecvlastlanguage{Russian}{\ecvAOne}{\ecvATwo}{\ecvBOne}{\ecvCTwo}{\ecvBTwo} 	% last language


% Social skills

\ecvitem{Social skills and competences}{- First social skill;\\& - Second social skill}\\

% Technical skills

\ecvitem{Technical skills and competences}{- First technical skill;\\& - Second technical skill}\\

% Computer skills

\ecvitem{Computer skills and competences}{- First skill;\\& - Second}\\

% Other skills

\ecvitem{Other skills and competences}{- First otherskill}\\

% Driving Licence

\ecvitem{Driving licence(s)}{Category and Type}\\

% Annexes

\ecvitem{}{On request:}
\ecvitem{}{Birth certificate}
\ecvitem{}{Driving licence}
\ecvitem{}{Criminal record certificate}
\ecvitem{}{University study plan}

% Disclaimer

\ecvitem{}{This informations may be used for all purposes permitted by law and under the Data Protection Act 1998.\\&
Autorizzo l'utilizzo dei dati personali contenuti nel presente curriculum ai sensi del D.Lgs. 196/2003 e s.m.i. (Codice in materia di protezione dei dati personali)}



[edit | edit source]

From CTAN:

Moderncv pro­vides a doc­u­ment­class for type­set­ting mod­ern cur­ricu­lums vi­tae, both in a clas­sic and in a ca­sual style. It is fairly cus­tomiz­able, al­low­ing you to de­fine your own style by chang­ing the colours, the fonts, etc.

The official package provides some well commented templates which may be a good start. You can find those templates in your distribution (if documentation is installed along packages) or ultimately on CTAN.

We will not repeat the templates here, so we will only provide a crash course. You should really have a look at the templates for more details.

First document

[edit | edit source]

Most commands are self-explanatory.


%% ModernCV themes

%% Character encoding

%% Adjust the page margins

%% Personal data
\title{Resumé title (optional)} 
\address{Mdakane Thokoza}{Alberton Ward52} 
\extrainfo{additional information} 
\quote{Some quote (optional)}

%% Content

\cventry{year--year}{None}{None}{Katlehong}{ \textit{Grade11} }{Description}  % arguments 3 to 6 can be left empty
\cvitem{title}{ \emph{Title} }
\cvitemwithcomment{Language 3}{Skill level}{Creative thinking, Dedicated and Hardworking}
\cvdoubleitem{category X}{XXX, YYY, ZZZ}{category Y}{XXX, YYY, ZZZ}
\cvlistitem{Item 1}
\cvlistdoubleitem{Item 2}{Item 3}
%% ...

%% A publications list
\bibliography{publications} % a bibtex file containing the list of publications


Theme previews

[edit | edit source]

A customizable Layout

[edit | edit source]

There is no need to use a complicated template with a given layout that is hard to change. You can just as well use the simple article class to write up a CV. You are free to decide about the amount of information, the layout of the information and the order in which you want to show the info. You are the designer and not restricted to any syntax.

\huge\textbf{John} &\huge\textbf{Birdwatch}\\
+44 1234 9876 &\\
Sunny Lane 15 &Duckbourgh\end{tabular}
\section{Computer Skills}
\LaTeX, PERL, Windows, Linux
\textbf{Master of Arts in 2015} 
for \textsc{Pigeons love doves}\par
\textbf{Bachelor of Arts in 2013} 
for \textsc{Pigeons in Cities}
John Birdwatch, \textsc{Pigeons love doves}, 
Master Thesis, Columbidae University, 2015\par
Laura Lion, John Birdwatch and Paul Platypus, 
{\itshape Journal of excessive Bird Watchers}: 
``Observations made in the Duck Pond", 2016\par

The example above has a simple centered header including name and personal information. The publications section is done completely by hand. If you have many publications, you should consider using a bibliography management package, see Biblatex. Another small example that uses package biblatex.

author      = {John Birdwatch},
title       = {Pigeons love ducks},
type        = {mathesis},
institution = {Columbidae University},
location    = {Duckbourgh},
date        = {2015},
keywords    = {ownpub},
author   = {Laura Lion and John Birdwatch and Paul Platypus},
title    = {Observations made in the Duck Pond},
journal  = {Journal of excessive Bird Watchers},
date     = {2016},
keywords = {ownpub},
{\huge\textbf{John Birdwatch}\par}
+44 1234 9876 \par\par
Sunny Lane 15 \par Duckbourgh\par
\begin{labeling}{Longest list item}
\item [Computer Skills] \LaTeX, PERL, Windows, Linux
\item [Education] \parbox[t]{.8\textwidth}{
Master of Arts in 2015 for \textsc{Pigeons love doves}\par
Bachelor of Arts in 2013 for \textsc{Pigeons in Cities}
\section{Former watches}
\item[2011 (three months)] Birdwatching in Iceland \\ one month in the capital \\ two months driving around the island
\item[2012 (six weeks), 2017 (8 weeks)] The Canopy Tower in Panama\bigskip
\item[2013 (one week)] Venice, Italy

Multilingual support

[edit | edit source]

It is especially convenient for résumés to have only one document for several output languages, since many parts are shared among versions (personal data, structure, etc.).

LaTeX with appropriate macros provide a comfortable way to manage it. See Internationalization.


[edit | edit source]

Previous: Teacher's Corner Index Next: Introducing Procedural Graphics