\documentstyle[12pt]{article}



\newfont{\logo}{logo12}

\newcommand{\mf}{{\logo META}\-{\logo FONT}}

\newfont{\bsp}{beispiel}



\author{Christoph Pagalies\\Markus Fritze}

\title{Description of the Font-Converter}

\date{15.07.1990}



\begin{document}

\maketitle



Note:



This is just a quick-and-dirty translation of the German documentation. I 
did not have the time to check the spelling or the style (which is the 
result of just a few years of English at school), so I beg your pardon for 
all mistakes. But I hope it will be useful for non-German speaking owners of 
the converter nevertheless.



\pagebreak



\section{What should I do with such a program?}



As a \TeX-User I often looked jealously at all those DTP-programs for which 
lots of fonts are available. I know, you should not use too many different 
fonts in a single text, but it would be nice to use another font than 
Computer Modern Roman\dots



Another problem arose when I tried to design a telephone for my letter head. 
Maybe I am supported by \mf\ if I create a whole font family with similar 
characters --- but I just wanted to make a single character and had great 
difficulty to do so (I have to admit that I am the opposite of a 
\mf-wizard).



So I decided to write a converter. Calamus seemed to be a good source for 
fonts: There are already a lot of Calamus-fonts and they are vector fonts. 
Additionally Calamus supports just very simple commands to store its font 
information:



You can move the starting point, draw a line or a B\'ezier cubic --- I said 
to myself: ``\mf s drawing methods are really superior to this.''



Now you are holding the result of my consideration in your very hands. It 
allows you to create characters for \TeX\ with Didot or the DMC font editor 
and to convert it to \mf. You can even convert a whole Calamus font.



After the program has been finished, I thought there might be other people 
who would like to convert fonts, so I decided to release it as shareware.







\section{What is Shareware?}\label{share}



Shareware means everyone is free to copy the program any way he likes --- 
but everyone who uses it regulary or professionally oughts to send some 
money to the authors (As a regard for their work).



\begin{itemize}

\item Please copy all the files included with the converter!



\item If you happen to like it, please send 20\,DM (a little bit more from 
foreign countries) to:



\pagebreak



\begin{center}      $\Sigma$-soft\\

      z.\,Hd. Christoph Pagalies\\

      Am Schulwald 24b\\

      \smallskip

      2000 Norderstedt\\

      Fed. Rep. of Germany\\

\end{center}



In return you will have the following advantages:



\begin{itemize}



\item You will get the latest version of the converter with your personal 
serial number.



\item If you find a bug in the converter, we will try to fix it. Please send 
us a detailed description how to reproduce it and your program disk (and 
enclose a stamped envelope (as far as possible)).



\item The shareware version has two little restrictions: You can only 
convert fonts with serial number zero (unprotected fonts). This is the case 
if you can load the font in question by different Calamus versions. If you 
have bought a professional font, it is encoded with your serial number of 
Calamus.



The second is that there is a maximum of ten ligtable entries. This is not 
important if you want to convert just a few characters or just test the 
converter; but it is when you want to convert large fonts.



But you can pay your shareware fee and you'll get a converter which can 
process such fonts, too.



\end{itemize}

\end{itemize}



\section{And how does it work?}



First you have to load the converter (what a surprise). It will ask you via 
a file-selector for a font-batch-file (Extension \verb|.FBT|). Let's suppose 
we do not have one --- so we click on ``CANCEL''. It will ask you for a 
Calamus-font instead (Extension \verb|.CFN|). Finally, you will see the 
file-selector again: Now you are asked for the target file (Extension 
\verb|.MF|).



The font will be loaded and converted internally. On the screen you will see 
several lines belonging to the actual fonts. They are used to calculate the 
font height. Now you can edit all characters: Press a key and the 
corresponding character will be shown. It will be displayed with two 
different line styles:



\begin{itemize}

\item A continuous line surrounds solid (filled) parts --- they will be 
converted into a ``fill'' command.



\item A dotted line surrounds parts that should be erased --- they represent 
an ``unfill'' command.

\end{itemize}



An example: The letter ``{\bsp A}''. The first line creates the outer part 
using fill, this looks like this: {\bsp B}. The inner part ({\bsp C}) will 
be erased by an unfill command, et voil\`a: {\bsp A}.



This looks correct, but it does not work with other characters. E.\,g. the 
converter will create an {\bsp I} instead of an {\bsp i}, because the dot is 
deleted (not set). In this case you will have to correct it manually: Type 
{\bsp i}, then you will see, that the converter is going to erase the dot. 
You can toggle its curve by pressing the corresponding function key. 
\verb|F1| means the first curve etc.



When you have finished, press \verb|ESC|. The converter asks you whether to 
convert the font or not, and if it should create a font batch file.



During the conversion a ligtable will be created; it contains the biggest 
deviations. In \mf-versions below 2.7 there is a restriction to the size of 
the ligtable; let's wait until the next update!



The converted \verb|.MF|-file can be compiled with \mf, no further include 
files or such are necessary.



\section{What is a font batch file good for?}



When the converter has finished converting a font, it offers you to write

a font batch file. It looks like this:



\pagebreak



\begin{verbatim}

This is a font batch file for the Calamus Font Converter

General settings:



DEBUG=FALSE

CORRECT=TRUE

FLOAT=1

LIGTABLE=256

SIZE=10

QUAD=18

SPACE=5

STRETCH=2

SHRINK=2

SLANT=0

EXTRA=5

INTER LETTER SPACE=5

SCALE_FACTOR=AUTO

CALAMUS FONT=D:\SOUV5ME.CFN

METAFONT FILE=D:\SOUV5ME.MF



Font conversion data:

A="A"  (+---------)

B="B"  (+---------)

C="C"  (+---------)

D="D"  (+---------)

\end{verbatim}



You can change these settings with the help of any text editor.



If you want to convert the font more than once (e.\,g. if you want to change 
something) you can do it by simply selecting this file in the first file 
selector. If you want to change a similar font (e.\,g. another font of the 
same family), you can reuse the old font batch file, perhaps you will have 
to make small adjustments.



\paragraph{And what does this stuff mean?}



Every line that does not contain a ``=''-character is treated as a comment. 
All other lines define variables.



Some of them are handed over to \mf\ without any changes:



\begin{center}

\begin{tabular}{|r|l|}

\hline

SIZE     & font\_size\\

QUAD     & font\_quad\\

SPACE    & font\_normal\_space\\

STRETCH  & font\_normal\_stretch\\

SHRINK   & font\_normal\_shrink\\

SLANT    & font\_slant\\

EXTRA    & font\_extra\_space\\

\hline

\end{tabular}

\end{center}



Others are used by the converter:



If DEBUG is set to TRUE, the converter will insert a ``{\tt screen\-strokes; 
showit;}'', so you can watch \mf\ while compiling your font. 



FLOAT defines the number of digits after the decimal point. The more digits 
you have, the more precise your \mf-font will look like the Calamus-font 
(which is extremely important when producing characters that are larger than 
a page and you are looking at it with something having a higher frequency 
than visible light), but your \verb|.MF|-files will grow enormously.



INTER LETTER SPACE is the variable ``i'', that is added to the character 
width. SCALE\_FACTOR influences the ``font\_x\_height''. If you set the 
FACTOR to AUTO, it will be calculated out of the character dimensions of the 
Calamus-font.



LIGTABLE limits the number of ligtable entries to the given number. In the

actual \mf-version it is set to 256. In the shareware version the limit 
cannot exceed 10 --- so you cannot convert bigger fonts with it.



Since 256 is not enough in some fonts (especially if most of the characters 
are slanted very much), there is a CORRECTION factor. If you set it to TRUE, 
the character width (which is defined by \mf's \verb|beginchar|-command, and 
which is passed to \TeX) will be decreased. The following characters will 
jump to the left without using another ligtable entry. If you set CORRECTION 
to AUTO, it will be decreased even more, so that some characters can reach 
into the character in front of them (in extreme situations); on an average 
they will fit better. But there is a disadvantage using CORRECTION: The 
correction widths are calculated by comparing all characters of one font to 
each other. If you combine them with characters of other fonts (in \TeX), 
this won't work.



Last not least there are CALAMUS FONT and METAFONT FILE, they contain the 
name and path of these two files, so you do not have to enter those every 
time you want to convert them again.



Below there is the section ``Font Conversion Data'':



It contains every character in the font. On the left you can find the 
\mf-character, on the right there is the corresponding Calamus-character. 
You can exchange some characters by switching these entries --- this is done 
with the German character ``\ss'' by default because in Calamus it has 
another position than in \mf. If you find it difficult to type a specific 
character, you can enter its ASCII-value instead (decimal or in hex with a 
preceeding \$).



To the right of this definition there may be up to 40 ``+'' or ``$-$'', 
which represent the function keys. Plus means fill, minus means unfill.



\bigskip



I hope you enjoy using the converter. If you want to use it regularly or use 
a converted font regularly, you should have another look at 
section~\ref{share}. If there are still any questions, you can send me an 
E-Mail to the BBS Maus Hamburg~2, Phone number: 040/656\,40\,31 (from 
Germany, from other countries you have to use another area code) (It 
supports 300--14400 Baud). Or you can send it via the MausNet to Christoph 
Pagalies~@~HH2 (Gateways to Fido, UUCP etc.)



\end{document}


