summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/pas-cv/latex/pas-cv.sty
blob: 524151b3b39cff5a1679c0a559ea7c82962456da (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%                                                               %
%    		 pas-cv.sty  V2.01       encodage : UTF-8           %
%                                                               %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%                                                               %
%           	Créé par Stéphane PASQUET 		          		%
%                                                               %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Objet :  Outils pour la création de cv avec TiKZ

\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{pas-cv}[2013/11/26]

% <----------------- Chargement des extensions ---------------------->
\RequirePackage{xkeyval}
\RequirePackage{graphicx}
\RequirePackage{tikz}
\usetikzlibrary{shadows,calc,fadings,shapes.geometric,patterns,decorations.pathmorphing}
\RequirePackage{eso-pic}
\RequirePackage{fp}
\RequirePackage{geometry} % ATTENTION ! Il faut une M.A.J. récente !
\typeout{======> NOTE DE L'AUTEUR : Attention : vous devez disposer d'une mise a jour recente de TiKZ et du package geometry sans quoi, une erreur de compilation apparaitra au niveau des commandes CVmargins et CVclearpage. <======}
\input{macro-jupiter}
\input{macro-architecte}
\input{macro-dynamique}
\input{macro-saturne}
\input{macro-univers}
\input{macro-venus}
\input{macro-uranus}
\input{macro-mars}
\input{macro-neptune}
\input{macro-pluton}
\input{macro-gaia}
\input{macro-pegase}
\input{macro-andromede}
\input{macro-orion}
\input{macro-centaure}

% <----------------- Création du fond de page ---------------------->

\define@cmdkey [PAS] {bg} {modele}{}
\define@cmdkey [PAS] {bg} {bgcolor}{}
\define@cmdkey [PAS] {bg} {bordercolor}{}
\define@cmdkey [PAS] {bg} {postesize}{}
\define@cmdkey [PAS] {bg} {postecolor}{}
\define@cmdkey [PAS] {bg} {poste}{}
\define@cmdkey [PAS] {bg} {pic}{}
\define@cmdkey [PAS] {bg} {borderpic}{}
\define@cmdkey [PAS] {bg} {scalepic}{}
\presetkeys    [PAS] {bg} {modele=,bgcolor=black,bordercolor=red,postesize=\Huge,postecolor=white,poste=,pic=,borderpic=,scalepic=1}{}

\newcommand*\CVbg[1][]{%
	\setkeys[PAS]{bg}{#1}
	\AddToShipoutPicture{%
		\AtPageLowerLeft{%
			\begin{tikzpicture}
				\clip (0,0) rectangle+(\paperwidth,-\paperheight);
				\ifx\cmdPAS@bg@modele\modele@jupiter\fond@jupiter\fi
				\ifx\cmdPAS@bg@modele\modele@architecte\fond@architecte\fi
				\ifx\cmdPAS@bg@modele\modele@dynamique\fond@dynamique\fi
				\ifx\cmdPAS@bg@modele\modele@saturne\fond@saturne\fi
				\ifx\cmdPAS@bg@modele\modele@univers\fond@univers\fi
				\ifx\cmdPAS@bg@modele\modele@venus\fond@venus\fi
				\ifx\cmdPAS@bg@modele\modele@uranus\fond@uranus\fi
				\ifx\cmdPAS@bg@modele\modele@mars\fond@mars\fi
				\ifx\cmdPAS@bg@modele\modele@neptune\fond@neptune\fi
				\ifx\cmdPAS@bg@modele\modele@pluton\fond@pluton\fi
				\ifx\cmdPAS@bg@modele\modele@gaia\fond@gaia\fi
				\ifx\cmdPAS@bg@modele\modele@pegase\fond@pegase\fi
				\ifx\cmdPAS@bg@modele\modele@andromede\fond@andromede\fi
				\ifx\cmdPAS@bg@modele\modele@orion\fond@orion\fi
				\ifx\cmdPAS@bg@modele\modele@centaure\fond@centaure\fi
			\end{tikzpicture}
		}
	}
}

% <----------------- Création du cadre "identité"  à gauche ---------------------->
\newcommand*\infoLeft[1]
{%
	\ifx\cmdPAS@bg@modele\modele@jupiter\infoLeft@jupiter{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@architecte\infoLeft@architecte{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@dynamique\infoLeft@dynamique{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@saturne\infoLeft@saturne{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@univers\infoLeft@univers{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@venus\infoLeft@venus{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@uranus\infoLeft@uranus{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@mars\infoLeft@mars{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@neptune\infoLeft@neptune{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@pluton\infoLeft@pluton{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@gaia\infoLeft@gaia{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@pegase\infoLeft@pegase{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@andromede\infoLeft@andromede{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@orion\infoLeft@orion{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@centaure\infoLeft@centaure{#1}\fi
}

% <----------------- Création du cadre "identité"  à droite ---------------------->
\newcommand*\infoRight[1]
{%
	\ifx\cmdPAS@bg@modele\modele@jupiter\infoRight@jupiter{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@architecte\infoRight@architecte{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@dynamique\infoRight@dynamique{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@saturne\infoRight@saturne{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@univers\infoRight@univers{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@venus\infoRight@venus{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@uranus\infoRight@uranus{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@mars\infoRight@mars{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@neptune\infoRight@neptune{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@pluton\infoRight@pluton{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@gaia\infoRight@gaia{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@pegase\infoRight@pegase{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@andromede\infoRight@andromede{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@orion\infoRight@orion{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@centaure\infoRight@centaure{#1}\fi
}

% <----------------- Définition des marges ---------------------->
\newcommand*\CVmargins{%
	\ifx\cmdPAS@bg@modele\modele@jupiter\margins@jupiter\fi
	\ifx\cmdPAS@bg@modele\modele@architecte\margins@architecte\fi
	\ifx\cmdPAS@bg@modele\modele@dynamique\margins@dynamique\fi
	\ifx\cmdPAS@bg@modele\modele@saturne\margins@saturne\fi
	\ifx\cmdPAS@bg@modele\modele@univers\margins@univers\fi
	\ifx\cmdPAS@bg@modele\modele@venus\margins@venus\fi
	\ifx\cmdPAS@bg@modele\modele@uranus\margins@uranus\fi
	\ifx\cmdPAS@bg@modele\modele@mars\margins@mars\fi
	\ifx\cmdPAS@bg@modele\modele@neptune\margins@neptune\fi
	\ifx\cmdPAS@bg@modele\modele@pluton\margins@pluton\fi
	\ifx\cmdPAS@bg@modele\modele@gaia\margins@gaia\fi
	\ifx\cmdPAS@bg@modele\modele@pegase\margins@pegase\fi
	\ifx\cmdPAS@bg@modele\modele@andromede\margins@andromede\fi
	\ifx\cmdPAS@bg@modele\modele@orion\margins@orion\fi
	\ifx\cmdPAS@bg@modele\modele@centaure\margins@centaure\fi
}

% <----------------- Définition des titres ---------------------->
\define@cmdkey [PAS] {title} {color}{}
\define@cmdkey [PAS] {title} {bordercolor}{}
\presetkeys    [PAS] {title} {color=black,bordercolor=black}{}

\newcommand*\CVtitle[2][]{%
	\setkeys[PAS]{title}{#1}
	\ifx\cmdPAS@bg@modele\modele@jupiter\title@jupiter{#2}\fi
	\ifx\cmdPAS@bg@modele\modele@architecte\title@architecte{#2}\fi
	\ifx\cmdPAS@bg@modele\modele@dynamique\title@dynamique{#2}\fi
	\ifx\cmdPAS@bg@modele\modele@saturne\title@saturne{#2}\fi
	\ifx\cmdPAS@bg@modele\modele@univers\title@univers{#2}\fi
	\ifx\cmdPAS@bg@modele\modele@venus\title@venus{#2}\fi
	\ifx\cmdPAS@bg@modele\modele@uranus\title@uranus{#2}\fi
	\ifx\cmdPAS@bg@modele\modele@mars\title@mars{#2}\fi
	\ifx\cmdPAS@bg@modele\modele@neptune\title@neptune{#2}\fi
	\ifx\cmdPAS@bg@modele\modele@pluton\title@pluton{#2}\fi
	\ifx\cmdPAS@bg@modele\modele@gaia\title@gaia{#2}\fi
	\ifx\cmdPAS@bg@modele\modele@pegase\title@pegase{#2}\fi
	\ifx\cmdPAS@bg@modele\modele@andromede\title@andromede{#2}\fi
	\ifx\cmdPAS@bg@modele\modele@orion\title@orion{#2}\fi
	\ifx\cmdPAS@bg@modele\modele@centaure\title@centaure{#2}\fi
}

% <----------------- Effacer le fond ---------------------->
\newcommand*\CVclearpage{%
	\newpage
	\ClearShipoutPicture
	\AddToShipoutPicture{%
		\AtPageLowerLeft{%
			\begin{tikzpicture}
				\clip (0,0) rectangle+(\paperwidth,-\paperheight);
				\ifx\cmdPAS@bg@modele\modele@jupiter\clearpage@jupiter\fi
				\ifx\cmdPAS@bg@modele\modele@architecte\clearpage@architecte\fi
				\ifx\cmdPAS@bg@modele\modele@saturne\clearpage@saturne\fi
				\ifx\cmdPAS@bg@modele\modele@univers\clearpage@univers\fi
				\ifx\cmdPAS@bg@modele\modele@venus\clearpage@venus\fi
				\ifx\cmdPAS@bg@modele\modele@uranus\clearpage@uranus\fi
				\ifx\cmdPAS@bg@modele\modele@mars\clearpage@mars\fi
				\ifx\cmdPAS@bg@modele\modele@neptune\clearpage@neptune\fi
				\ifx\cmdPAS@bg@modele\modele@pluton\clearpage@pluton\fi
				\ifx\cmdPAS@bg@modele\modele@gaia\clearpage@gaia\fi
				\ifx\cmdPAS@bg@modele\modele@pegase\clearpage@pegase\fi
				\ifx\cmdPAS@bg@modele\modele@andromede\clearpage@andromede\fi
				\ifx\cmdPAS@bg@modele\modele@orion\clearpage@orion\fi
				\ifx\cmdPAS@bg@modele\modele@centaure\clearpage@centaure\fi
			\end{tikzpicture}
		}
	}
	\ifx\cmdPAS@bg@modele\modele@jupiter\clearmargins@jupiter\fi
	\ifx\cmdPAS@bg@modele\modele@architecte\clearmargins@architecte\fi
	\ifx\cmdPAS@bg@modele\modele@dynamique\clearmargins@dynamique\fi
	\ifx\cmdPAS@bg@modele\modele@saturne\clearmargins@saturne\fi
	\ifx\cmdPAS@bg@modele\modele@univers\clearmargins@univers\fi
	\ifx\cmdPAS@bg@modele\modele@venus\clearmargins@venus\fi
	\ifx\cmdPAS@bg@modele\modele@uranus\clearmargins@uranus\fi
	\ifx\cmdPAS@bg@modele\modele@mars\clearmargins@mars\fi
	\ifx\cmdPAS@bg@modele\modele@neptune\clearmargins@neptune\fi
	\ifx\cmdPAS@bg@modele\modele@pluton\clearmargins@pluton\fi
	\ifx\cmdPAS@bg@modele\modele@gaia\clearmargins@gaia\fi
	\ifx\cmdPAS@bg@modele\modele@pegase\clearmargins@pegase\fi
	\ifx\cmdPAS@bg@modele\modele@andromede\clearmargins@andromede\fi
	\ifx\cmdPAS@bg@modele\modele@orion\clearmargins@orion\fi
	\ifx\cmdPAS@bg@modele\modele@centaure\clearmargins@centaure\fi
}

% <----------------- Redéfinition de la hauteur ---------------------->
\newcommand*\CVh[1]{%
	\ifx\cmdPAS@bg@modele\modele@jupiter\def\cv@h@jupiter{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@architecte\def\cv@h@architecte{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@dynamique\def\cv@h@dynamique{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@saturne\def\cv@h@saturne{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@univers\def\cv@h@univers{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@venus\def\cv@h@venus{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@uranus\def\cv@h@uranus{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@mars\def\cv@h@mars{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@neptune\def\cv@h@neptune{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@pluton\def\cv@h@pluton{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@gaia\def\cv@h@gaia{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@pegase\def\cv@h@pegase{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@andromede\def\cv@h@andromede{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@orion\def\cv@h@orion{#1}\fi
	\ifx\cmdPAS@bg@modele\modele@centaure\def\cv@h@centaure{#1}\fi
}
\endinput