+Hints for stem attachment
+-------------------------
+
+. Stem attachment of glyphs is controlled by two special variables called
+ `charwx' and `charwy'. Stems can be regarded as (very oblonged)
+ rectangles with slightly rounded corners. For stems pointing upwards the
+ lower right corner of this rectangle is attached to the glyph at position
+ (charwx, charwy). For stems pointing downwards it works analogously but
+ with the upper left corner, where the position of the attachment point is
+ additionally reflected horizontally about the center of the glyph -- this
+ ensures that in most cases `charwx' and `charwy' can be set to the same
+ values for up and down stems even though these are attached at the
+ right/left end of the note, respectively. To make this more precise, the
+ upper left corner of a down stem is attached at position
+
+ (charwd/2 - charwx, charwy) ,
+
+ where `charwd' is an internal MetaFont variable representing the glyph
+ width as specified by the `set_char_box' command.
+
+. In case different stem attachments for upward and downward pointing stems
+ are needed, two separate glyphs must be defined in the MetaFont file; of
+ course, this also applies if two entirely different shapes are needed.
+ These have the same name but are prefixed by `u' and `d', respectively
+ (for `up' and `down', obviously). In each of these glyphs the variables
+ `charwx' and `charwy' must be set accordingly. If, on the other hand, the
+ attachment point is the `same' for both directions (with the
+ abovementioned horizontal reflection taken into account), then the prefix
+ `s' (for `symmetric') should be used. See the existing files for
+ examples. The numbers in the glyph names refer to the duration of the
+ note; e.g., `s0cross' in feta-noteheads.mf defines the notehead for a
+ whole cross-shaped note (similarly, `s1cross' and `s2cross' are for half
+ and quarter notes, respectively).
+
+
+Proofing
+--------
+
+The proofing tool for MetaFont to inspect its output is `gftodvi',
+converting a font in MetaFont's native GF font format to a DVI document,
+which can then be viewed with DVI viewers like `xdvi'. The `gftodvi'
+program needs two special fonts, `gray' and `black'. Assuming that you are
+using TeXLive, say
+
+ mktextfm gray
+ mktextfm black
+
+on the command line to generate the needed metric files (from its source
+files), which are then stored within your local TEXMF tree.
+
+Here is a shell script that you can use to produce two DVI files,
+`foo.proof.dvi' and `foo.ljfour.dvi', showing the glyphs of font `foo.mf' in
+proofing mode and a 600dpi rasterization for a LaserJet IV printer.
+
+ #!/bin/sh
+ mf "\mode:=proof; input $1"
+ gftodvi $1.2602gf && mv $1.dvi $1.proof.dvi
+
+ mf "\mode:=ljfour; input $1"
+ echo "grayfont black
+ " | gftodvi $1.600gf/ \
+ && mv $1.dvi $1.ljfour.dvi
+
+Assuming that you name this script `makefeta.sh', you can call it with e.g.
+
+ sh makefeta.sh feta23
+
+The main importance of the proofing DVI output is to show points marked in
+the MetaFont source code with the macros `penlabels' and `labels'. In most
+cases, those points are used for constructing the shapes only and are thus
+not present in the output after the conversion with mf2pt1.
+
+
+Rasterization
+-------------
+
+Finally, some rules to assure that rasterization at low resolutions
+(produced directly with MetaFont) gives good results. Today, this is a
+minor issue, but in some cases it might show design flaws.