% Compilation : Latex + dvips + ps2pdf
% Le package "pas-doc.sty" est téléchargeable sur http://upload.mathweb.fr
\documentclass[10pt,a4paper]{article}
\usepackage{pas-doc}
%\usepackage{pas-cv}
\title{Documentation\\ \texttt{pas-cv.sty 2.01}}

\begin{document}

\lstset{
	numbers=left, 
	numberstyle=\tiny, 
	stepnumber=1, 
	numbersep=3pt, 
	language=[LaTeX]TeX, 
	backgroundcolor=\color{brown!10},
	frame=shadowbox,
	rulesepcolor=\color{brown},
	rulecolor=\color{brown},
	framexleftmargin=10pt,
	keywordstyle=\color{green!50!black}\bfseries,
	basicstyle=\ttfamily,
    columns=flexible,
    keepspaces=true,
    upquote=true,
    commentstyle=\color{gray},
    morekeywords={cv@h@,LenToUnit,cmdPAS@title@color,cmdPAS@title@bordercolor,fond@,margins@,infoRight@,infoLeft@,clearpage@,clearmargins@,modele@,title@,AddToShipoutPicture,CVh,CVbg,infoLeft,infoRight,CVmargins,CVtitle,CVclearpage,newgeometry}
}

\head

\section{Introduction et installation}

\subsection{Généralités}

Le package \texttt{pas-cv} a été conçu dans le but de faciliter la création de CV. Il a été codé en ANSI ; ainsi, si vous compilez vos documents en utf-8, vous devez convertir le package en utf-8 (à l'aide de notepad Plus ou tout autre éditeur).\\
Il s'installe dans le répertoire \texttt{texmf\textbackslash tex\textbackslash latex\textbackslash pas-cv}. 

\medskip

\textbf{Utilisateurs de Windows :} Si ce chemin n'existe pas, je vous conseille de le créer sur la partition où vous mettez tous vos documents (et que vous sauvegardez régulièrement ...) afin de ne pas écraser les packages installés manuellement quand vous installez une nouvelle version de Miktex.\\
Une fois le chemin créé, lancez le manager de Miktex, puis cliquez sur l'onglet \texttt{Root}, puis sur le bouton \texttt{Add ...} afin d'ajouter ce chemin dans la configuration de Miktex. Ensuite, revenez sur l'onglet \texttt{General} et cliquez sur le bouton \texttt{Refresh FNDB} pour rafraîchir la base de données et prendre en considération les packages installés sur le nouveau chemin.

\subsection{Extensions externes chargées}

Le package \texttt{pas-cv} charge automatiquement les extensions suivantes :

\begin{description}
\item[\starredbullet] \textbf{graphicx}, pour l'insertion de la photo d'identité.
\item[\starredbullet] \textbf{tikz}, pour la partie graphique.
\item[\starredbullet] Les librairies \textbf{shadows, calc, fadings, patterns, shapes.geometric, decorations.pathmorphing} de TiKZ.
\item[\starredbullet] \textbf{xkeyval}, pour les options de certaines macro.
\item[\starredbullet] \textbf{eso-pic}, pour mettre les fonds de page.
\item[\starredbullet] \textbf{geometry (m.a.j. récente obligatoire)}, pour les marges.
\end{description}

\section{L'architecture du fichier STY}

L'extension fait appel à d'autres fichiers TEX qui définissent chacun les macros pour les différents styles.\\
Ainsi, vous pouvez vous-même créer vos propres styles (voir plus loin). Dans ce cas, n'hésitez pas à m'envoyer votre travail !

\newpage

\section{Les commandes}

\subsection{Création du style du CV}

\subsubsection{Syntaxe}

\begin{lstlisting}
\CVbg[<options>]
\end{lstlisting}

\medskip

Les options sont les suivantes :

\medskip

\begin{tabular}{|>{\columncolor{red!20}}c|>{\columncolor{red!10}}c|p{.7\textwidth}|}
\hline
\texttt{modele} & (texte) & Nom du modèle choisi.\\
\hline
\texttt{bgcolor} & (texte) & Couleur dominante. Par défaut, bgcolor=black.\\
\hline
\texttt{bordercolor} & (texte) & Couleur des lignes ou couleur secondaire (selon les modèles). Par défaut, bordercolor=red.\\
\hline 
\texttt{postesize} & (texte) & Taille du poste. Par défaut, postesize=\textbackslash Huge.\\
\hline
\texttt{postecolor} & (texte) & Couleur en laquelle sera écrit le poste. Par défaut, postecolor=white.\\
\hline 
\texttt{poste} & (texte) & Intitulé du poste qui fait l'objet du CV. Par défaut, il est vide.\\
\hline
\texttt{pic} & (texte) & Chemin et nom de la photo à insérer. Par défaut, il est vide.\\
\hline
\texttt{borderpic} & (texte) & Couleur du cadre de la photo. Par défaut, elle est vide, donc le cadre n'est pas dessiné.\\
\hline
\texttt{scalepic} & (réel) & Coefficient d'agrandissement ou de réduction de la photo. Par défaut, scalepic=1.\\
\hline
\end{tabular}

\subsubsection{Exemple}

\begin{lstlisting}
\CVbg[%
	modele=saturne,%
	bgcolor=green,%
	bordercolor=gray,%
	poste={Enseignant en Mathématiques},%
	postesize=\huge,%
	postecolor=green!25!white,%
	pic=photo.png,%
	borderpic=green!33!black,%
	scalepic=.33]
\end{lstlisting}

\subsection{Informations personnelles}

\subsubsection{Syntaxe}

\begin{lstlisting}
\infoLeft{...}  % Informations mises à gauche
\infoRight{...} % Informations mises à droite
\end{lstlisting}

\medskip

Ces commandes placent des \texttt{minipages} aux endroits adéquats selon les modèles.

\newpage 

\subsubsection{Exemple}

\begin{lstlisting}
\infoLeft{%
Jean DUPONT\\
3, rue de la liberté\\
Résidence Jean MONNET, APT 18\\
33000 BORDEAUX
%
\vskip 2mm
%
05.56.31.32.33.\\
06.98.52.36.12.
}
\infoRight{%
37 ans\\
Célibataire\\
Sans enfant à charge\\
Nationalité française\\
Email : \href{mailto:mon.nom@domaine.fr}{mon.nom@domaine.fr}\\
Site personnel : \url{http://www.domaine.fr}
}
\end{lstlisting}

\subsection{Définition des marges}

Après avoir inséré vos informations personnelles, il faut définir les marges avec la commande :

\medskip

\begin{lstlisting}
\CVmargins
\end{lstlisting}

\medskip

Celles-ci sont automatiquement définies selon le modèle choisi.

\subsection{Les titres}

Dans un CV, il y a différentes catégories : \og Expériences professionnelles \fg, \og Diplômes \fg, ...\\
Chacune de ces catégories doit posséder un titre, qui se construit avec la commande suivante :

\medskip

\begin{lstlisting}
\CVtitle[<options>]{Le titre}
\end{lstlisting}

\medskip

Les options sont les suivantes :

\medskip

\begin{tabular}{|>{\columncolor{red!20}}c|>{\columncolor{red!10}}c|p{.7\textwidth}|}
\hline
\texttt{color} & (texte) & Couleur dominante. Par défaut, bgcolor=black.\\
\hline
\texttt{bordercolor} & (texte) & Couleur des lignes ou couleur secondaire (selon les modèles). Par défaut, bordercolor=black.\\
\hline 
\end{tabular}

\subsubsection{Exemple}

\begin{lstlisting}
\CVtitle[color=green!33!black,bordercolor=green!33!black]{Diplômes}
\end{lstlisting}

\subsection{Créer une nouvelle page}

Si votre CV ne tient pas sur une seule page, afin de répéter le même style sur les autres pages, il vous faudra utiliser la commande suivante :

\begin{lstlisting}
\CVclearpage
\end{lstlisting}

\medskip

Cette commande créera alors une nouvelle page (à l'aide de la commande \texttt{\textbackslash newpage}), effacera ce qui est inutile, redéfinira les marges et mettra en fond quelques éléments du modèle.

\subsection{Modifier la hauteur de l'en-tête}

\begin{lstlisting}
% A insérer après la commande \CVbg
\CVh{<hauteur en cm>}
\end{lstlisting}

\medskip

Cette commande est utile lorsque les informations sont peu nombreuses et tiennent sur trio lignes par exemple. Dans ce cas, le rectangle horizontal (pour la plupart des modèles) est bien trop bas par rapport aux informations et on peut donc, avec cette commande, le relever.

\medskip

Par défaut, la valeur de la hauteur est :

\medskip

\begin{center}
\begin{tabular}{|>{\columncolor{orange!20}}c|>{\columncolor{orange!10}}c||>{\columncolor{orange!20}}c|>{\columncolor{orange!10}}c}
\hline
\cellcolor{red!50!black}\color{white}Modèles & \cellcolor{red!50!black}\color{white}Valeurs par défaut & \cellcolor{red!50!black}\color{white}Modèles & \cellcolor{red!50!black}\color{white}Valeurs par défaut \\
\hline
Andromede & 2 & Orion & 4\\
\hline
Architecte & 4 & Pegase & 2\\
\hline
Centaure & 4& Pluton & 5\\
\hline
Dynamique & 5 & Saturne & 5\\
\hline
Gaia & 2 & Univers & 5\\
\hline
Jupiter & 4 & Uranus & 5\\
\hline
Mars & 4 &Venus & 4\\
\hline
Neptune & 4 & &\\
\hline
\end{tabular}
\end{center}

\section{De nouveaux modèles}

L'architecture du package permet d'ajouter facilement d'autres modèles (créés avec TiKZ).

\medskip

Chaque commande est définie dans le fichier \texttt{macro-<nom du modèle>}.tex.

\medskip

\subsection{Pour le fond du CV}

\begin{lstlisting}
\newcommand*\fond@<nom du modèle>{%
	Ici, tout ce qui est nécessaire pour créer le fond 
	+ le placement du poste 
	+ la photo
}
\end{lstlisting}

\medskip

Le coin supérieur gauche a pour coordonnées $(0;0)$ et le coin inférieur droit $(21;-29.7)$.

\subsection{Informations personnelles à gauche}

\begin{lstlisting}
\newcommand*\infoLeft@<nom du modèle>[1]{%
	\AddToShipoutPicture{%
		\put(\LenToUnit{Xcm},\LenToUnit{Ycm}){%
			\begin{minipage}{<largeur>}
				#1
			\end{minipage}
		}
	}
}
\end{lstlisting}

\newpage

\subsection{Informations personnelles à droite}

\begin{lstlisting}
\newcommand*\infoRight@<nom du modèle>[1]{%
	\AddToShipoutPicture{%
		\put(\LenToUnit{Xcm},\LenToUnit{Ycm}){%
			\begin{minipage}{<largeur>}
				#1
			\end{minipage}
		}
	}
}
\end{lstlisting}

\subsection{Les titres}

\begin{lstlisting}
\newcommand*\title@<nom du modèle>[1]{%
	Ici, tout ce qui définit le titre avec les options :
	\cmdPAS@title@color : couleur du titre
	\cmdPAS@title@bordercolor : couleur des éventuels lignes
}
\end{lstlisting}


\subsection{Les marges}

\begin{lstlisting}
\newcommand*\margins@<nom du modèle>{%
	\newgeometry{%
		tmargin=Tcm,% marge du haut
		bmargin=Bcm,% marge du bas
		lmargin=Lcm,% marge de gauche
		rmargin=Rcm% marge de droite
	}
}
\end{lstlisting}

\subsection{Effacer le tout pour les autres pages}

\begin{lstlisting}
\newcommand*\clearpage@<nom du modèle>{%
	Ce qui doit rester en fond sera écrit ici
}
\newcommand*\clearmargins@<nom du modèle>{%
	\newgeometry{%
		tmargin=Tcm,% marge du haut
		bmargin=Bcm,% marge du bas
		lmargin=Lcm,% marge de gauche
		rmargin=Rcm% marge de droite
	}
}
\end{lstlisting}

\medskip

Une fois que vous avez défini toutes ces commandes, mettez les lignes suivantes au début :

\medskip

\begin{lstlisting}
\def\modele@<nom du modèle>{<nom du modèle>}
\def\cv@h@<nom du modèle>{<hauteur en cm>}
\end{lstlisting}

\medskip

Puis enregistrez le fichier sous le nom : \texttt{macro-<nom du modèle>.tex}. Vous pouvez alors me l'envoyer afin de l'inclure dans le fichier STY.

\section{Ajouts au-dessus d'un modèle}

Il est quelque fois intéressant de pouvoir mettre des informations au niveau des graphiques mais les marges, quelques fois, ne le permettent pas. Dans ce cas, vous pouvez utiliser les commandes du package \texttt{eso-pic}, comme par exemple :

\medskip

\begin{lstlisting}
\AddToShipoutPicture
{%
	\put(\LenToUnit{Xcm},\LenToUnit{Ycm})
	{%
		Votre texte
	}
}
\end{lstlisting}

\medskip

Ici, X et Y sont les coordonnées d'un point sachant que l'origine est en bas à droite.

\section{Bug connus}

\begin{itemize}
\item Il semblerait qu'il y ait un problème avec l'impression papier du modèle \texttt{gaia} sous \texttt{Mac OS X}.
\item Une personne a eu des problèmes lors de l'affichage d'un CV conçu avec le modèle \texttt{pegase} sous \texttt{Mac}.
\end{itemize}

\end{document}