This document uses the following terms:
affine transform: A matrix operation that consists of a linear transform followed by a translation. An affine transform can be used to correct perspective distortions by transforming the measurements from world space to device space coordinates.
alpha blending: In computer graphics, the process of combining an image with a background to create the appearance of partial transparency. The extent of blending is determined by the value of the alpha component of the color being rendered.
alpha transparency: An alpha value is a transparency value represented by a number between zero and one. Each pixel has an alpha value that represents its level of transparency, which is multiplied by the color values to get the final value. Each pixel has an alpha value that represents its level of transparency.
American National Standards Institute (ANSI) character set: A character set defined by a code page approved by the American National Standards Institute (ANSI). The term "ANSI" as used to signify Windows code pages is a historical reference and a misnomer that persists in the Windows community. The source of this misnomer stems from the fact that the Windows code page 1252 was originally based on an ANSI draft, which became International Organization for Standardization (ISO) Standard 8859-1 [ISO/IEC-8859-1]. In Windows, the ANSI character set can be any of the following code pages: 1252, 1250, 1251, 1253, 1254, 1255, 1256, 1257, 1258, 874, 932, 936, 949, or 950. For example, "ANSI application" is usually a reference to a non-Unicode or code-page-based application. Therefore, "ANSI character set" is often misused to refer to one of the character sets defined by a Windows code page that can be used as an active system code page; for example, character sets defined by code page 1252 or character sets defined by code page 950. Windows is now based on Unicode, so the use of ANSI character sets is strongly discouraged unless they are used to interoperate with legacy applications or legacy data.
anti-aliasing: The smoothing of the jagged appearance of font characters and lines, which is an artifact of the limited resolution on an output device. The pixels that surround the edges of the character glyph or line are changed to varying shades of color in order to blend the sharp edge into the background.
ASCII: The American Standard Code for Information Interchange (ASCII) is an 8-bit character-encoding scheme based on the English alphabet. ASCII codes represent text in computers, communications equipment, and other devices that work with text. ASCII refers to a single 8-bit ASCII character or an array of 8-bit ASCII characters with the high bit of each character set to zero.
baseline: The imaginary line to which the bottom of the lowercase "x" character in a font typeface is aligned.
Bezier curve: A type of curve, defined by a mathematical formula and a number of points greater than or equal to two, which is used in computer graphics and in the mathematical field of numeric analysis. A cubic Bezier curve is defined by four points: two endpoints and two control points. The curve does not pass through the control points, but the control points act like magnets, pulling the curve in certain directions and influencing the way the curve bends. With multiple Bezier curves, the endpoint of one is the starting point of the next.
blur effect: An image effect that is used to remove detail, resulting in an image that appears as if viewed through a translucent lens. A Gaussian blur uses a Gaussian distribution to calculate changes to individual pixels in the image. A Gaussian distribution is a statistical probability distribution that produces a "bell curve".
box filter: An anti-aliasing algorithm that averages the pixels in a rectangular area to compute a new value for the pixels. It is useful only for reducing the size of images.
cardinal spline: A spline with curves that pass smoothly through each of its control points. The degree of curvature is defined by a tension parameter. The curve has no sharp corners or abrupt changes. A complete derivation of the cubic polynomials for the canonical spline can be found in [SPLINE77]. See also [PETZOLD] for more information.
ClearType: A font technology developed by Microsoft that can display fractions of pixels of character glyphs and which improves the readability of text on liquid crystal displays (LCDs) and flat-panel monitors.
closed cardinal spline: A cardinal spline with a curve that passes through the last defined point and connects with the first.
color balance effect: An image effect that produces optimal color display by adjusting the relative amounts of red, green, and blue in the image.
color channel: A component color from which all colors in an image are rendered. In an RGB color space, there are color channels for red, green, and blue. In a grayscale color space, the color channels are black and white. Color channel values typically range from 0 to 255.
color curve effect: An image effect that is used to apply one of eight adjustments to the color curve of an image: exposure, density, contrast, highlight, shadow, midtone, white saturation, and black saturation.
color lookup table effect: An image effect that is used to make custom color adjustments to images. A lookup table is defined for four individual color channels: alpha (transparency), red, green, and blue. Each lookup table is an array of 256 bytes that can be set to specific values.
color mapping: The process of associating integer color indices with color channel values.
color matrix: A matrix of floating-point values from zero to one, inclusive, that can be multiplied with a color vector to effect a color transform. A 4x4 matrix can be used to perform linear transforms, and a 5x5 matrix can be used to perform nonlinear transforms.
color vector: An RGB plus alpha value that represents a specific color and transparency. Each value is in the range of zero to one, inclusive; for red, green and blue, zero means no intensity of the color and one means maximum intensity.
color wheel: An organization of color hues around a circle, showing relationships between colors considered to be primary, secondary, and complementary. In an RGB color space, red, green, and blue primary colors are arranged at equally spaced points around the circle. Magenta, yellow, and cyan secondary colors and tertiary mixtures are located at intermediate points on the circle. The center is white or gray.
coordinate space: A space based on Cartesian coordinates, which provides a means of specifying the location of each point in the space. A two-dimensional coordinate space requires two axes that are perpendicular and equal in length. Three two-dimensional coordinate spaces are generally used to describe an output surface: world, page, and device. To scale device-independent output for a particular physical device, a rectangular area in the world or page coordinate space is mapped into the device coordinate space using a transform
device context: A collection of properties and objects that defines a dynamic environment for processes on a device. For graphics output, properties include brush style, line style, text layout, foreground and background colors, and mapping mode; and objects include a brush, pen, font, palette, region, and transform matrix. Multiple device contexts can exist simultaneously, but a single device context specifies the environment for graphics output at a particular point in time.
device driver: The software that the system uses to communicate with a device such as a display, printer, mouse, or communications adapter. An abstraction layer that restricts access of applications to various hardware devices on a given computer system. It is often referred to simply as a "driver".
device space: The output space for graphics transforms. It usually refers to the client area of an application window; however, it can also include the entire desktop, a complete window, or a page of printer or plotter paper. Physical device space dimensions vary according to the dimensions set by the display, printer, or plotter technology.
device-independent bitmap (DIB): A container for bitmapped graphics, which specifies characteristics of the bitmap such that it can be created using one application and loaded and displayed in another application, while retaining an identical appearance.
dithering: A form of digital halftoning.
em size: A measure of font size, which is the cell height minus the internal leading. An "em" is a term that has been used historically as a unit of typeset size.
enhanced metafile spool format (EMFSPOOL): A format that specifies a structure of enhanced metafile format (EMF) records used for defining application and device-independent printer spool files.
Exchangeable Image File Format (EXIF): A de facto standard format for storing files containing digital photographic images and audio files. EXIF uses existing formats for data compression, including JPEG and TIFF; but it is not supported by older versions of JPEG, PNG, or GIF. EXIF specifies metadata tags for storing information about a photographic image, including camera make and model, shutter speed, exposure compensation, F-stop, the metering system, whether a flash was used, the date and time the photograph was taken, auxiliary lenses that were used, the resolution, and a thumbnail image for previewing the photograph. EXIF is specified in [EXIF].
font axis: A property of font design that can assume a linear range of values. In general, a font has multiple axes. For example, a font may define an axis for weight, along which range the possible values for that property.
gamma: A value that describes the way brightness is distributed across the intensity spectrum by a graphics device. Depending on the device, the gamma can have a significant effect on the way colors are perceived. Technically, gamma is an expression of the relationship between input voltage and resulting output intensity. A perfect linear device would have a gamma of 1.0; a monitor or printer typically has a gamma in the range of 1.8 to 2.6, which affects midrange tones. Gamma values are used to implement gamma correction. Typically, separate gamma values are used for each component of a color space.
globally unique identifier (GUID): A term used interchangeably with universally unique identifier (UUID) in Microsoft protocol technical documents (TDs). Interchanging the usage of these terms does not imply or require a specific algorithm or mechanism to generate the value. Specifically, the use of this term does not imply or require that the algorithms described in [RFC4122] or [C706] must be used for generating the GUID. See also universally unique identifier (UUID).
Graphics Device Interface, Extended (GDI+): A Windows API, supported on 32-bit and 64-bit versions of the operating system, that extends GDI to include support for Bezier curves, gradient brushes, image effects, and EMF+ metafiles.
Graphics Interchange Format (GIF): A compression format that supports device-independent transmission and interchange of bitmapped image data. The format uses a palette of up to 256 distinct colors from the 24-bit RGB color space. It also supports animation and a separate palette of 256 colors for each frame. The color limitation makes the GIF format unsuitable for reproducing color photographs and other images with gradients of color, but it is well-suited for simpler images such as graphics with solid areas of color.
grayscale: A continuum of shades of gray that are used to represent an image. Continuous-tone images, such as black-and-white photographs, use an almost unlimited number of shades of gray. Conventional computer hardware and software, however, can represent only a limited number of gray shades, typically 16 or 256. Grayscaling is the process of converting a continuous-tone image to an image that a computer can manipulate. Note that grayscaling is different from dithering. Dithering simulates shades of gray by altering the density and pattern of black and white dots. In grayscaling, each individual dot can have a different shade of gray.
halftoning: The process of converting grayscale, or continuous-tone graphics or images, to a representation with a discrete number of gray (or tone) levels.
hotkey prefix: In a graphical user interface, the underlined letter in a word that can be pressed in combination with another key, such as the Alt key, to activate the functionality that the word represents.
Image Color Management (ICM): Technology that ensures that a color image, graphic, or text object is rendered as closely as possible to its original intent on any device despite differences in imaging technologies and color capabilities between devices.
image effect: A graphics process for changing the appearance of an image to produce a specific effect, including applying a transform, improving the quality of rendering, emphasizing or hiding a feature, creating a style, accounting for device limitations, and changing colors. The image effects specified in EMF+ metafiles include blur, brightness contrast, color balance, color curve, color lookup table, color matrix, hue saturation lightness, levels, red-eye correction, sharpen, and tint.
Joint Photographic Experts Group (JPEG): A raster graphics file format for displaying high-resolution color graphics. JPEG graphics apply a user-specified compression scheme that can significantly reduce the file sizes of photo-realistic color graphics. A higher level of compression results in lower quality, whereas a lower level of compression results in higher quality. JPEG-format files have a .jpg or .jpeg file name extension.
levels effect: An image effect that is used to apply highlight, midtone, or shadow adjustments to an image. Highlights are the light parts of an image, shadows are the dark parts, and midtones are the colors that occupy the middle of the tonal range between the highlights and the shadows.
metafile: A sequence of record structures that store an image in an application-independent format. Metafile records contain drawing commands, object definitions, and configuration settings. When a metafile is processed, the stored image can be rendered on a display, output to a printer or plotter, stored in memory, or saved to a file or stream.
miter length: At the intersection of two lines, the distance from the intersection of the line walls on the inside of the line join to the intersection of the line walls on the outside of the line join. The miter length can be large when the angle between two lines is small. If the miter length of the join of an intersection exceeds a specified limit, the join can be beveled to keep it within the limit of the join of the intersection.
OpenGL: A software API for graphics hardware that supports the rendering of multidimensional graphical objects. The Microsoft implementation of OpenGL for the Windows operating system provides industry-standard graphics software for creating high-quality still and animated three-dimensional color images. See [OPENGL] for further information.
palette: An array of values, each element of which contains the definition of a color. The color elements in a palette are often indexed so that clients can refer to the colors, each of which can occupy 24 bits or more, by a number that requires less storage space.
path: A graphics object that is a container for a series of line and curve segments, and regions in an image.
playback device context: The device context that defines the current graphics state during playback of the metafile. Although the data in a metafile can be device-independent, playback is always associated with an output device with specific properties, such as resolution, color support, and so on.
Portable Network Graphics (PNG): A bitmap graphics file format that uses lossless data compression and supports variable transparency of images (alpha channels) and control of image brightness on different computers (gamma correction). PNG-format files have a .png file name extension.
red-eye correction effect: An image effect that is used to correct the red eyes that sometimes occur in flash photographs as a result of the reflection of light from the flash.
reflection transform: A transform that is used to create a mirror image of an object with respect to either the horizontal or vertical axis.
run-length encoding (RLE) compression: A form of data compression in which repeated values are represented by a count and a single instance of the value. RLE compression can significantly reduce disk and memory space requirements.
saturation: The "purity" of a hue; or, more precisely, the intensity of one color channel relative to the intensity of the other color channels. Maximum saturation occurs when the intensity of a particular color channel is maximum and the intensities of the other color channels are minimum. Minimum saturation occurs when the intensities of all color channels are the same.
scaling transform: A transform that is used to stretch or compress an object horizontally or vertically.
shear transform: A transform that is used to shear or cut an object. There are two components of a shear transform: The first alters the vertical lines in an object, and the second alters the horizontal lines.
Tag Image File Format (TIFF): A format for bitmapped image data that comes from scanners, frame grabbers, and photo-retouching applications. It supports the exchange of image data between applications, taking advantage of the varying capabilities of imaging devices. TIFF supports a number of compression schemes that allow the choice of the best space or time tradeoff for applications. For more information see [RFC3302] and [TIFF].
terminal server: The computer on which nearly all computing resources reside that are used in a terminal services networking environment. The terminal server receives and processes keystrokes and mouse movements that take place on the client computer. The terminal server displays the desktop and running applications within a window on the client computer.
transform: An algorithm that transforms the size, orientation, and shape of objects that are copied from one coordinate space into another. Although a transform affects an object as a whole, it is applied to each point, or to each line, in the object.
translation transform: A transform that is used to shift each point in an object vertically, horizontally, or both, by a specified amount.
TrueType: A scalable font technology that renders fonts for both the printer and the screen. Each TrueType font contains its own algorithms for converting printer outlines into screen bitmaps, which means both the outline and bitmap information is rasterized from the same font data. The lower-level language embedded within the TrueType font allows great flexibility in its design. Both TrueType and Type 1 font technologies are part of the OpenType format.
typeface: The primary design of a set of printed characters such as Courier, Helvetica, and Times Roman. The terms typeface and font are sometimes used interchangeably. A font is the particular implementation and variation of the typeface such as normal, bold, or italics. The distinguishing characteristic of a typeface is often the presence or absence of serifs.
Unicode: A character encoding standard developed by the Unicode Consortium that represents almost all of the written languages of the world. The Unicode standard [UNICODE5.0.0/2007] provides three forms (UTF-8, UTF-16, and UTF-32) and seven schemes (UTF-8, UTF-16, UTF-16 BE, UTF-16 LE, UTF-32, UTF-32 LE, and UTF-32 BE).
MAY, SHOULD, MUST, SHOULD NOT, MUST NOT: These terms (in all caps) are used as defined in [RFC2119]. All statements of optional behavior use either MAY, SHOULD, or SHOULD NOT.