PageRenderTime 17ms CodeModel.GetById 11ms app.highlight 2ms RepoModel.GetById 1ms app.codeStats 0ms

#! | 48 lines | 42 code | 6 blank | 0 comment | 0 complexity | 807bdcadbabda4419aea8784ce277717 MD5 | raw file
 4This program expects a set of directories containing good fonts, and a set
 5of extensions of fonts to be tested.  It will randomly pick a font, copy it,
 6introduce and error and then test it.
 8The FreeType tests are quite basic:
10  For each erroneous font it
11    forks off a new tester;
12    initializes the library;
13    opens each font in the file;
14    loads each glyph;
15      (optionally reviewing the contours of the glyph)
16      (optionally rasterizing)
17    closes the face.
19If the tester exits with a signal, or takes longer than 20 seconds then
20ftrandom saves the erroneous font and continues.  If the tester exits
21normally or with an error, then the superstructure removes the test font and
24Arguments are:
26  --all                    Test every font in the directory(ies) no matter
27                           what its extension (some CID-keyed fonts have no
28                           extension).
29  --check-outlines         Call FT_Outline_Decompose on each glyph.
30  --dir <dir>              Append <dir> to the list of directories to search
31                           for good fonts.
32  --error-count <cnt>      Introduce <cnt> single-byte errors into the
33                           erroneous fonts.
34  --error-fraction <frac>  Multiply the file size of the font by <frac> and
35                           introduce that many errors into the erroneous
36                           font file.
37  --ext <ext>              Add <ext> to the set of font types tested.  Known
38                           extensions are `ttf', `otf', `ttc', `cid', `pfb',
39                           `pfa', `bdf', `pcf', `pfr', `fon', `otb', and
40                           `cff'.
41  --help                   Print out this list of options.
42  --nohints                Specify FT_LOAD_NO_HINTING when loading glyphs.
43  --rasterize              Call FT_Render_Glyph as well as loading it.
44  --result <dir>           This is the directory in which test files are
45                           placed.
46  --test <file>            Run a single test on a pre-generated testcase. 
47                           Done in the current process so it can be debugged
48                           more easily.