\documentclass%
%[handout,t,xcolor={table,hyperref},fleqn]%
{beamer}
%\usepackage{pgfpages}
%\pgfpagesuselayout{8 on 1}[a4paper,border shrink=5mm]
\usetheme%
[hideothersubsections]
{PaloAlto}
\useinnertheme{rounded}
\usefonttheme[onlymath]{serif}
\setbeamercovered{dynamic}
\setbeamertemplate{navigation symbols}{}
\usepackage[frenchb]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{tikz}
\usepackage[frenchstyle]{kpfonts}

\begin{document}

\section{\textsc{Préambule}}

\begin{frame}[fragile]
\frametitle{\textsc{Polices   \LaTeX{} et typographie fine}}\framesubtitle{Préambule}\pause
	\begin{block}<+-> {\textsc{Je suppose au départ :}}
		\begin{itemize}
			\item<+->  que vous travaillez en  \LaTeXe{} ;
			\item<+->  avec des polices PostScript ;
        \begin{itemize}
        	\item gérées par \texttt{dvips} ou \texttt{pdfTeX} ;
        \end{itemize}
			\item<+->  et que vous connaissez les commandes de haut niveau,\\
								comme \verb=\textbf{...}=, ou \verb=\mathrm{...}=.
		\end{itemize}
	\end{block}
\end{frame}

\begin{frame}
\frametitle{\textsc{Polices   \LaTeX{} et typographie fine}}\framesubtitle{Préambule}\pause
	\begin{block}<+-> {\textsc{D'autre part :}}
		\begin{itemize}
			\item<+->  les polices historiques de \LaTeXe{} sont les polices \textit{metafont}, fichiers \texttt{mf,pk} ;
			\item<+->  les autres polices vectorielles sont:
			\begin{itemize}
				\item<+-> les polices \textit{postscript}, en \texttt{.pfb} le plus souvent ;
				\item<+-> les polices \textit{true type}, en \texttt{.ttf} ;
				\item<+-> les polices \textit{open type}, en \texttt{.otf} ;
			\end{itemize}
			\item<+->  \texttt{dvips} gère les polices \textit{postscipt};
			\item<+->  \texttt{pdfTeX} gère aussi les polices \textit{true type} avec un travail d'installation;
			\item<+->  \texttt{XeTeX} et \texttt{LuaTeX} gèrent aussi \textit{directement} les polices \texttt{ttf} et surtout \texttt{otf}.
		\end{itemize}
	\end{block}
\end{frame}

\begin{frame}
\frametitle{\textsc{Polices   \LaTeX{} et typographie fine}}\framesubtitle{Préambule}\pause
	\begin{block}<+-> {\textsc{Et enfin :}}
		\begin{itemize}
			\item<+->  \textit{fontinst} permet d'installer (assez) facilement des polices Postscript ;
			\item<+->  \textit{fontools} permet d'installer (assez) facilement des polices \texttt{ttf} ;
						pour les utiliser en \LaTeXe{}.
		\end{itemize}
		\begin{itemize}
			\item<+->  Pour utiliser facilement et complètement les polices \textit{OpenType},
			\item<+->  mieux vaut utiliser Lua\LaTeXe{} qui fonctionne maintenant très bien.
		\end{itemize}
	\end{block}\pause
	

\end{frame}

\section{\textsc{Les familles}}

\subsection{Texte}

\begin{frame}
\frametitle{\textsc{Les familles (prédéfinies) de polices}}\framesubtitle{Texte}\pause
  \begin{block}<+-> {\textsc{Les 3 familles (prédéfinies) de polices}   \LaTeX{} \textsc{sont}}
			\begin{itemize}
				\item<+->  \textrm{Les polices romaines : rm} ;
				\item<+->  Les polices sans-serif : sf ;
				\item<+->  \texttt{Les polices machine à écrire : tt}.
				\end{itemize}
	\end{block}
\end{frame}
			
\begin{frame}
\frametitle{\textsc{Comment modifier une famille par défaut ?}}\framesubtitle{Texte}\pause
  \begin{block}<+-> {\textsc{En utilisant un Package}}
			\begin{itemize}
				\item<+-> \textit{bookman, newcent, times, palatino} modifient les 3 familles de polices,
				
								 avec la police titre en romaine ;
				\item<+-> \textit{helvet, avant} modifient les familles sans-serif ;
				\item<+-> \textit{courier, luximono} modifient les familles télétype ;
				\item<+-> \dots  
				\item<+-> \textit{helvet, luximono} prennent en option un coefficient de taille pour s'adapter à toutes	
								les polices romaines.
			\end{itemize}
  \end{block}
\end{frame}
			
\begin{frame}[fragile]
\frametitle{\textsc{Comment modifier une famille par défaut ?}}\framesubtitle{Texte}\pause
  \begin{block}<+-> {\textsc{Sans utiliser de Package}}
  \begin{itemize}
  \item<+-> Pour un document ou une partie de document, on utilise les commandes :
			\begin{itemize}
				\item<+-> \verb=\renewcommand{\rmdefault}{=\textsl{jkp}\texttt{\}}
				\item<+-> \verb=\renewcommand{\sfdefault}{=\textsl{jkpss}\texttt{\}}  
				\item<+-> \verb=\renewcommand{\ttdefault}{=\textsl{jkptt}\texttt{\}}
				\item<+-> \verb=\renewcommand{\familydefault}{=\textsl{jkpss}\texttt{\}}
			\end{itemize}
	\item<+-> on décrira plus loin comment avoir une modification \og plus locale \fg.
	\end{itemize}
  \end{block}
\end{frame}

\subsection{Math}
			
\begin{frame}
\frametitle{\textsc{Les familles prédéfinies}}\framesubtitle{Math}\pause
  \begin{block}<+-> {\textsc{On a toujours au moins les familles :}}
			\begin{itemize}
				\item<+-> \textit{operators}, pour $0123\;+-=\;\Gamma\Delta\dots$
				\item<+-> \textit{letters} pour $abc\;\alpha\beta\gamma\dots$
				\item<+-> \textit{symbols} pour les symboles de base, comme $\to\;\mapsto\;\Rightarrow\;\exists\dots$
				\item<+-> \textit{largesymbols} pour les symboles mathématiques de taille variable, (et de base) 
									$\sum\;\displaystyle\sum$ $\int\;\displaystyle\int\dots$
			\end{itemize}
  \end{block}\pause
			Les packages peuvent en définir d'autres, mais on est limité à 16 polices ouvertes !
\end{frame}
			
\begin{frame}
\frametitle{\textsc{Comment modifier une famille par défaut ?}}\framesubtitle{Math}\pause
  \begin{block}<+-> {\textsc{En utilisant un Package}}
			\begin{itemize}
				\item<+-> \textit{txfonts} utilise \textit{times}, en texte et en math \og letters \fg ;
				\item<+-> \textit{pxfonts} utilise \textit{palatino} en\dots ;
				\item<+-> \textit{fourier} utilise \textit{utopia} ;
				\item<+-> \textit{euler} modifie les polices mathématiques, souvent utilisé avec \textit{concrete} en texte ;
				\item<+-> \textit{kpfonts} utilise ses polices originales et modifie tout ;
				\item<+-> voir aussi \textit{mathdesign} qui prend en option une des polices romaines : 
								\textit{utopia, garamond, charter}\dots
			\end{itemize}
  \end{block}
\end{frame}
			
\begin{frame}[fragile]
\frametitle{\textsc{Comment modifier une police mathématiques ?}}\framesubtitle{Math}\pause
  \begin{block}<+-> {\textsc{A partir de polices de texte}}
			\begin{itemize}
				\item<+-> Vous utilisez \textit{fourier}, par exemple, 
				et vous voulez avoir \textit{courier} comme police \texttt{télétype}, 
				tant en mode texte qu'en mode mathématique :
				\begin{itemize}
					\item<+-> \verb=\renewcommand{\ttdefault}{pcr}=
            \begin{itemize}
            	\item pour le mode texte ;
            \end{itemize}
					\item<+-> \verb=\DeclareMathAlphabet{\mathtt}{T1}{pcr}{m}{n}=
					\item<+-> \verb=\SetMathAlphabet{\mathtt}{bold}{T1}{pcr}{b}{n}=
            \begin{itemize}
            	\item pour le mode mathématique ;
            \end{itemize}
				\end{itemize}
				\item<+-> \`A placer dans le préambule, bien sûr\dots
			\end{itemize}
  \end{block}\pause
			Vous pouvez aussi de la même façon ajouter un \verb=\mathsc=, par exemple\dots
\end{frame}
			
\begin{frame}[fragile]
\frametitle{\textsc{Comment ajouter une police mathématique ?}}\framesubtitle{Math}\pause
  \begin{block}<+-> {\textsc{A partir de polices mathématiques}}
			\begin{itemize}
				\item<+-> Vous voulez ajouter la police \verb=\mathscr= de \textit{kpfonts}, vous tapez :
				\item<+-> \verb=\DeclareMathAlphabet{\mathscr}{U}=
									
									\hfill\verb={jkpsyd}{m}{n}=
				\item<+-> \verb=\SetMathAlphabet{\mathscr}{bold}{U}=
									
									\hfill\verb={jkpsyd}{b}{n}=
				\item<+-> On a déclaré une nouvelle commande \verb=\mathscr= , utilisable aussi en gras\dots
			\end{itemize}
  \end{block}\pause
			Les informations nécessaires sont prises dans les fichiers \textit{sty} des packages utilisés.
\end{frame}
			
\begin{frame}[fragile]
\frametitle{\textsc{Comment ajouter une police de symboles ?}}\framesubtitle{Math}\pause
  \begin{block}<+-> {\textsc{Quand utiliser ceci ?}}
			\begin{itemize}
				\item<+-> Vous voulez avoir le \verb=\int= droit de \textit{kpfonts} :
				\begin{itemize}
					\item<+-> \verb=\DeclareSymbolFont{kpint}{OMX}{jkp}{m}{n}=
					\item<+-> \verb=\SetSymbolFont{kpint}{bold}{OMX}{jkp}{bx}{n}=
					\item<+-> \verb=\let\intop\undefined=
					\item<+-> \verb=\DeclareMathSymbol{\intop}{\mathop}{kpint}{82}=
					\item<+-> \verb=\def\int{\intop\nolimits}=
				\end{itemize}
				\item<+-> \`A placer dans le préambule, bien sûr\dots
				\item<+-> Le nom \textsl{kpint} est arbitraire ;
				\item<+-> Il faudrait le refaire pour les intégrales doubles etc
			\end{itemize}
  \end{block}
\end{frame}

\section{\textsc{Les attributs}}

\subsection{Texte}

\begin{frame}
\frametitle{\textsc{Les attributs d'une police}}\framesubtitle{Math \& Texte}\pause
  \begin{block}<+-> {\textsc{Les 5 attributs d'une police   \LaTeX{}}}
			\begin{itemize}
				\item<+->  Le codage : ot1, t1, ts1, oml, oms, omx\dots 
				\item<+->  La famille : cmr, cmss, ptm, ppl, jkp, jkpss\dots
				\item<+->  La graisse : m, b, bx\dots
				\item<+->  La forme : n, it, sc, sl\dots
					\begin{itemize}
						\item<+->  Ce qui empèche d'avoir des petites capitales italiques !
						\item<+->  \textscsl{mais KPFONTS en a quand même (forme scsl)}\dots
					\end{itemize}
				\item<+->  La taille en points.
			\end{itemize}
	\end{block}
\end{frame}

\begin{frame}[fragile]
\frametitle{\textsc{Comment modifier les attributs d'une police}}\framesubtitle{Texte}\pause
  \begin{block}<+-> {\textsc{Modifier les attributs d'une police de texte}}
  \begin{itemize}
		\item<+-> Les instructions sont les suivantes :
			\begin{itemize}
				\item<+->  l'encodage : \verb=\fontencoding{...}=
				\item<+->  la famille : \verb=\fontfamily{...}=
				\item<+->  la graisse : \verb=\fontseries{...}=
				\item<+->  la forme : \verb=\fontshape{...}=
				\item<+->  la taille : \verb=\fontsize{=\textit{taille}\verb=}{=\textit{saut de ligne}\verb=}=
			\end{itemize}
		\item<+-> toujours suivis de \verb=\selectfont=\dots
		\item<+-> Ceci s'ajoute aux commandes de haut niveau que vous connaissez !
	\end{itemize}
	\end{block}
\end{frame}

\subsection{Math}

\begin{frame}[fragile]
\frametitle{\textsc{Comment écrire des mathématiques en gras}}\framesubtitle{Math}\pause
  \begin{block}<+-> {\textsc{Mathématiques : passer en gras}}
  \begin{itemize}
		\item<+-> En mode texte :
			\begin{itemize}
				\item<+->  tapez : \verb=\mathversion{bold}=
				\item<+->  et tapez : \verb=\mathversion{normal}= 
				
							pour quitter le mode gras.
			\end{itemize}
		\item<+-> Le package \textit{bm} permet de passer en gras dans une partie de formule ;
		\item<+-> il y a aussi la police \verb=\mathbf=
	\end{itemize}
	\end{block}
\end{frame}

\begin{frame}[fragile]
\frametitle{\textsc{Comment modifier les autres paramètres mathématiques}}\framesubtitle{Math}\pause
  \begin{block}<+-> {\textsc{Autres paramètres}}
  \begin{itemize}
		\item<+-> Pour la taille, on en parlera plus loin ;
		\item<+-> il y a aussi les \verb=\mathsf=\dots ;
		\item<+-> ensuite, pour la forme des lettres grecques, par exemple, 
							il faut regarder les éventuelles options du package mathématique utilisé.
	\end{itemize}
	\end{block}
\end{frame}

\section{\textsc{Les fichiers}}

\subsection{Fichier \texttt{.fd}}

\begin{frame}
\frametitle{\textsc{Comment}   \LaTeX{} \textsc{trouve une police}}\framesubtitle{Math \& Texte}\pause
  \begin{block}<+-> {\textsc{Trouver le bon fichier} \texttt{.fd}}
			\begin{itemize}
				\item<+->  \`A partir du codage, par exemple \texttt{t1} ; 
				\item<+->  et de la famille, par exemple \texttt{jkp} ;
				\item<+->    \LaTeX{} cherche le fichier \texttt{t1jkp.fd}.
			\end{itemize}
	\end{block}
\end{frame}

\begin{frame}[fragile]
\frametitle{\textsc{Que contient le fichier} \texttt{.fd}}\framesubtitle{Texte}\pause
  \begin{block}<+-> {\textsc{Le fichier} \texttt{.fd}}
\begin{itemize}
	\item<+->  Le fichier \texttt{.fd} contient :
			\begin{itemize}
				\item<+->  une ligne de déclaration de famille :
				
							\verb=\DeclareFontFamily{T1}{jkp}{}=
				\item<+->  des lignes de déclarations de forme :
				
							\verb=\DeclareFontshape{T1}{jkp}{m}{n}{<->jkpmn8t}{}=
							
				\item<+->  des lignes de substitution :
				
							\verb=\DeclareFontshape{T1}{jkp}{m}{it}=
							
							\hfill\verb+{<->ssub * jkp/m/sl}{}+
			\end{itemize}
	\item<+->  remarquons qu'on a ici \texttt{jkpmn8t}, le nom interne d'une \textit{police}   \LaTeX{}.
	\item<+->  On a des choses équivalentes en math avec les \verb=\Declare=\dots{} déjà vus.
	
	Les packages de polices mathématiques ont aussi leurs fichiers \texttt{.fd}.
\end{itemize}
	\end{block}
\end{frame}

\subsection{Fichiers \texttt{.tfm .vf}}

\begin{frame}
\frametitle{\textsc{La \og police\fg{}   \LaTeX{}}}\framesubtitle{Math \& Texte}\pause
  \begin{block}<+-> {\textsc{Polices réelles ou virtuelles}}
\begin{itemize}
	\item<+-> Les noms internes de police   \LaTeX{} correspondent à des polices rélles ou virtuelles :
			\begin{itemize}
				\item<+->  une police réelle correspond à un fichier \texttt{.tfm} ;
				\item<+->  une police virtuelle correspond à un fichier \texttt{.tfm} et un fichier \texttt{.vf} ;
					\begin{itemize}
						\item<+->  \texttt{.tfm} = TeX Font Metric ;
						\item<+->  \texttt{.vf} = Virtual Font.
					\end{itemize}
				\item<+->  Leurs formats lisibles sont les fichiers \texttt{.pl} et \texttt{.vpl} :
					\begin{itemize}
						\item<+->  un fichier \texttt{.pl} correspond au fichier \texttt{.tfm};
						\item<+->  un fichier \texttt{.vpl} correspond aux 2 fichiers \texttt{.tfm} et \texttt{.vf}.
					\end{itemize}
			\end{itemize}
	\item<+-> Pour l'instant, aucun de ces fichiers ne contient de dessin de caractère !
\end{itemize}
	\end{block}
\end{frame}

\subsection{Fichiers \texttt{.pl .vpl}}

\begin{frame}
\frametitle{\textsc{Les fichiers} \texttt{.pl }\textsc{et} {\color[rgb]{0.3,1,0.3}\texttt{.vpl}}}
\framesubtitle{Math \& Texte}\pause
Un fichier \texttt{.pl} ou \texttt{.vpl} contient des lignes du type :\pause

\texttt{(FONTDIMEN ...)}\pause

{\fontfamily{jkptt}\selectfont 

{\color[rgb]{0,.5,0}(MAPFONT D 0 (FONTNAME ...))

(MAPFONT D 1 (FONTNAME ...))}\pause

   (LIGTABLE

		...
		
   (LABEL O 55)(LIG O 55 O 173)(STOP)\pause
   
   ...
   
   (LABEL C A)(KRN C V R -0.12)(STOP)
   
   ...)}\pause
   
{\fontfamily{jkptt}\selectfont ...

(CHARACTER O 20

   (CHARWD R 0.314)(CHARHT R 0.4625)
   
   (CHARDP R 0.00475)(CHARIC R 0.053)
   
   {\color[rgb]{0,.5,0}(MAP (SELECTFONT D 1) (SETCHAR O 20)))}
   
...}
\end{frame}

\begin{frame}
\frametitle{\textsc{Les fichiers} \texttt{.pl }\textsc{et} \texttt{.vpl}}\framesubtitle{Math}
\begin{block}<+-> {\textsc{Les lignes d'un fichier} \texttt{.pl,.vpl} \textsc{en mode math}}
\begin{itemize}
	\item<+-> Dans une police mathématique, on peut aussi trouver :
\begin{itemize}
	\item<+-> \texttt{NEXTLARGER}, pour les symboles à dimension variable ;
	\item<+-> et, pour les symboles à extention infinie, 
	
	\texttt{VARCHAR}, puis :
	\begin{itemize}
	\item<+-> \texttt{REP}, répétition ;
	\item<+-> \texttt{TOP}, haut ;
	\item<+-> \texttt{BOT}, bas ;
	\item<+-> \texttt{MID}, milieu.
	\end{itemize}
	\item<+-> Les accolades, par exemple, nécessitent l'ensemble de ces éléments.
\end{itemize}
\end{itemize}
\end{block}
\end{frame}

\subsection{Fichier \texttt{.map}}

\begin{frame}
\frametitle{\textsc{Les fichiers} \texttt{.map}}\framesubtitle{Math \& Texte}\pause
Les polices référencées dans le fichier \texttt{.vpl} sont aussi réelles ou virtuelles\dots\pause

Mais on finit par arriver sur une police réelle !\pause

  \LaTeX{} cherche alors la police dans un fichier \texttt{.map}\pause
  \begin{block}<+-> {\textsc{Les lignes d'un fichier} \texttt{.map} \textsc{contiennent}}
			\begin{itemize}
				\item<+->  \texttt{jkpmsl8r} : le nom   \LaTeX{} de la police (fichier tfm) ;
				\item<+->  \texttt{Kp-Regular} : le nom postscript de la police ;
				\item<+->  \texttt{<8r.enc} : le réencodage
				 ;
				\item<+->  \texttt{<jkpmn8a.pfb} : le nom du fichier des dessins des caractères ;
				\item<+->  \texttt{" TeXBase1Encoding ReEncodeFont}
				
									\hfill\texttt{0.167 SlantFont "} :
				
									encodage et transformations pour \textit{dvips} ou \textit{pdfTeX}.
			\end{itemize}
	\end{block}
\end{frame}

\subsection{Fichier \texttt{.enc}}

\begin{frame}
\frametitle{\textsc{Les fichiers} \texttt{.enc}}\framesubtitle{Math \& Texte}\pause

  \begin{block}<+-> {\textsc{Un fichier} \texttt{.enc}}
			\begin{itemize}
				\item<+->  fait le lien :
				\begin{itemize}
					\item<+->  entre les slots (positions, de 0 à 255) utilisés par \TeX ;
					\item<+->  et les noms \textit{postscript} des caractères dans le \texttt{.pfb};
				\end{itemize}
				\item<+->  et permet :
				\begin{itemize}
					\item<+->  d'utiliser des polices \texttt{.pfb} de plus de 256 caractères ;
					\item<+->  la recherche de mots dans les fichiers \texttt{.ps} ou \texttt{.pdf},
					           le nom des caractères y est inséré ;
				\end{itemize}
				\item<+->  et c'est souvent absent dans les polices de symboles\dots
			\end{itemize}
	\end{block}
\end{frame}

\section{\textsc{Métriques}}

\subsection{Fontdim}

\begin{frame}
\frametitle{\textsc{Les fichiers} \texttt{.pl }\textsc{et} \texttt{.vpl}}\framesubtitle{Texte}\pause
  \begin{block}<+-> {\textsc{Les dimensions d'une police de texte sont :}}
	\begin{enumerate}
		\item<+->  \texttt{SLANT}, son inclinaison ;
		\item<+->  \texttt{SPACE}, la largeur de l'espace ;
		\item<+->  \texttt{STRETCH}, la dilatation possible de l'espace ;
		\item<+->  \texttt{SHRINK}, sa compression possible ;
		\item<+->  \texttt{XHEIGHT}, la hauteur du \og x\fg ;
		\item<+->  \texttt{QUAD}, la largeur du \texttt{quad}, aussi égale à \texttt{1 em} ;
		\item<+->  \texttt{EXTRASPACE}, l'espace supplémentaire en début de phrase.
	\end{enumerate}
	\end{block}\pause
	Les polices mathématiques \textsc{symbols} et \textsc{largesymbols} contiennent respectivement 22 et 13 dimensions,\pause
	
	qui servent à construire les formules mathématiques. 
	
	On peut voir un exemple de placement d'indice plus loin.
\end{frame}

\subsection{Ligatures}

\begin{frame}
\frametitle{\textsc{Ligatures et Crénages}}\framesubtitle{Texte}\pause
  \begin{block}<+-> {\textsc{Ligatures}}
  \begin{itemize}
  \item<+-> Une \textit{ligature} est le regroupement de deux caractères consécutifs en un troisième.
  \item<+-> Une ligature peut être :
		\begin{itemize}
			\item<+-> technique comme {-}- qui donne -- ;
			\item<+-> classique comme {f}i qui donne fi ;
			\item<+-> ou désuette comme {\fontfamily{jkpos}\selectfont {c}t} qui donne {\fontfamily{jkpos}\selectfont ct}.
		\end{itemize}
  \item<+-> En général, on n'utilise pas de ligature en mode math.
	\end{itemize}
	\end{block}
\end{frame}

\subsection{Crénages}

\begin{frame}
\frametitle{\textsc{Crénages}}\framesubtitle{Texte}\pause
  \begin{block}<+-> {\textsc{Crénages}}
  \begin{itemize}
  \item<+-> Un \textit{crénage} est la façon dont deux caractères se rapprochent ou s'éloignent selon leur dessin :
		\begin{itemize}
			\item<+-> On a \og Tout \fg{} et non \og {T}out \fg{} ;
			\item<+-> Et on a \og dîme \fg{} et non \og {d}îme \fg.
		\end{itemize}
  \item<+-> En général, on n'utilise pas de crénage en mode math.
	\end{itemize}
	\end{block}
	
\end{frame}

\subsection{Caractères}

\begin{frame}
\frametitle{\textsc{Caractères}}\framesubtitle{Math \& Texte}\pause
  \begin{block}<+-> {\textsc{Métriques des caractères}}
	 \begin{itemize}
		 \item<+->  La métrique d'un caractère a 4 éléments :
		\begin{itemize}
			\item<+-> \texttt{CHARWD}, sa largeur ;
			\item<+-> \texttt{CHARHT}, sa hauteur au dessus de la ligne de base ;
			\item<+-> \texttt{CHARDP}, sa profondeur en dessous de la ligne de base ;
			\item<+-> \texttt{CHARIC}, sa correction italique.
		\end{itemize}
		 \item<+->  Le sens de la largeur et de la correction italique n'est pas le même en mode texte ou en mode math.
	 \end{itemize}
	\end{block}
\end{frame}

\begin{frame}
\frametitle{\textsc{Caractères}}\framesubtitle{Texte}\pause
  \begin{block}<+-> {\textsc{Métriques des caractères en texte}}
	 \begin{itemize}
		 \item<+->  Pour un caractère en mode texte :
		\begin{itemize}
			\item<+-> \texttt{CHARWD}, sa largeur est sa largeur ;
			\item<+-> \texttt{CHARIC}, sa correction italique est appliquée quand on quitte l'italique.
		\end{itemize}
		 \item<+->  On va voir cela dans 40 secondes\dots
	 \end{itemize}
	\end{block}
\end{frame}

\begin{frame}
\frametitle{\textsc{Caractères}}\framesubtitle{Math}\pause
  \begin{block}<+-> {\textsc{Métriques des caractères en mode math}}
	 \begin{itemize}
		 \item<+->  En mode math, pour un caractère :
		\begin{itemize}
			\item<+-> \texttt{CHARWD}, sa largeur sert à placer l'indice ;
			\item<+-> \texttt{CHARWD+CHARIC}, sert à placer l'exposant, et,
			
			est la largeur effective du caractère, 
			
			sauf en cas de présence d'exposant ou d'indice assez large.
		\end{itemize}
		 \item<+->  On va voir cela dans 10 secondes\dots
	 \end{itemize}
	\end{block}
\end{frame}

\begin{frame}
\frametitle{\textsc{Caractères}}\framesubtitle{Texte et Math}\pause
  \begin{block}<+-> {\textsc{Métriques des caractères en mode texte et math}}
  	\begin{center}\begin{tikzpicture}
  		\filldraw [green] (1.5,0.2) -- (1.5,3.5) -- (0.2,3.5) -- (0.2,3.8) -- (3.1,3.8) -- (3.1,3.5) -- (1.8,3.5) -- (1.8,0.2) -- cycle ;
  		\filldraw [blue] (6,0.2) -- (6,3.5) -- (4.7,3.5) -- (4.7,3.8) -- (7.6,3.8) -- (7.6,3.5) -- (6.3,3.5) -- (6.3,0.2) -- cycle ;
  		\draw	[red] (0,0.2) -- (3.3,0.2) -- (3.3,3.8) -- (0,3.8) -- cycle ;
  		\draw	[red] (4.3,0.2) -- (8,0.2) -- (8,3.8) -- (4.3,3.8) -- cycle ;
  		\draw	[red] (6.8,0.2) -- (6.8,3.8) ;
  		\draw	[gray,<->] (0,1) -- (3.3,1) ; \draw [gray] (1.55,1.2) node {CHARWD};
  		\draw	[gray,<->] (4.3,1) -- (6.8,1) ; \draw [gray] (5.55,1.2) node {CHARWD};
  		\draw	[gray,<->] (6.8,2) -- (8,2) ; \draw [gray] (7.4,2.2) node {CHARIC};
  		\draw	[gray,<->] (3.8,.2) -- (3.8,3.8) ; \draw [gray] (3.8,2) node {CHARHT};
  		\draw	[gray,<->] (3.8,.2) -- (3.8,-1.3) ; \draw [gray] (3.8,-.5) node {CHARDP (=0 ici)};\draw (2.8,-1.3) -- (4.8,-1.3) ;
  		\draw [thick] (-.2,0.2) -- (10,0.2) ; 
  		\filldraw [white] (6.8,-1) -- (8.8,-1) -- (8.8,1) -- (6.8,1) -- cycle ; \draw [gray] (7.8,0) node {Indice};
  		\draw [red] (6.8,-1) -- (8.8,-1) -- (8.8,1) -- (6.8,1) -- cycle ; 
  		\filldraw [white] (8,3) -- (8,5) -- (10,5) -- (10,3) -- cycle ; \draw [gray] (9,4) node {Exposant}; 
  		\draw [red] (8,3) -- (8,5) -- (10,5) -- (10,3) -- cycle ;
  		\draw [red] (1.65,4.5) node {Texte};
  		\draw [red] (6.15,4.5) node {Math};
  		\draw [gray] (2.75,0.35) node {base line};
  	\end{tikzpicture}\end{center}  
	\end{block}
\end{frame}

\subsection{Math Spaces}

\begin{frame}[fragile]
\frametitle{\textsc{Espacements mathématiques}}\framesubtitle{Math}\pause
  \begin{block}<+-> {  \LaTeX{} \textsc{ajoute des espaces en mode math}}
	 \begin{itemize}
		 \item<+->  Il y a 8 types de symboles, comme \texttt{mathord} et \texttt{mathbin} ;
		 \item<+->  entre 2 symboles,   \LaTeX{} ajoute éventuellement de l'espace.
		 \item<+->  Il y a trois espaces possibles :
		\begin{itemize}
			\item<+-> \verb=\thinmuskip= ou \verb=\,= qui vaut 3\,mu ;
			\item<+-> \verb=\medmuskip= ou \verb=\:= qui vaut 4\,mu plus 2\,mu minus 4\,mu ;
			\item<+-> \verb=\thickmuskip= ou \verb=\;= qui vaut 5\,mu plus 5\,mu ;
		\end{itemize}
		 \item<+->  Certains espaces entre symboles ne sont pas ajoutés quand on est en indice :
		 \[\textstyle\sum\limits_{i=1}^ni=\dfrac{n(n+1)}{2}\]
	 \end{itemize}
	\end{block}
	{\scriptsize \color[rgb]{0,.7,0}Petite escapade hors des polices\dots}
\end{frame}

\begin{frame}[fragile]
\frametitle{\textsc{Modifier les espacements mathématiques}}\framesubtitle{Math}\pause
	\vfill
  \begin{block}<+-> {\textsc{On peut modifier ces espacements}}
	 \begin{itemize}
		 \item<+->  Pour modifier ces espaces, par exemple :
		\begin{itemize}
			\item<+-> \verb+\thinmuskip=2mu+
			\item<+-> \verb+\medmuskip=3mu minus 1mu+
			\item<+-> \verb+\thickmuskip=4mu plus 1mu minus 1mu+
		\end{itemize}
		 \item<+->  Ici, on a réduit l'espacement et l'élasticité.
	 \end{itemize}
	\end{block}
	\vfill\vfill
	{\scriptsize \color[rgb]{0,.7,0}Faute avouée \dots{} à moitié pardonnée ?}
\end{frame}

\subsection{Taille des indices\dots}

\begin{frame}[fragile]
\frametitle{\textsc{Modifier les tailles des indices et exposants}}\framesubtitle{Math}\pause
  \begin{block}<+-> {\textsc{On peut modifier les tailles des indices et exposants}}
	 \begin{itemize}
		 \item<+->  Cela se fait de 2 façons :
		\begin{itemize}
			\item<+-> \verb+\DeclareMathSizes{1}{2}{3}{4}+ avec les tailles des polices :
\begin{enumerate}
	\item<+-> de texte, qui sert ici de base ;
	\item<+-> math principale, souvent égale à celle de texte ;
	\item<+-> math indice ou exposant, plus petite ;
	\item<+-> math indice ou exposant d'indice ou exposant ou \dots
	
						encore plus petite (ensuite, on garde la même taille) ;
\end{enumerate}
			\item<+-> On peut aussi déclarer :
\begin{itemize}
	\item<+-> \verb=\def\defaultscriptratio{.78}=
	\item<+-> \verb=\def\defaultscriptscriptratio{.62}=
	
						 par exemple.
	\item<+-> Cela donne des tailles d'indices pour toutes les tailles de caractères.
\end{itemize}
   \end{itemize}
   \end{itemize}
	\end{block}
	\hfill
	
	{\scriptsize \color[rgb]{0,.7,0}Autre petite escapade hors des polices\dots}
\end{frame}

\subsection{Position\dots}

\begin{frame}
\frametitle{\textsc{Placer un indice}}\framesubtitle{Math}\pause
  \begin{block}<+-> {\textsc{Placer un indice en présence d'exposant}}
	 \begin{itemize}
		 \item<+->  Placer un indice \texttt{I} à un caractère \texttt{C} en présence d'un exposant \texttt{E} :
	 \begin{itemize}
		 \item<+->  depuis la ligne de base, descendre de \texttt{max(p+S19,S17)} 
		 						où \texttt{p} est la profondeur de \texttt{C}.
		 \item<+->  Calculer \texttt{h} le haut de \texttt{I} ;
				\begin{itemize}
					\item<+-> s'il le faut, descendre \texttt{I} de façon telle que $\mathtt{h}\leqslant4/5\times\mathtt{S5}$ ;
					\item<+-> s'il le faut, descendre \texttt{I} et monter \texttt{E} de façon telle que
										le haut de \texttt{I} et le bas de \texttt{E} soient distants d'au moins $4\times\mathtt{X8}$.
				\end{itemize}
		 \item<+->  Remarques :
				\begin{itemize}
					 \item<+->  \texttt{S} désigne les dimensions de \og \textsc{symbols} \fg;
					 \item<+->  \texttt{X} désigne les dimensions de \og \textsc{largesymbols} \fg;
					 \item<+->  \texttt{S5} est \texttt{xHeight}, la hauteur du \og x \fg ;
					 \item<+->  \texttt{X8} est la hauteur de la barre de fraction.
				\end{itemize}
	 \end{itemize}
	 \end{itemize}
	\end{block}
\end{frame}

\section{\textsc{Glyphes}}

\subsection{Type 1}

\begin{frame}
\frametitle{\textsc{Les polices de type 1}}\framesubtitle{Courbe de Bézier}\pause
  \begin{block}<+-> {\textsc{Les courbes de Bézier sont :}}
	\begin{enumerate}
		\item<+->  de la forme : $\overrightarrow{OM}=\sum\limits_{k=0}^n\binom{n}{k}t^k(1-t)^{(n-k)}\overrightarrow{OA_k}$ ;
		\item<+->  $A_0$ et $A_n$ sont les extrémités ;
		\item<+->  les autres points sont les points de contrôle ;
		\item<+->  la tangente aux extrémités est dirigée vers le premier point de contrôle ;
		\item<+->  dans les polices, $n=3$, on a deux points de contrôle.
	\end{enumerate}
	\end{block}
\end{frame}



\begin{frame}
\frametitle{\textsc{Les polices de type 1}}\framesubtitle{Courbe de Bézier et glyphes}\pause
  \begin{block}<+-> {\textsc{Un exemple :}}
  	\begin{center}\begin{tikzpicture}
  		\filldraw [pink] (1,2) circle (2pt)
  		                 (0,1) circle (2pt);
  		\filldraw [green](0,0) circle (2pt)
  		                 (5,2) circle (2pt);
  		\draw [->] (0,0) .. controls (0,1) and (1,2) .. (5,2) ;
  		\draw	[gray,->] (0,0) -- (0,1) ;
  		\draw	[gray,->] (5,2) -- (1,2) ;
  	\end{tikzpicture}\end{center}
	\end{block}
	
	On a symbolisé les extrémités en vert et les deux points de contrôle en rose\pause
	
	On assemble des courbes de ce type pour obtenir un ou des chemins fermés.\pause
	
	On remplit alors \textsl{à droite} des chemins fermés.
\end{frame}

\begin{frame}
\frametitle{\textsc{Les polices de type 1}}\framesubtitle{Glyphes}\pause
  \begin{block}<+-> {\textsc{Un exemple complet :}}
  \bigskip
  	\begin{center}\begin{tikzpicture}
  		\draw [->] (.59,3.36) .. controls (.88,4.11) and (1.50,4.58) .. (2.40,4.58) ;
  		\draw [red] (.59,3.36) -- (.88,4.11) -- (1.50,4.58) -- (2.40,4.58)
  					-- (2.71,4.58) -- (3.78,3.97) -- (3.78,2.98) --(3.78,.94) -- (3.78,.42) -- (4.05,.32) 
  					-- (4.47,.43) -- (4.51,.17) -- (4.51,.17) -- (3.72,.04) -- (3.25,-.07) 
  					-- (2.97,-.07) -- (3.00,.68) -- (3.00,.68) -- (2.13,-.12) -- (1.58,-.12) --
  					(.87,-.12) -- (.35,.33) -- (.35,1.07) -- (.35,1.88) -- (.97,2.12) -- (1.70,2.37)
  					-- (3.00,2.81) -- (3.00,3.58) -- (2.78,4.13) -- (1.91,4.10) -- (1.46,4.07) -- 
  					(1.17,3.60) -- (.94,3.16) ;
  		\draw [->] (2.40,4.58) .. controls (2.71,4.58) and (3.78,3.97) .. (3.78,2.98) ;
  		\draw [->] (3.78,2.98) -- (3.78,.94) ;
  		\draw [->] (3.78,.94) .. controls (3.78,.42) and (4.05,.32) .. (4.47,.43) ;
  		\draw [->] (4.47,.43) -- (4.51,.17) ;
  		\draw [->] (4.51,.17) .. controls (4.51,.17) and (3.72,.04) .. (3.25,-.07) ;
  		\draw [->] (3.25,-.07) .. controls (2.97,-.07) and (3.00,.68) .. (3.00,.68) ;
  		\draw [->] (3.00,.68) .. controls (2.13,-.12) .. (1.58,-.12) ;
  		\draw [->] (1.58,-.12) .. controls (.87,-.12) and (.35,.33) .. (.35,1.07) ;
  		\draw [->] (.35,1.07) .. controls (.35,1.88) and (.97,2.12) .. (1.70,2.37) ;
  		\draw [->] (1.70,2.37) -- (3.00,2.81) ;
  		\draw [->] (3.00,2.81) .. controls (3.00,3.58) and (2.78,4.13) .. (1.91,4.10) ;
  		\draw [->] (1.91,4.10) .. controls (1.46,4.07) and (1.17,3.60) .. (.94,3.16) ;
  		\draw [->] (.94,3.16) -- (.59,3.36) ;
  		\draw [red] (3.00,1.03) -- (2.77,.76) -- (2.28,.44) -- (1.91,.44) -- (1.48,.44) -- (1.20,.81) --
  		      (1.20,1.23) -- (1.20,1.95) -- (3.00,2.49) -- (3.00,2.49) ;
  		\draw [<-] (3.00,2.49) -- (3.00,1.03) ;
  		\draw [<-] (3.00,1.03) .. controls (2.77,.76) and (2.28,.44) .. (1.91,.44) ;
  		\draw [<-] (1.91,.44) .. controls (1.48,.44) and (1.20,.81) .. (1.20,1.23) ;
  		\draw [<-] (1.20,1.23) .. controls (1.20,1.95) and (3.00,2.49) .. (3.00,2.49) ;
  	\end{tikzpicture}\end{center}
  	\bigskip
	\end{block}
	Notez les sens de parcours !
\end{frame}


\begin{frame}
\frametitle{\textsc{Les polices en   \LaTeX{}}}\framesubtitle{Dunkerque 2010}
  \begin{block}<+-> {\textsc{Sources}}
\begin{itemize}
	\item \textit{The TeX Book} et son appendice G ; 
	\item \textit{Appendix G illuminated} de \textsc{B.Jackowski} ;
	\item \textit{The   \LaTeX{} Companion} ;
  \item \textit{The   \LaTeX{} Graphics Companion} (Supplementary material) \textit{tlgc2extra.pdf}
  							de \textsc{Michel Goossens}
	\item Les packages de polices\dots
\end{itemize}
	\end{block}
\end{frame} 

\begin{frame}[fragile]
\frametitle{\textsc{Asymptote}}\framesubtitle{Ce document}\pause
	\begin{block}<+-> {\textsc{Christophe Caignaert}}
		\begin{itemize}
			\item<+-> Package \LaTeX{} de polices \textit{kpfonts}
			\item<+-> \verb=http://c.caignaert.free.fr=
				\begin{itemize}
					\item cours de mathématiques, classe prépa \textsc{tsi}, seconde année,
					\item résumé de cours de mathématiques, classe prépa \textsc{tsi}, première et seconde année,
					\item \textsc{td} et \textsc{tp} Maple,
					\item polices \LaTeX, structure, installation, utilisation,
					\item un peu d'Asymptote\dots
				\end{itemize}
		\end{itemize}
	\end{block}
\end{frame} 

\end{document}
