Créer un CV Professionnel avec LaTeX
🎓 Créer un CV Professionnel avec LaTeX
Section titled “🎓 Créer un CV Professionnel avec LaTeX”🎯 Objectif
Section titled “🎯 Objectif”Créer un CV moderne au format PDF avec design à deux colonnes, icônes professionnelles et mise en page précise.
Temps nécessaire : 1-2 heures
Niveau : Débutant
✅ Prérequis
Section titled “✅ Prérequis”- Système : Linux (Ubuntu/Kali) ou Windows 10/11
- Espace disque : 4-6 GB
- Connaissance : Utilisation basique du terminal
📚 Qu’est-ce que LaTeX ?
Section titled “📚 Qu’est-ce que LaTeX ?”Définition
Section titled “Définition”LaTeX (prononcé “latek” ou “latèque”) est un système de composition de documents basé sur le langage TeX. Contrairement aux traitements de texte classiques (Word, LibreOffice), LaTeX sépare le contenu de la mise en forme.
% Vous écrivez du code...\textbf{Texte en gras}
% LaTeX génère un PDF parfaitement formatéHistoire rapide
Section titled “Histoire rapide”| Année | Événement |
|---|---|
| 1978 | Donald Knuth crée TeX (prononcé “tek”) pour écrire des livres mathématiques |
| 1984 | Leslie Lamport développe LaTeX pour simplifier TeX |
| Années 90 | Adoption massive dans le monde académique |
| 2000+ | Utilisé pour thèses, articles scientifiques, livres techniques |
| Aujourd’hui | Standard pour documents scientifiques, CV techniques, présentations |
Utilisations courantes
Section titled “Utilisations courantes”🎓 Monde académique
- Thèses et mémoires
- Articles scientifiques (physique, mathématiques, informatique)
- Publications IEEE, ACM, Springer
💼 Monde professionnel
- CV techniques (développeurs, ingénieurs, chercheurs)
- Rapports techniques avec équations
- Documentation de logiciels
- Livres techniques
📊 Avantages spécifiques
- ✅ Équations mathématiques parfaites : $E = mc^2$
- ✅ Bibliographie automatique (BibTeX)
- ✅ Numérotation automatique (sections, figures, tableaux)
- ✅ Table des matières générée automatiquement
- ✅ Qualité typographique professionnelle
🎯 Pourquoi LaTeX pour un CV ?
| Critère | Word/Google Docs | LaTeX |
|---|---|---|
| Précision | ⚠️ Décalages possibles | ✅ Millimétrique |
| Reproductibilité | ❌ Variable selon système | ✅ Identique partout |
| Versionning | ⚠️ Difficile avec Git | ✅ Format texte, Git friendly |
| Professionnalisme | ⚠️ Standard | ✅ Reconnu dans la tech |
| Personnalisation | ⚠️ Limité par l’interface | ✅ Contrôle total du code |
🛠️ Installation
Section titled “🛠️ Installation”Linux (Ubuntu/Kali)
Section titled “Linux (Ubuntu/Kali)”# Mise à jour du systèmesudo apt update && sudo apt upgrade -y
# Installation de LaTeXsudo apt install texlive-full latexmk -y
# Installation des polices Microsoftsudo apt install ttf-mscorefonts-installer -y# ⚠️ Appuyez sur Tab puis Entrée pour accepter la licence
# Mise à jour du cache des policessudo fc-cache -fv
# Vérificationxelatex --versionfc-list | grep -i arialWindows
Section titled “Windows”- Télécharger MikTeX : https://miktex.org/download
- Installer avec option “Install missing packages: Yes”
- Ouvrir MikTeX Console → Packages
- Installer ces packages :
- fontawesome5
- xcolor
- geometry
- enumitem
- tikz (pgf)
VS Code (Recommandé)
Section titled “VS Code (Recommandé)”# Linuxsudo apt install code -ycode --install-extension James-Yu.latex-workshop
# Windows : Télécharger depuis https://code.visualstudio.com/# Installer l'extension "LaTeX Workshop"📝 Template de CV
Section titled “📝 Template de CV”Structure du projet
Section titled “Structure du projet”mkdir ~/Documents/mon-cv-latexcd ~/Documents/mon-cv-latextouch cv.texCode du CV (cv.tex)
Section titled “Code du CV (cv.tex)”% !TEX program = xelatex\documentclass[a4paper,9pt]{article}
% Packages\usepackage{fontspec}\usepackage[french]{babel}\usepackage[margin=0.5cm]{geometry}\usepackage{xcolor}\usepackage{fontawesome5}\usepackage{tikz}\usepackage{enumitem}\usepackage{parskip}
% Configuration\setlength{\parindent}{0pt}\setlength{\parskip}{0.5pt}\pagestyle{empty}
% Couleurs\definecolor{primary}{RGB}{0, 102, 204}\definecolor{darkbg}{RGB}{45, 45, 45}\definecolor{lighttext}{RGB}{255, 255, 255}\definecolor{darktext}{RGB}{20, 20, 20}\definecolor{separator}{RGB}{150, 150, 150}
% Police\defaultfontfeatures{Ligatures=TeX}\setmainfont{Arial}
% Listes compactes\setlist[itemize]{leftmargin=10pt, itemsep=0.4pt, topsep=0.8pt, nosep}
% Séparateur\newcommand{\sectionsep}{\vspace{0.15cm}\color{separator}\rule{\linewidth}{0.2pt}\vspace{0.15cm}}
\begin{document}
% Barre latérale\begin{tikzpicture}[remember picture,overlay] \fill[darkbg] (current page.north west) rectangle ([xshift=4.8cm]current page.south west);\end{tikzpicture}
\noindent% Colonne gauche (20%)\begin{minipage}[t]{0.20\textwidth} \vspace{0.3cm}
% Photo \begin{center} \begin{tikzpicture} \clip (0,0) circle (0.9cm); \fill[lighttext] (0,0) circle (0.9cm); % Pour ajouter photo : \node at (0,0) {\includegraphics[width=1.8cm]{photo.jpg}}; \end{tikzpicture} \end{center}
\vspace{0.4cm} \color{lighttext}
% Contact {\large\bfseries \faIcon{address-card} CONTACT}\\[5pt] \small \faIcon{mobile-alt} +229 XX XX XX XX\\[3pt] \faIcon{envelope} votre.email@exemple.com\\[3pt] \faIcon{map-marker-alt} Votre Ville\\[3pt]
\vspace{0.5cm}
% Compétences {\large\bfseries \faIcon{cogs} COMPÉTENCES}\\[5pt]
{\small\bfseries\color{primary}Sécurité}\\[2pt] \footnotesize • Audit sécurité\\ • Nmap, Burp Suite\\[4pt]
{\small\bfseries\color{primary}Réseaux}\\[2pt] \footnotesize • LAN, câblage\\ • Cisco certifications\\[4pt]
\vspace{0.5cm}
% Langues {\large\bfseries \faIcon{language} LANGUES}\\[5pt] \footnotesize \textbf{Français} : Natif (C2)\\[3pt] \textbf{Anglais} : Intermédiaire (B1)
\end{minipage}%\hspace{0.5cm}% Colonne droite (76%)\begin{minipage}[t]{0.76\textwidth} \vspace{0.3cm}
% En-tête {\Huge\bfseries\color{primary} Votre Nom}\\[3pt] {\large\bfseries\color{darktext} Votre Titre Professionnel}\\[5pt] {\color{primary}\rule{\linewidth}{1pt}}\\[6pt]
\small\color{darktext} \textbf{\faIcon{bullseye} Recherche :} Stage de 3 mois en sécurité informatique\\ \textbf{\faIcon{calendar-alt} Disponibilité :} Immédiate
\sectionsep
% Profil \textbf{\large\color{primary} \faIcon{user-tie} PROFIL}\\[3pt] \small\color{darktext} Étudiant en informatique avec formation en sécurité des systèmes et réseaux. Expérience en maintenance informatique et certifications Cisco.
\sectionsep
% Expérience \textbf{\large\color{primary} \faIcon{briefcase} EXPÉRIENCE}\\[3pt] \small\color{darktext} \textbf{\faIcon{calendar} Juil. - Sept. 2021}\\[2pt] \textbf{Stagiaire maintenance informatique}\\ \textit{Nom Entreprise, Ville}\\[3pt] \begin{itemize} \item Configuration systèmes d'exploitation \item Maintenance matériel informatique \item Câblage réseau (RJ45) \end{itemize}
\sectionsep
% Formation \textbf{\large\color{primary} \faIcon{graduation-cap} FORMATION}\\[3pt] \small\color{darktext}
\textbf{\faIcon{calendar} 2025 - En cours}\\[1pt] \textbf{Établissement} | Ville\\ Licence 3 : Sécurité des Systèmes et Réseaux\\[5pt]
\textbf{\faIcon{calendar} 2023 - 2025}\\[1pt] Licence 2 : Sécurité des Systèmes et Réseaux\\[5pt]
\textbf{\faIcon{calendar} 2025}\\[1pt] Certificat Cisco - Introduction à la cybersécurité
\vspace{0.2cm} \color{separator}\rule{\linewidth}{0.2pt} \vspace{0.15cm} \begin{center} \footnotesize\color{darktext} \faIcon{envelope} votre.email@exemple.com ~|~ \faIcon{mobile-alt} +229 XX XX XX XX \end{center}
\end{minipage}
\end{document}🎨 Architecture du CV LaTeX
Section titled “🎨 Architecture du CV LaTeX”Notre template CV utilise une structure à deux colonnes :
┌─────────────────────────────────────────┐│ ████████ │ ││ █ Photo █ │ Nom & Titre ││ ████████ │ ═══════════════ ││ │ ││ CONTACT │ PROFIL ││ 📞 Tel │ Description... ││ ✉️ Email │ ││ │ ─────────────── ││ COMPÉT. │ EXPÉRIENCE ││ • Réseau │ → Stage 2021 ││ • Sécu │ • Mission 1 ││ │ • Mission 2 ││ LANGUES │ ─────────────── ││ 🇫🇷 Français│ FORMATION ││ │ → Licence 2025 ││ Colonne │ Colonne droite ││ gauche │ (contenu principal) ││ 20% │ 76% │└─────────────────────────────────────────┘🚀 Compilation
Section titled “🚀 Compilation”Méthode 1 : Terminal
Section titled “Méthode 1 : Terminal”# Linux/Maccd ~/Documents/mon-cv-latexxelatex cv.texxdg-open cv.pdf # ou: open cv.pdf (Mac)
# Windowscd C:\Users\VotreNom\Documents\mon-cv-latexxelatex cv.texstart cv.pdfMéthode 2 : VS Code
Section titled “Méthode 2 : VS Code”- Ouvrir
cv.texdans VS Code - Ctrl+Alt+B → Compiler
- Ctrl+Alt+V → Voir le PDF
Script automatique (Linux)
Section titled “Script automatique (Linux)”cat > compile.sh << 'EOF'#!/bin/bashecho "🔄 Compilation..."xelatex -interaction=nonstopmode cv.tex > /dev/null 2>&1xelatex -interaction=nonstopmode cv.tex > /dev/null 2>&1if [ -f "cv.pdf" ]; then echo "✅ CV généré : cv.pdf" rm -f *.aux *.log *.out *.synctex.gzelse echo "❌ Erreur" exit 1fiEOFchmod +x compile.sh./compile.sh🔧 Personnalisation
Section titled “🔧 Personnalisation”Informations à modifier
Section titled “Informations à modifier”| Section | Ligne | À changer |
|---|---|---|
| Nom | ~160 | Votre Nom |
| Titre | ~161 | Votre Titre Professionnel |
| Téléphone | ~106 | +229 XX XX XX XX |
| ~107 | votre.email@exemple.com | |
| Ville | ~108 | Votre Ville |
Changer les couleurs
Section titled “Changer les couleurs”% Ligne ~26-30 : Modifier les couleurs
% Bleu (défaut)\definecolor{primary}{RGB}{0, 102, 204}
% Vert\definecolor{primary}{RGB}{0, 153, 76}
% Rouge\definecolor{primary}{RGB}{204, 0, 51}Ajouter une photo
Section titled “Ajouter une photo”% Ligne ~97 : Décommenter cette ligne\node at (0,0) {\includegraphics[width=1.8cm]{photo.jpg}};❌ Problèmes Courants
Section titled “❌ Problèmes Courants”Erreur : fontawesome5 introuvable
Section titled “Erreur : fontawesome5 introuvable”# Linuxsudo apt install texlive-fonts-extra -y
# Windows : MikTeX Console → Packages → Installer fontawesome5Erreur : Police Arial introuvable
Section titled “Erreur : Police Arial introuvable”# Linuxsudo apt install ttf-mscorefonts-installer -ysudo fc-cache -fvfc-list | grep -i arial
# Alternative : Changer de police\setmainfont{Liberation Sans} # Linux\setmainfont{Calibri} # WindowsCV sur 2 pages au lieu d’1
Section titled “CV sur 2 pages au lieu d’1”Solutions :
% 1. Réduire la taille de police\documentclass[a4paper,8pt]{article}
% 2. Réduire les marges\usepackage[margin=0.3cm]{geometry}
% 3. Réduire les espacements\setlength{\parskip}{0.2pt}Compilation lente
Section titled “Compilation lente”# Mettre à jour les caches (Linux)sudo fc-cache -fvsudo mktexlsr📚 Ressources
Section titled “📚 Ressources”Documentation
Section titled “Documentation”Templates populaires
Section titled “Templates populaires”- ModernCV - Classique
- Awesome-CV - Moderne
- AltaCV - Deux colonnes
Outils
Section titled “Outils”✅ Checklist Finale
Section titled “✅ Checklist Finale”Avant d’envoyer votre CV :
- Aucune faute d’orthographe
- CV sur 1 page
- Compilation sans erreur
- Liens cliquables testés
- Nom de fichier professionnel :
CV_NomPrenom_2025.pdf - Testé sur plusieurs viewers PDF
🎯 Conseils Pro
Section titled “🎯 Conseils Pro”Adapter selon le poste
Section titled “Adapter selon le poste”# Créer des versions spécialiséescv-cybersecurite.texcv-developpement.texcv-reseaux.texCompatible ATS (Systèmes de recrutement)
Section titled “Compatible ATS (Systèmes de recrutement)”✅ Bon : Titres standards, listes simples
❌ Éviter : Tableaux complexes, images de texte
Nommage de fichier
Section titled “Nommage de fichier”CV_ODJOUADE_Riyad_DevWeb_2025.pdf ✅ EXCELLENTcv.pdf ❌ MAUVAIS📝 Récapitulatif
Section titled “📝 Récapitulatif”- Sur Ubuntu : Installez
vsftpd(le serveur) - Sur Windows : Installez
FileZilla Client - Connectez-vous avec l’IP, le nom d’utilisateur et le mot de passe
- Glissez-déposez vos fichiers entre les deux panneaux
Résultat : Vous pouvez échanger des fichiers entre Windows et Ubuntu facilement !