On my various visits to Ghana, I have inevitably noticed the various symbols painted on compound walls and elsewhere – often used to name hotels. I learned that these are Adinkra symbols, a tradition of the Akan people. Each one represents a particular saying or aphorism, though there does not appear to be much connection between the glyph and the meaning – you just have to know.
I found a website, www.adinkraps.org, with a fairly comprehensive list. Each symbol is listed with its literal translation, and practical meaning. Usually even the connection between translation and meaning is also rather tenuous. You can download the symbols from the website, and they can be copied or reproduced. However, as picked up from the internet they are inevitably bit- maps, and enlargement makes the pixels very obvious.
Medium size, variable quality
Large, quite well drawn
Medium, crudely drawn
Large, well drawn
St Lawrence University have recently upgraded their website, and the Adinkra symbols are not easy to find. They appear to have moved to www.yumpu.com, where they can be found using their site search facility; they do, however, have an introductory text giving some history of Adinkra.
The present site, with some 138 symbols, is believed to be the union of all of the above, including some from sites selling clothing and jewellery, where only a few samples are on offer.
Some symbols have alternative forms, as, for example, Adinkrahene or Sankofa. Only those where the differences are significant have been listed more than once; for others, the best-looking example has been used as a model.
The complete list of symbols is given in Adinkra_all.pdf, which requires the readily available Acrobat pdf reader.
As noted above, any attempt to download symbols – using, for example, the Windows snipping tool – gives very visible pixels if enlarged. I decided to try to convert them to geometric outlines. The most powerful graphical language that I know is PostScript, and that is what I have elected to use. The resulting catalogue is the result, here presented as a pdf file. Of course, downloading any of these (by, for example, using the “snip” tool) will still give a bit- mapped result: to get anything better, you need to use the original code, which can then be enlarged indefinitely, up to the limits of the media.
However, to do this you need to be able to write PostScript, which is not the easiest language. The code for all the symbols is given here, as a text file: to interpret it, you need Ghostscript and Ghostview, both available as free downloads. (Strictly speaking, the file should be suffixed .ps, but you can right-click and use the “open with” facility; the .txt suffix has been used to make editing a bit easier, and to prevent Ghostscript opening it by default – one spends more time editing the file than displaying it.)
The code file includes all the symbols that I have – 138 at the time of writing this – as Postscript procedures. If you wish to use any one symbol, you need to write some code to call the procedure, after extracting it from the file.
The arguments for each procedure are the same: size and the x0 y0 coordinates of the position, in current user coordinates of the calling program.
Each symbol then lies within a 2x1 rectangle, with the origin in the centre of the bottom edge. That is, the symbol is guaranteed to lie within the limits
x ∈ [x0 – size, x0 + size], y ∈ [y0, y0 + size]
– though note that these limits are seldom achieved, at least in x, the y dimension usually being determined to accommodate the whole of the symbol, so that a sequence of symbols ranges nicely. Within the code for each procedure, the scaling given by the size argument is used, to give a strictly 2x1 rectangle, as in this example, which shows an Adinkra symbol (bi-nka-bi), designed with a size determined by its vertical extent (size parameter). (The grid lines are at 0.1 intervals.)
The code file is Adinkra_all.txt. (It should strictly be suffixed .ps, so that it calls gsview automatically.)I t contains procedures for all the symbols shown in the pdf file. These are preceded by other procedures which are called by those defining the symbols. Note that, wherever there is an apparent symmetry (sometimes more than one), advantage has been taken of this to simplify the code. The result is a “cleaned up” version of the symbol, which some may consider over-sanitised; the saving in code (and therefore man- hours) would nevertheless seem to make this a sensible course.
A curiosity in the code is the occasional comment
followed by one or more straight lines. There seems to be a defect in the Ghostscript-Ghostview combination, in that two separately filled areas sharing a common boundary do not always cover that boundary, which remains as a faint white line; this is true even when the two areas have the same “winding sense” The in-fill lines are supposed to cover these with a “zero-” (minimal-)width line.
The last part of the code calls the symbol procedures one by one, with automatic placement, labelling and pagination, and a symbol count at the end through the procedure nextsym,. Another defect of Ghostscript- Ghostview is that it will not display pages after the first, unless the meta- data for the pages is included in the code file. This is impossible to provide, as the pagination is dynamic. However, using File>Convert to generate a pdf file does produce all of the pages, which is not inconvenient, as a pdf file is fairly universally readable, and individual symbols can be magnified without pixellation.
Although I have asserted my copyright in the code file, it is nevertheless free to use for non-commercial purposes. The comment is intended solely to prevent assertion of copyright by other people.
T H G, 11/11/2020