diff -r 51a74ef9ed63 -r ae94777fff8f Symbian3/SDK/Source/GUID-C1B080D9-9C6C-520B-B73E-4EB344B1FC5E.dita --- a/Symbian3/SDK/Source/GUID-C1B080D9-9C6C-520B-B73E-4EB344B1FC5E.dita Wed Mar 31 11:11:55 2010 +0100 +++ b/Symbian3/SDK/Source/GUID-C1B080D9-9C6C-520B-B73E-4EB344B1FC5E.dita Fri Jun 11 12:39:03 2010 +0100 @@ -1,91 +1,91 @@ - - - - - -GDI -Collection OverviewThe Graphics Device Interface (GDI) collection is an important -collection within the Graphics subsystem. It provides a suite of abstract -base classes, interfaces and data structures. The suite represents and interacts -with physical graphics hardware such as display screens, off-screen memory -and printers. -
Architectural Relationship

The GDI collection provides -base classes and utility functions. Every graphics component ends up using -it. The components in this collection are closely linked and provide important -functionality. The GDI component is a low-level component in this collection, -BitGDI is based on this and DirectGDI is a potentially faster alternative -to BitGDI. The Colour Palette provides coloring indexing operations.

-
Description

GDI consists of a large number of diverse -APIs that cover many different aspects of graphics including graphics device -abstraction, color value handling, linear digital differential analysis, font -description and information, printer devices abstraction, line breaking, text -rendering, handling of bidirectional text, text wrapper and linked font creation.

Graphics -Device Interface collection includes the following components:

    -
  • GDI

  • -
  • BitGDI

  • -
  • DirectGDI

  • -
  • Colour Palette

  • -
-
GDI

GDI -is a low level component. Two key concepts related to GDI are Device (CGraphicsDevice) -and Context (CGraphicsContext). Throughout the Graphics -sub-system a graphics device provides a graphics context through which the -device may be drawn to. The context maintains 'settings', such as the pen -and brush colors and styles in use, and provides a rich API of drawing commands -for creating graphical and textual output.

Most display devices use -bitmap graphics and the GDI provides specializations of both CGraphicsDevice and CGraphicsContext to -act as base classes for bitmap devices: namely CBitmapDevice and CBitmapContext. -These add, amongst other attributes, pixel awareness, blitting, scanlines -and fading.

The GDI defines abstract base classes for storing and -manipulating fonts (CFont, CTypefaceStore, CFontCache) -and additional supporting classes and structures.

The GDI defines -the interface for mapping between device-specific pixels and real-world twips. -A twip is a twentieth of a point and a point is 1/72 of an inch. That makes -a twip 1/1440 of an inch, 1/567 of a centimeter or about 0.018mm.

The -GDI defines a base class for representing embedded pictures, CPicture, -and supporting classes. It also provides base classes, interfaces and structures -for printing.

-
BitGDI

The BitGDI Component is -used by legacy applications and the Window Server in the non-ScreenPlay -variant. The BitGDI component provides the CFbsScreenDevice and CFbsBitGc APIs, -which are concrete implementations of CGraphicsDevice and CGraphicsContext for -bitmap-based devices. This component enables:

    -
  • hardware-independent -access to screen attributes

  • -
  • bitmapped drawing which -holds settings and supports drawing to bitmapped devices and screens independent -of the display.

  • -
- -
-
Colour -Palette

The Colour -Palette component provides coloring functionality. A user can specify -the use of a particular color, as described by a TRgb, -and have that color rendered on a machine’s display device as closely as possible -to the color specified. A related functionality allows arrays of colors to -be stored as bitmaps, and displayed at a later date in the same manner.

Color -palettes also provide user-definable palette support to the GDI. A palette -is a user-defined set of colors, which is a subset of the full range of 24-bit -colors. This allows users the advantages of having a low bpp color mode whilst -being able to specify the colors available in that mode. Only a palette of -16 colors enables changing the palette. Palettes are also used to allow 24-bit -bitmaps to be stored in a more compressed form by finding the actual number -of different colors used in the bitmap. This creates a palette that allows -mapping of colors to a smaller index space. The pixels of the bitmaps are -encoded using indexes to this new index space. A palette has a size which -is set at its creation and cannot alter the number of entries in the palette. -Each entry in a palette is a mapping between that entry's index and a TRgb value. -Palette entries can be got and set at any time between the palette's creation -and destruction. The GDI's palette support also provides functions to find -the nearest palette color to a requested TRgb color.

-
-Graphics -Device Interface (GDI) Collection + + + + + +GDI +Collection OverviewThe Graphics Device Interface (GDI) collection is an important +collection within the Graphics subsystem. It provides a suite of abstract +base classes, interfaces and data structures. The suite represents and interacts +with physical graphics hardware such as display screens, off-screen memory +and printers. +
Architectural Relationship

The GDI collection provides +base classes and utility functions. Every graphics component ends up using +it. The components in this collection are closely linked and provide important +functionality. The GDI component is a low-level component in this collection, +BitGDI is based on this and DirectGDI is a potentially faster alternative +to BitGDI. The Colour Palette provides coloring indexing operations.

+
Description

GDI consists of a large number of diverse +APIs that cover many different aspects of graphics including graphics device +abstraction, color value handling, linear digital differential analysis, font +description and information, printer devices abstraction, line breaking, text +rendering, handling of bidirectional text, text wrapper and linked font creation.

Graphics +Device Interface collection includes the following components:

    +
  • GDI

  • +
  • BitGDI

  • +
  • DirectGDI

  • +
  • Colour Palette

  • +
+
GDI

GDI +is a low level component. Two key concepts related to GDI are Device (CGraphicsDevice) +and Context (CGraphicsContext). Throughout the Graphics +sub-system a graphics device provides a graphics context through which the +device may be drawn to. The context maintains 'settings', such as the pen +and brush colors and styles in use, and provides a rich API of drawing commands +for creating graphical and textual output.

Most display devices use +bitmap graphics and the GDI provides specializations of both CGraphicsDevice and CGraphicsContext to +act as base classes for bitmap devices: namely CBitmapDevice and CBitmapContext. +These add, amongst other attributes, pixel awareness, blitting, scanlines +and fading.

The GDI defines abstract base classes for storing and +manipulating fonts (CFont, CTypefaceStore, CFontCache) +and additional supporting classes and structures.

The GDI defines +the interface for mapping between device-specific pixels and real-world twips. +A twip is a twentieth of a point and a point is 1/72 of an inch. That makes +a twip 1/1440 of an inch, 1/567 of a centimeter or about 0.018mm.

The +GDI defines a base class for representing embedded pictures, CPicture, +and supporting classes. It also provides base classes, interfaces and structures +for printing.

+
BitGDI

The BitGDI Component is +used by legacy applications and the Window Server in the non-ScreenPlay +variant. The BitGDI component provides the CFbsScreenDevice and CFbsBitGc APIs, +which are concrete implementations of CGraphicsDevice and CGraphicsContext for +bitmap-based devices. This component enables:

    +
  • hardware-independent +access to screen attributes

  • +
  • bitmapped drawing which +holds settings and supports drawing to bitmapped devices and screens independent +of the display.

  • +
+ +
+
Colour +Palette

The Colour +Palette component provides coloring functionality. A user can specify +the use of a particular color, as described by a TRgb, +and have that color rendered on a machine’s display device as closely as possible +to the color specified. A related functionality allows arrays of colors to +be stored as bitmaps, and displayed at a later date in the same manner.

Color +palettes also provide user-definable palette support to the GDI. A palette +is a user-defined set of colors, which is a subset of the full range of 24-bit +colors. This allows users the advantages of having a low bpp color mode whilst +being able to specify the colors available in that mode. Only a palette of +16 colors enables changing the palette. Palettes are also used to allow 24-bit +bitmaps to be stored in a more compressed form by finding the actual number +of different colors used in the bitmap. This creates a palette that allows +mapping of colors to a smaller index space. The pixels of the bitmaps are +encoded using indexes to this new index space. A palette has a size which +is set at its creation and cannot alter the number of entries in the palette. +Each entry in a palette is a mapping between that entry's index and a TRgb value. +Palette entries can be got and set at any time between the palette's creation +and destruction. The GDI's palette support also provides functions to find +the nearest palette color to a requested TRgb color.

+
+Graphics +Device Interface (GDI) Collection
\ No newline at end of file