Symbian Developer Library

SYMBIAN OS V6.1 EDITION FOR C++

[Index] [Glossary] [Previous] [Next]



Bitmaps Overview


Purpose

Provides handling of bitmaps and bitmap devices.

[Top]


Architectural relationships

The Bitmaps API provides concrete implementations for bitmap devices of the abstract drawing device and context interfaces defined in the Graphics API. These are normally only directly accessed by applications to draw to in-memory bitmaps. Applications access the screen itself through the window server.

The API also provides handling of bitmaps themselves. These are stored for fast access in a shared-memory heap and are directly accessible to all graphics programs, and the window server. The font and bitmap server manages sharing of fonts and bitmaps between clients, though the client/server access is hidden by the API.

[Top]


Description

The API has four key concepts: bitmap graphics context (CGraphicsContext), bitmap graphics device (CBitmapDevice), bitmap (CFbsBitmap), and bitmap utilities (TBitmapUtil).


Bitmap graphics context

This specialises a graphics context (CGraphicsContext) for bitmaps graphics. It provides additional operations for clearing and copying rectangular areas, and bitmap block transfer.

The abstract interface is defined by CBitmapContext. The Window Server Client-Side API provides one implementation, CWindowGc, used for screen drawing. Another implementation, CFbsBitGc, is used for drawing to in-memory bitmaps.


Bitmap graphics device

This specialises a graphics device (CGraphicsDevice) for bitmaps graphics.

The abstract interface is defined by CBitmapDevice. The Window Server Client-Side API provides one implementation, CWsScreenDevice, for screen drawing. Another implementation, CFbsBitmapDevice, is used for drawing to in-memory bitmaps. A third, CFbsScreenDevice, is used (rarely) to access the screen directly, without the mediation of the window server.


Bitmap

The CFbsBitmap class provides facilities for creating, loading, saving, and resizing bitmaps. It is used to encapsulate bitmaps in all graphics operations. Bitmaps are commonly either loaded from a multi-bitmap file (.mbm) file, or created and drawn to off-screen, and then blitted to a window.

Note that the CFbsBitmap format is internal to Symbian, but the Image Converter API can be used to convert them to standard formats.


Bitmap utilities

The bitmap utilities class provides functions to operate on the individual bits within a bitmap. It is provided by TBitMapUtil.

[Top]


See also

Fonts Overview

Graphics Overview

Window Server Client Side Overview