In ISO/IEC 646 (commonly known as ASCII) and related standards including ISO 8859 and Unicode, a graphic character, also known as printing character (or printable character), is any character intended to be written, printed, or otherwise displayed in a form that can be read by humans. In other words, it is any encoded character that is associated with one or more glyphs.

ISO/IEC 646

edit

In ISO 646, graphic characters are contained in rows 2 through 7 of the code table. However, two of the characters in these rows, namely the space character SP at row 2 column 0 and the delete character DEL (also called the rubout character) at row 7 column 15, require special mention.

The space is considered to be both a graphic character and a control character in ISO 646.[1] It can be considered as a character with a visible form or, in contexts such as teleprinters, a control character that advances the print head without printing a character.

The delete character is strictly a control character, not a graphic character. This is true not only in ISO 646, but also in all related[clarification needed] standards including Unicode. However, many other character sets deviate from ISO 646, and as a result a graphic character might[a] occupy the position originally reserved for the delete character.[b]

Unicode

edit

In Unicode, Graphic characters are those with General Category Letter, Mark, Number, Punctuation, Symbol or Zs=space. Other code points (General categories Control, Zl=line separator, Zp=paragraph separator) are Format, Control, Private Use, Surrogate, Noncharacter or Reserved (unassigned).[2]

Spacing and non-spacing characters

edit

Most graphic characters are spacing characters, which means that each instance of a spacing character has to occupy some area in a graphic representation. For a teletype or a typewriter this implies moving of the carriage after typing of a character. In the context of text mode display, each spacing character occupies one rectangular character box of equal sizes. Or maybe two adjacent ones, for non-alphabetic characters of East Asian languages. If a text is rendered using proportional fonts, widths of character boxes are not equal, but are positive.

There exist also non-spacing graphic characters. Most of non-spacing characters are modifiers, also called combining characters in Unicode, such as diacritical marks. Although non-spacing graphic characters are uncommon in traditional code pages, there are many such in Unicode. A combining character has its distinct glyph, but it applies to a character box of another character, a spacing one. In some historical systems such as line printers this was implemented as overstrike.

Note that not all modifiers are non-spacing – there exists Spacing Modifier Letters Unicode block.

See also

edit

Notes

edit
  1. ^ as is the case in code page 437 and related standards
  2. ^ This does not mean the delete character is absent; it just means 0x7F is overloaded, and outputting it will either print the graphical character or perform a deletion, depending on the routine used. For example in most BASIC implementations, using the PRINT command with 0x7F will delete, but using POKE will output the graphical character.

References

edit
  1. ^ L.R. Henderson; A.M. Mumford (20 May 2014). The Computer Graphics Metafile: Butterworth Series in Computer Graphics Standards. Elsevier Science. p. 102. ISBN 978-1-4831-4484-9.
  2. ^ https://www.unicode.org/versions/Unicode5.2.0/ch02.pdf#G25564 Chapter 2, table 2.3