
\documentclass[a4paper,11pt]{christophe}
% Packages
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{graphics,array}
\usepackage{kpfonts}
% Mise en page
\setcounter{tocdepth}{0}
\setlength{\parindent}{0pt}
\setlength{\parsep}{0pt}
\setlength{\parskip}{0pt}
\renewcommand{\arraystretch}{1.3}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%
\begin{document}

%$\longmapsto$\end{document}

\begin{center}
{\Huge Kp-Fonts}

\bigskip

{\Large \textsf{The \textsc{Johannes Kepler} project}}
\end{center}

\bigskip

\hfill \textsc{Christophe Caignaert}

\hfill \texttt{c.caignaert@free.fr}

\section{Kp-Fonts}

\subsection{What is Kp-Fonts?}

Kp-Fonts provides a full set of fonts for LaTeX typesetting, including roman, sans-serif et fixed-width fonts, as well as a set of mathematics symbol fonts with, regular and bold, all the common symbols and all those of the \textsc{ams} and more\dots

The typical feature of these fonts is to have a basic and dymamic shape. For instance, look at the roman "a" glyph:

\begin{center}\begin{tabular}{c|c|c|c|c}
Kp-Fonts & CM & Palatino & Utopia & Times\\\hline
\scalebox{10}{a} &
\scalebox{10}{\fontfamily{lmr}\selectfont a} &
\scalebox{10}{\fontfamily{ppl}\selectfont a} &
\scalebox{9.2}{\rule{0pt}{1.25ex}\fontfamily{put}\selectfont a} &
\scalebox{10}{\fontfamily{ptm}\selectfont a}
\end{tabular}\end{center}


This LaTeX package est distributed with a \textsc{gpl} licence.

Kp-Fonts doesn't require any other font package and is fully compatible with \texttt{amsmath} and \texttt{textcomp}. Kp-fonts loads these two packages.
 
\begin{center}
\itshape You haven't to load \textbf{\texttt{amsmath}} and \textbf{\texttt{textcomp}} packages
\end{center}

To use it, you just have to add \verb+\usepackage{kpfonts}+ in your document preamble, if necessary with the options described below.

Besides, the aim is to get a good compatibility with different sets of math font packages.

\subsection{Text fonts}

\begin{itemize}
  \item The encodings \textsc{t1, ot1} et \textsc {ts1} are fully available, except for the uppercase symbol \verb+\SS+ in teletype fonts;
  \item Roman fonts are available with upright, small caps, italic, slanted and oldstyle shape, all with regular, bold and bold extended weight;
  \item Sans-serif fonts are available with upright, small caps and slanted shape, all with regular, bold and bold extended weight;
  \item Teletypes fonts are available with uprights and slanted shape, all with regular and bold weight;
\end{itemize}

\begin{center}\itshape
The default weight is \textbf{bold}, not \textbf{bold extended}.
\end{center}

\subsection{Math fonts}

\begin{itemize}
	\item The \verb+\boldmath+ command is fully installed and Kp-Fonts \textbf{doesn't need} the \verb=\bm= command;
	\item Kp-Fonts provides upright and slanted greeks: $\alphaup\betaup\gammaup\Gamma\Delta$ and $\alpha\beta\gamma\Gammasl\Deltasl$;
	\item \verb=\mathbb= provides $\mathbb{ABC}$, characters designed from capital upright roman;  
	\item \verb=\mathcal= provides $\mathcal{ABC}$, slighty altered fonts from \textsc{cm};
	\item With \verb=\mathscr=, you get $\mathscr{AB}\,\mathscr{C}$, without any extra package; these letters are designed from traditional fonts;
	\item \verb=\mathfrak= provides $\mathfrak{ABCabc}$, still from traditional fonts, altered to be more readable.
\end{itemize}

\section{Options}

\subsection{Global options}

\begin{description}
	\item[nomath :] Kp-Fonts doesn't modify default mathematical fonts;
	\item[notext :] Kp-Fonts doesn't modify default text fonts.
\end{description}

With both these options, Kp-Fonts does nothing\dots

\subsection{Text fonts options}

\begin{description}
	\item[nosf :] Kp-Fonts doesn't modify default sans serif fonts;
	\item[nott :] Kp-Fonts doesn't modify default fixed width fonts.
\end{description}

These two options affect only text fonts.

\begin{description}
	\item[oldstyle :] Roman font provides here {\fontfamily{jkpos}\selectfont "Q"
		and the old ligatures "ct" and "st"}, and also, oldstyle numbers
		by default. 
		
		A new command \verb=\classicstylenums= allows you to get usual numbers.
		This option affects only roman font.
\end{description}

\subsection{Greek letters in math mode}

\begin{description}
	\item[uprightgreeks :] \textit{lowercase} greeks are upright, $\alphaup\betaup\gammaup$;
	\item[slantedGreeks :] \textit{Uppercase} greeks are slanted, $\Gammasl\Deltasl$. 
\end{description}

\subsection{Math font options}

\begin{description}
	\item[nomathscript :] Kp-Fonts doesn't install the \verb=\mathscr= command;
	\item[mathcalasscript :] swaps the \verb=\mathcal= and \verb=\mathscr= fonts;
	\item[classicReIm :] the \verb=\Re= and \verb=\Im= commands produce $\mathfrak{R}$ and $\mathfrak{I}$. In default of, Kp-Fonts provides $\Re$ and $\Im$;
	\item[uprightRoman :] the \textit{Uppercase} romans are upright.
	\item[frenchstyle :] equivalent to both the options \texttt{\textbf{uprightRoman}} et \texttt{\textbf{uprightgreeks}}, uppercase romans and lowercase greeks are upright, usual French style when typesetting mathematics; lowercase romans remain slanted;
	\item[upright :] synonymous with the previous option.
\end{description}

\section{Use}

\subsection{Greek letters}

We have described above the two options that alter the default greek letters. 

Otherwise, you can get the other greek letters using \verb=\otheralpha=, \verb=\otherGamma=. The result depends on the used options.

What's more, for uppercase, you can use \verb=\varGamma= synonymous with the previous.

Finally, the \verb=\alphasl=, \verb=\alphaup=, \verb=\Gammaup= or \verb=\Gammasl= commands always give you the letter you want, whatever the chosen options\dots

\subsection{Standard symbols}

All the standard symbols are present, including all the symbols of the \texttt{amssymb} package, all with regular and bold weight.

For instance: the standard symbols\quad $\leq\quad\bullet\quad\pm$\quad or \textsc{ams} symbols \quad$\twoheadrightarrow\quad\subsetneq\quad\leqslant$

\mathversion{bold}
and in bold:\quad$\leq\quad\bullet\quad\pm$\quad or \quad$\twoheadrightarrow\quad\subsetneq\quad\leqslant$.
\mathversion{normal}

Obviously, you get the usual constructions, both regular and bold: \quad $\mapsto\longmapsto$,\quad
\mathversion{bold}$\mapsto\longmapsto$\mathversion{normal}

\subsection{Extra symbols}

Kp-Fonts provides a lot of other symbols and a lot of negative symbols not displayed here.

%\mathversion{bold}

\begin{center}\begin{tabular}{r>{$}c<{$}|r>{$}c<{$}}

\verb=\mappedfrom=&\mappedfrom&\verb=\longmappedfrom=&\longmappedfrom\\
\verb=\Mapsto=&\Mapsto&\verb=\Longmapsto=&\Longmapsto\\
\verb=\Mappedfrom=&\Mappedfrom&\verb=\Longmappedfrom=&\Longmappedfrom\\
\verb=\mmapsto=&\mmapsto&\verb=\longmmapsto=&\longmmapsto\\
\verb=\mmappedfrom=&\mmappedfrom&\verb=\longmmappedfrom=&\longmmappedfrom\\
\verb=\Mmapsto=&\Mmapsto&\verb=\Longmmapsto=&\Longmmapsto\\
\verb=\Mmappedfrom=&\Mmappedfrom&\verb=\Longmmappedfrom=&\Longmmappedfrom\\
\verb=\dashleftarrow=&\dashleftarrow&\verb=\dashrightarrow=&\dashrightarrow\\
\verb=\dashleftrightarrow=&\dashleftrightarrow&\verb=\leftsquigarrow=&\leftsquigarrow\\
\verb=\Nearrow=&\Nearrow&\verb=\Searrow=&\Searrow\\
\verb=\Nwarrow=&\Nwarrow&\verb=\Swarrow=&\Swarrow\\
\verb=\leadstoext=&\leadstoext&\verb=\leadsto=&\leadsto\\

\end{tabular}\end{center}

You can combine these last two symbols:

\verb=\leadstoext\leadstoext\leadstoext\leadsto=
give\quad
$\leadstoext\leadstoext\leadstoext\leadsto$

\begin{center}\begin{tabular}{r>{$}c<{$}|r>{$}c<{$}}

\verb=\boxright=&\boxright&\verb=\Diamondright=&\Diamondright\\
\verb=\circleright=&\circleright&\verb=\boxleft=&\boxleft\\
\verb=\Diamondleft=&\Diamondleft&\verb=\circleleft=&\circleleft\\
\verb=\boxdotright=&\boxdotright&\verb=\Diamonddotright=&\Diamonddotright\\
\verb=\circleddotright=&\circleddotright&\verb=\boxdotleft=&\boxdotleft\\
\verb=\Diamonddotleft=&\Diamonddotleft&\verb=\circleddotleft=&\circleddotleft\\
\verb=\boxRight=&\boxRight&\verb=\boxLeft=&\boxLeft\\
\verb=\boxdotRight=&\boxdotRight&\verb=\boxdotLeft=&\boxdotLeft\\
\verb=\DiamondRight=&\DiamondRight&\verb=\DiamondLeft=&\DiamondLeft\\
\verb=\DiamonddotRight=&\DiamonddotRight&\verb=\DiamonddotLeft=&\DiamonddotLeft\\

\end{tabular}\end{center}

\begin{center}\begin{tabular}{r>{$}c<{$}|r>{$}c<{$}}

\verb=\multimap=&\multimap&\verb=\multimapinv=&\multimapinv\\
\verb=\multimapboth=&\multimapboth&\verb=\multimapdot=&\multimapdot\\
\verb=\multimapdotinv=&\multimapdotinv&\verb=\multimapdotboth=&\multimapdotboth\\
\verb=\multimapdotbothA=&\multimapdotbothA&\verb=\multimapdotbothB=&\multimapdotbothB\\
\verb=\multimapbothvert=&\multimapbothvert&\verb=\multimapdotbothvert=&\multimapdotbothvert\\
\verb=\multimapdotbothAvert=&\multimapdotbothAvert&\verb=\multimapdotbothBvert=&\multimapdotbothBvert\\

\end{tabular}\end{center}

\begin{center}\begin{tabular}{r>{$}c<{$}|r>{$}c<{$}|r>{$}c<{$}}

\verb=\Wr=&\Wr&\verb=\sqcupplus=&\sqcupplus&\verb=\sqcapplus=&\sqcapplus\\
\verb=\medcirc=&\medcirc&\verb=\medbullet=&\medbullet&\verb=\doteq=&\doteq\\
\verb=\VDash=&\VDash&\verb=\VvDash=&\VvDash&
\verb=\cong=&\cong\\
\verb=\preceqq=&\preceqq&
\verb=\succeqq=&\succeqq&\verb=\coloneqq=&\coloneqq\\
\verb=\varparallel=&\varparallel&\verb=\varparallelinv=&\varparallelinv&\verb=\colonapprox=&\colonapprox\\
\verb=\colonsim=&\colonsim&\verb=\Colonapprox=&\Colonapprox&\verb=\Colonsim=&\Colonsim\\
\verb=\eqqcolon=&\eqqcolon&\verb=\coloneq=&\coloneq&\verb=\eqcolon=&\eqcolon\\
\verb=\Coloneqq=&\Coloneqq&
\verb=\Eqqcolon=&\Eqqcolon&\verb=\invamp=&\invamp\\
\verb=\Diamonddot=&\Diamonddot&\verb=\Diamond=&\Diamond&\verb=\Diamondblack=&\Diamondblack\\
\verb=\strictif=&\strictif&\verb=\strictfi=&\strictfi&\verb=\strictiff=&\strictiff\\
\verb=\circledless=&\circledless&\verb=\circledgtr=&\circledgtr&\verb=\circledwedge=&\circledwedge\\
\verb=\circledvee=&\circledvee&\verb=\circledbar=&\circledbar&\verb=\circledbslash=&\circledbslash\\
\verb=\lJoin=&\lJoin&\verb=\rJoin=&\rJoin&\verb=\Join=&\Join\\
\verb=\openJoin=&\openJoin&\verb=\lrtimes=&\lrtimes&\verb=\opentimes=&\opentimes\\
\verb=\Lbag=&\Lbag&\verb=\Rbag=&\Rbag&\verb=\nplus=&\nplus\\
\verb=\Top=&\Top&\verb=\Bot=&\Bot&\verb=\Perp=&\Perp\\
\verb=\boxast=&\boxast&\verb=\boxbslash=&\boxbslash&\verb=\boxbar=&\boxbar\\
\verb=\boxslash=&\boxslash&\verb=\lambdaslash=&\lambdaslash&\verb=\lambdabar=&\lambdabar\\
\verb=\varclubsuit=&\varclubsuit&\verb=\vardiamondsuit=&\vardiamondsuit&\verb=\varheartsuit=&\varheartsuit\\
\verb=\varspadesuit=&\varspadesuit&\verb=\llbracket=&\llbracket&\verb=\rrbracket=&\rrbracket\\

\end{tabular}\end{center}

\verb=\lbag=, \verb=\rbag=, \verb=\llbracket= et \verb=\rrbracket= sont verticalement extensibles.

\subsection{Variant integrate symbols}

When we write a primitive, often the result is not very attractive because the function is too far from the integrate symbol.

As you can see here:

\[\int f(t)\,\mathrm{d}t\]

Kp-Fonts provides variant commands to avoid this. The first is the \verb=\varint= command and you get:

\[\varint f(t)\,\mathrm{d}t\]

It is up to you to choose whichever you prefer!

Obviously, this command is not convenient for computing an integral\dots

Both display and text style exist.

Others variant commands are:

\verb=\variint=, \verb=\variiint=, \verb=\variiiint= et \verb=\varidotsint=.

\subsection{New extensive symbols}

First, the \verb=\widehat= et \verb=\widetilde= commands have been extended:
\[\widetilde{tilde}\qquad\widehat{chapeau}\]

Finally, some new symbols:

\renewcommand{\arraystretch}{1.8}

\begin{center}\begin{tabular}{r>{$}c<{$}>{$\displaystyle}c<{$}|r>{$}c<{$}>{$\displaystyle}c<{$}}

\verb=\bignplus=&\bignplus&\bignplus&\verb=\bigsqcupplus=&\bigsqcupplus&\bigsqcupplus\\
\verb=\bigsqcapplus=&\bigsqcapplus&\bigsqcapplus&\verb=\bigsqcap=&\bigsqcap&\bigsqcap\\
\verb=\varprod=&\varprod&\varprod&\\

\end{tabular}\end{center}


\subsection{More integrate symbols}

There are many unusual integrate symbols :

\renewcommand{\arraystretch}{2}

\begin{center}
\begin{tabular}{r>{$}c<{$}c|r>{$}c<{$}c} 
\verb+\oiint+ &\oiint& $\displaystyle\oiint$ & 
\verb+\ointctrclockwise+ &\ointctrclockwise& $\displaystyle\ointctrclockwise$  \\
\verb+\ointclockwise+ &\ointclockwise& $\displaystyle\ointclockwise$ & 
\verb+\sqint+ &\sqint& $\displaystyle\sqint$ \\
\verb+\idotsint+ &\idotsint& $\displaystyle\idotsint$ & 
\verb+\oiiint+ &\oiiint& $\displaystyle\oiiint$ \\ 
\verb+\varointctrclockwise+ &\varointctrclockwise& $\displaystyle\varointctrclockwise$ & \verb+\varointclockwise+ &\varointclockwise& $\displaystyle\varointclockwise$ \\
\verb+\fint+ &\fint& $\displaystyle\fint$ & 
\verb+\oiintctrclockwise+ &\oiintctrclockwise& $\displaystyle\oiintctrclockwise$ \\ 
\verb+\varoiintclockwise+ &\varoiintclockwise& $\displaystyle\varoiintclockwise$ &
\verb+\oiintclockwise+ &\oiintclockwise& $\displaystyle\oiintclockwise$ \\ 
\verb+\varoiintctrclockwise+ &\varoiintctrclockwise& $\displaystyle\varoiintctrclockwise$ & \verb+\oiiintctrclockwise+ &\oiiintctrclockwise& $\displaystyle\oiiintctrclockwise$ \\
\verb+\varoiiintctrclockwise+ &\varoiiintctrclockwise& $\displaystyle\varoiiintctrclockwise$ & 
\verb+\sqiint+ &\sqiint& $\displaystyle\sqiint$ \\ 
\verb+\sqiiint+ &\sqiiint& $\displaystyle\sqiiint$ \\
\end{tabular}
\end{center}

\section{Installation}

The tree provides a standard \textsc{tds}. You have to copy all the files in one of your \texttt{texmf} trees first and then update your data base files.

Now, you have to deal with the \texttt{.map} file.
If you have a \texttt{web2c} distribution, just run \texttt{udpmap}.

	\begin{verbatim}
	udpmap --enable Map=kpfonts.map
	\end{verbatim}

If it is not running, look for all the \texttt{psfonts.map} and \texttt{pdftex.map}. Then, append all the \texttt{kpfonts.map} lines into each of them and save them \dots{} in the same directory!

With MikTeX (-> 2.4), it's easy to do the same thing with the files:

\verb=texmf/pdftex/config/psfonts.map=, or,

\verb=texmf/dvips/config/psfonts.map=, according to your use.

\section{Some extra points}

\subsection{Displaying and printing}

Often, some display and printing problems exist\dots

The main reason is an automatic hinting. I'm not a professional typograph and I can't do better;
besides, there are some printing problems with old releases of \textit{Acroread}\textregistered{} using \textit{Windows}\textregistered.

Note that the printing is better using \textit{Ghostscript-Ghostview}\textregistered\dots

\subsection{Further outlook}

If you ask for \dots{} light and semi-bold fonts.

Otherwise, if you need one extra symbol, contact me, I will do my best.

\subsection{\textsc{Johannes Kepler 1571-1630}}

    \textsc{Kepler} was forced, due to the counter Reformation and because he was a Lutheran, to move to Prague to work with the renowned Danish astronomer, \textsc{Tycho Brahe}. Using the data that \textsc{Tycho} had collected, \textsc{Kepler} discovered the first two laws of planetary motion (1609). And what is just as important about this work is that it is the first published account wherein a scientist documents how he has coped with the multitude of imperfect data to forge a theory of surpassing accuracy" (\textsc{O. Gingerich} in forward to \textsc{Johannes Kepler} New Astronomy translated by \textsc{W. Donahue}, Cambridge Univ Press, 1992),in other words a fundamental law of nature. Today we call this the scientific method.

From nasa website

http://kepler.nasa.gov/johannes/

\subsection{Remark}

Note that \textit{Kepler}\textregistered is a registered font name supplied by \textit{Adobe}\texttrademark. The Kp-Fonts have nothing to do with those.

\subsection{Thanks}

Many thanks to
\begin{itemize}
	\item \textsc{Nicolas Boulenguez} (Tests);
	\item \textsc{Michel Bovani} (Fonts);
	\item \textsc{Daniel Flipo} (Latex);
	\item \textsc{Souraya Muhidine} (Translation)
	\item \textsc{Peter Rosenberg} (\textsc{urw})
\end{itemize}
	
\end{document}