EasyManua.ls Logo

Ericsson MC 218 - Page 29

Ericsson MC 218
113 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
29
Between the GDI and the window server are two highly optimized components for implementing
bitmapped graphics operations: the BITGDI renders drawing primitives onto bitmaps — either
on- or off-screen, and the font and bitmap server (FBSERV) provides shared-memory
implementations of large graphics elements — fonts and off-screen bitmaps. For efficiency, parts
of the BITGDI are coded in assembler on ARM implementations — almost the only such code
outside the base.
The font and bitmap server uses an EPOC bitmap format supporting multiple bitmaps per file,
and optimized implementations in ROM. A tool,
bmconv, is provided in EPOC SDKs which
converts between EPOC and Windows bitmap formats.
EPOC’s graphics components implement broadly similar functionality to those of Microsoft
Windows. EPOC’s use of twips as the basic measurement unit, combined with the specification of
its basic drawing primitives, allow for easy conversion of EPOC graphics into Windows graphics.
This makes it relatively easy to implement a driver for PC-based windows-hosted printers, with
the PC connected to the EPOC machine by cable or infrared.
On the other hand, the EPOC model is fundamentally different and employs different
terminology from the Windows model. The EPOC GDI specifies graphics behaviour; the
Windows GDI is more like the EPOC GDI, FBSERV and BITGDI components combined. The
EPOC window server and CONE and higher-level GUI such as EIKON act like the Windows
graphics, windowing and event systems, plus MFC, all rolled into one: but the EPOC structure is
object-oriented from the ground up, and EIKON does not merely add object orientation to
existing graphics functionality: rather, it adds real look-and-feel to a lower-level, object oriented,
graphics framework.
8.2.4.2 Fonts
The GDI architecture allows the list of available fonts to be queried and, for each font, a list of
point sizes to be generated. The architecture requires fonts to be specified with a name and a size
(in twips, one-twentieth of a point), and then finds the nearest matching font.
The font store (FNTSTORE) keeps track of all fonts available in EPOC. It can store both
bitmapped and vector fonts. New fonts may be added to an EPOC machine at any time, without
any need to re-boot.
Standard EPOC implementations release Arial, Times New Roman and Courier fonts in a variety
of sizes, in the CP1252 code page. The Euro symbol is included at code point 0x80. Special fonts
are also provided, eg symbols for the EIKON GUI and calculator application.
8.2.4.3 Printing
Printing was designed into the GDI from the beginning, with support for any number of printer
drivers. The PRINT component handles printing, using the PDRSTORE printer driver manager.
New drivers may be installed without rebooting. A selection of common printers is supported,
together with a catch-all option which drives any printer via a PC (the PC must be running EPOC
Connect), and printing to fax.
On-screen print preview is supported. Printing uses a banded print model which can be supported
by application engines with relatively little modification to their drawing code.
8.2.4.4 Views
EPOC’s graphics components contain powerful, re-usable, application-level views:
FORM displays formatted text, honouring all the character, paragraph and style
attributes supported by ETEXT, and with highly optimized display refresh and editing
code. EPOC Word and many other applications use FORM.
GRID displays data in a spreadsheet-like grid. GRID is used by the EPOC Sheet and
EPOC Data applications.
CLOCK displays animated clocks, either digital or analogue. CLOCK is used by the
EPOC Time application, and by all EIKON toolbars.
CHART is used by EPOC Sheet to draw data in popular business presentation formats.

Other manuals for Ericsson MC 218