Original Symbian headers
Selected EUSER, Window Server, networking, graphics and device declarations
Loading...
Searching...
No Matches
gdi.h File Reference
#include <e32base.h>
#include <f32file.h>
#include <s32std.h>
#include <displaymode.h>
#include <graphics/gdi/glyphsample.h>
#include <graphics/gdi/gdiconsts.h>
#include <graphics/gdi/gdistructs.h>
#include <graphics/gdi/gdiinline.inl>
#include <gdi.inl>

Go to the source code of this file.

Classes

class  TRgb
 24-bit RGB colour value with 8 bits each for red, green and blue. More...
 
class  TDisplayModeUtils
 A set of static utility functions to get information about a display mode. More...
 
class  CPalette
 Provides user-definable palette support to the GDI. More...
 
class  TColor256Util
 Enables conversion, in both directions, between a TRgb object and an index into an arbitrary 256 colour palette. More...
 
class  TLinearDDA
 Linear digital differential analyser. More...
 
class  TTypeface
 Typeface name and attributes. More...
 
class  TFontStyle
 Encapsulates a font style. More...
 
class  TFontSpec
 Specifies the font specification in device independent terms. More...
 
class  TTypefaceSupport
 Typeface family support information. More...
 
class  CTypefaceStore
 Typeface store abstract base interface. More...
 
class  CFontCache
 Font cache. More...
 
class  MGraphicsDeviceMap
 Interface class for mapping between twips and device-specific units (pixels). More...
 
class  CGraphicsDevice
 Specifies the interface for concrete device classes. More...
 
class  TCodeSection
 Code section range information. More...
 
class  CFont
 Abstract font interface. More...
 
class  CFont::TPositionParam
 Complicated parameter block used for contextual glyph selection, ligature creation and diacritic placement when drawing text in complex scripts. More...
 
class  CFont::TPositionParam::TOutput
 Output of GetCharacterPosition and GetCharacterPosition2. More...
 
class  CFont::TMeasureTextInput
 Input parameter block. More...
 
class  CFont::TMeasureTextOutput
 Output parameter block. More...
 
class  CGraphicsContext
 Abstract base class for all graphics contexts. More...
 
struct  CGraphicsContext::TDrawTextParam
 Parameters to control the drawing of text. More...
 
struct  CGraphicsContext::TDrawTextExtendedParam
 Parameters for extended text drawing and measuring. More...
 
class  CGraphicsContext::TTextParameters
 Parameters used in drawing text within supplied context. More...
 
class  CBitmapContext
 An abstract, device-independent, interface to bitmapped graphics contexts. More...
 
class  CBitmapDevice
 Defines an abstract interface for the capabilities and attributes of a bitmapped graphics device. More...
 
class  TMargins
 A set of margins used for cropping a picture. More...
 
class  TPictureCapability
 Picture capabilities. More...
 
class  CPicture
 Abstract base class for: drawing a picture to a graphics context, storing and restoring the picture. More...
 
class  TPictureHeader
 Picture header providing an interface to a stored picture. More...
 
class  MPictureFactory
 Abstract interface for instantiating and restoring new CPicture derived objects. More...
 
class  TPageSpec
 Page specification for a print operation. More...
 
class  TBandAttributes
 Controls the attributes of the band to be printed. More...
 
class  CPrinterPort
 Printer port interface. More...
 
class  TPrinterModelEntry
 Detailed information about a printer model. More...
 
class  TPrinterModelHeader
 Information about a printer model. More...
 
class  CPrinterControl
 Printer control interface. More...
 
class  CPrinterDevice
 Printer graphics device interface. More...
 
class  CPrinterModelList
 Printer model list interface. More...
 
class  MPageRegionPrinter
 Interface for printing in bands. More...
 
class  CPrinterDriverUI
 Printer specific user interface. More...
 
class  CPrinterDriver
 Provides access to a store containing printer specification data. More...
 
class  CPdrModelList
 Implements a printer model list interface for a collection of PDR files. More...
 
class  TZoomFactor
 The interface for mapping between twips and device-specific units enriched with facilities to allow zooming. More...
 

Macros

#define KRgbBlack   TRgb(0x000000)
 
#define KRgbDarkGray   TRgb(0x555555)
 
#define KRgbDarkRed   TRgb(0x000080)
 
#define KRgbDarkGreen   TRgb(0x008000)
 
#define KRgbDarkYellow   TRgb(0x008080)
 
#define KRgbDarkBlue   TRgb(0x800000)
 
#define KRgbDarkMagenta   TRgb(0x800080)
 
#define KRgbDarkCyan   TRgb(0x808000)
 
#define KRgbRed   TRgb(0x0000ff)
 
#define KRgbGreen   TRgb(0x00ff00)
 
#define KRgbYellow   TRgb(0x00ffff)
 
#define KRgbBlue   TRgb(0xff0000)
 
#define KRgbMagenta   TRgb(0xff00ff)
 
#define KRgbCyan   TRgb(0xffff00)
 
#define KRgbGray   TRgb(0xaaaaaa)
 
#define KRgbWhite   TRgb(0xffffff)
 
#define KRgbTransparent   TRgb(0x000000,0x00)
 

Typedefs

typedef TBuf< KMaxPrinterModelNameLength > TPrinterModelName
 Defines a modifiable buffer descriptor that can contain the name of a printer model.
 

Enumerations

enum  TGdiPanic {
  EGdiPanic_Unknown = 0 , EGdiPanic_InvalidInputParam = 1 , EGdiPanic_OutOfText = 2 , EGdiPanic_Invariant = 3 ,
  EGdiPanic_Unused1 = 4 , EGdiPanic_Unused2 = 5 , EGdiPanic_TypefaceNameOverflow = 6
}
 This enumeration holds the possible panic codes that may be raised by the GDI API on detecting an unrecoverable error. More...
 
enum  TFontPosture { EPostureUpright , EPostureItalic }
 Font posture flags. More...
 
enum  TFontStrokeWeight { EStrokeWeightNormal , EStrokeWeightBold }
 Font stroke weight flags. More...
 
enum  TFontPrintPosition { EPrintPosNormal , EPrintPosSuperscript , EPrintPosSubscript }
 Font print position flags. More...
 
enum  TFontUnderline { EUnderlineOff , EUnderlineOn }
 Font underline flags. More...
 
enum  TFontStrikethrough { EStrikethroughOff , EStrikethroughOn }
 Font strike-through flags. More...
 
enum  TGlyphBitmapType {
  EDefaultGlyphBitmap = 0 , EMonochromeGlyphBitmap , EAntiAliasedGlyphBitmap , ESubPixelGlyphBitmap ,
  EFourColourBlendGlyphBitmap , EGlyphBitmapTypeNotDefined , EAntiAliasedOrMonochromeGlyphBitmap
}
 An enumerated type for the format of a glyph bitmap. More...
 

Functions

const TSize KA4PaperSizeInTwips (11906, 16838)
 
const TSize KLegalPaperSizeInTwips (12240, 20160)
 
const TSize KExecutivePaperSizeInTwips (10440, 15120)
 
const TSize KLetterPaperSizeInTwips (12240, 15840)
 
const TSize KCom_10PaperSizeInTwips (5940, 13680)
 
const TSize KMonarchPaperSizeInTwips (5580, 10800)
 
const TSize KDLPaperSizeInTwips (6236, 12472)
 
const TSize KC5PaperSizeInTwips (9184, 12983)
 
 NONSHARABLE_CLASS (FontEffect)
 Defines a set of font effects flags.
 

Variables

const TInt KTwipsPerInch =1440
 Number of twips per inch.
 
const TInt KTwipsPerPoint =20
 Number of twips per point.
 
const TInt KPointsPerInch =72
 Number of points per inch.
 
const TInt KTwipsPerCm =567
 Number of twips per cm.
 
const TInt KMaxTypefaceNameLength =0x18
 The maximum length of a typeface name (in characters).
 
const TInt KSuperSubScalingPercentage =67
 The percentage used to multiply a normal font height when calculating its superscript or subscript height.
 
const TInt KSuperscriptOffsetPercentage =-28
 The percentage of a font height used to calculate its baseline offset for a superscript print position.
 
const TInt KSubscriptOffsetPercentage =14
 The percentage of a font height used to calculate its baseline offset for a subscript print position.
 
const TInt KMaxFontCacheEntries =32
 The maximum number of entries in the font cache.
 
const TUid KFontCapitalAscent = {0x1020498E}
 WARNING: this Class is for internal use ONLY.
 
const TUid KFontMaxAscent = {0x10204B10}
 
const TUid KFontStandardDescent = {0x10204B11}
 
const TUid KFontMaxDescent = {0x10205AFC}
 
const TUid KFontLineGap = {0x10204B12}
 
const TUid KFontGetFontTable = {0x102872C1}
 
const TUid KFontGetGlyphOutline = {0x102872C2}
 
const TUid KFontReleaseGlyphOutline = {0x2002A1FD}
 
const TUid KFontReleaseFontTable = {0x2002AC24}
 
const TInt KMaxPrinterModelNameLength =0x20
 The maximum length of a printer model name.
 
const TInt KPdrStoreFileUidVal =268435514
 The UID value of a printer specification data store.
 
const TInt KPdlUidVal =268450588
 
const TInt KUdlUidVal =268450589
 

Macro Definition Documentation

◆ KRgbBlack

#define KRgbBlack   TRgb(0x000000)
API status
Published to all clients. Released API.

Definition at line 306 of file gdi.h.

◆ KRgbBlue

#define KRgbBlue   TRgb(0xff0000)

Definition at line 317 of file gdi.h.

◆ KRgbCyan

#define KRgbCyan   TRgb(0xffff00)

Definition at line 319 of file gdi.h.

◆ KRgbDarkBlue

#define KRgbDarkBlue   TRgb(0x800000)

Definition at line 311 of file gdi.h.

◆ KRgbDarkCyan

#define KRgbDarkCyan   TRgb(0x808000)

Definition at line 313 of file gdi.h.

◆ KRgbDarkGray

#define KRgbDarkGray   TRgb(0x555555)

Definition at line 307 of file gdi.h.

◆ KRgbDarkGreen

#define KRgbDarkGreen   TRgb(0x008000)

Definition at line 309 of file gdi.h.

◆ KRgbDarkMagenta

#define KRgbDarkMagenta   TRgb(0x800080)

Definition at line 312 of file gdi.h.

◆ KRgbDarkRed

#define KRgbDarkRed   TRgb(0x000080)

Definition at line 308 of file gdi.h.

◆ KRgbDarkYellow

#define KRgbDarkYellow   TRgb(0x008080)

Definition at line 310 of file gdi.h.

◆ KRgbGray

#define KRgbGray   TRgb(0xaaaaaa)

Definition at line 320 of file gdi.h.

◆ KRgbGreen

#define KRgbGreen   TRgb(0x00ff00)

Definition at line 315 of file gdi.h.

◆ KRgbMagenta

#define KRgbMagenta   TRgb(0xff00ff)

Definition at line 318 of file gdi.h.

◆ KRgbRed

#define KRgbRed   TRgb(0x0000ff)

Definition at line 314 of file gdi.h.

◆ KRgbTransparent

#define KRgbTransparent   TRgb(0x000000,0x00)

Definition at line 322 of file gdi.h.

◆ KRgbWhite

#define KRgbWhite   TRgb(0xffffff)

Definition at line 321 of file gdi.h.

◆ KRgbYellow

#define KRgbYellow   TRgb(0x00ffff)

Definition at line 316 of file gdi.h.

Typedef Documentation

◆ TPrinterModelName

Defines a modifiable buffer descriptor that can contain the name of a printer model.

The maximum length of the buffer is 32.

Since
5.0
API status
Published to all clients. Released API.

Definition at line 3742 of file gdi.h.

Enumeration Type Documentation

◆ TFontPosture

Font posture flags.

Fonts can be either upright or italic.

API status
Published to all clients. Released API.
Enumerator
EPostureUpright 

Font posture is normal (upright).

EPostureItalic 

Font posture is italic.

Definition at line 493 of file gdi.h.

◆ TFontPrintPosition

Font print position flags.

Fonts can be normal, superscript or subscript.

API status
Published to all clients. Released API.
Enumerator
EPrintPosNormal 

Font is normal.

EPrintPosSuperscript 

Font is superscript.

EPrintPosSubscript 

Font is subscript.

Definition at line 524 of file gdi.h.

◆ TFontStrikethrough

Font strike-through flags.

API status
Published to all clients. Released API.
Enumerator
EStrikethroughOff 

Font is not struck-through.

EStrikethroughOn 

Font is struck-through.

Definition at line 556 of file gdi.h.

◆ TFontStrokeWeight

Font stroke weight flags.

API status
Published to all clients. Released API.
Enumerator
EStrokeWeightNormal 

Font stroke weight is normal.

EStrokeWeightBold 

Font stroke weight is bold.

Definition at line 508 of file gdi.h.

◆ TFontUnderline

Font underline flags.

API status
Published to all clients. Released API.
Enumerator
EUnderlineOff 

Font is not underlined.

EUnderlineOn 

Font is underlined.

Definition at line 541 of file gdi.h.

◆ TGdiPanic

enum TGdiPanic

This enumeration holds the possible panic codes that may be raised by the GDI API on detecting an unrecoverable error.

Enumerator
EGdiPanic_Unknown 

Not used.

EGdiPanic_InvalidInputParam 

One or more of the input parameters to the interface were invalid.

EGdiPanic_OutOfText 

Insufficient text for successful completion of the method.

EGdiPanic_Invariant 

Internal failure.

EGdiPanic_Unused1 

Unused panic codes.

Can be reused if needed.

EGdiPanic_Unused2 
EGdiPanic_TypefaceNameOverflow 

Setting a typeface name that is too long.

Definition at line 160 of file gdi.h.

◆ TGlyphBitmapType

An enumerated type for the format of a glyph bitmap.

This type is currently used to indicate whether glyph bitmaps for scalable fonts are drawn anti-aliased. Additional values may be defined in the future.

See also
TFontStyle::SetBitmapType()
CFbsTypefaceStore::SetDefaultBitmapType()
API status
Published to all clients. Released API.
Enumerator
EDefaultGlyphBitmap 

The font store's default glyph bitmap format is used.

EMonochromeGlyphBitmap 

The standard monochrome format: no anti-aliasing, 1 bit per pixel, run-length encoded.

EAntiAliasedGlyphBitmap 

Standard 8-bits-per-pixel with anti-aliasing.

ESubPixelGlyphBitmap 

The format used when sub-pixel font rendering is used.

EFourColourBlendGlyphBitmap 

The format used when outline and shadow font rendering is used.

If the raterizer supports the outline and shadow fonts, it will set the bitmaptype as EFourColourBlendGlyphBitmap but only when glyph bitmap type is set as EAntiAliasedGlyphBitmap and when any of the EDropShadow or EOutline effect is on. Only rasterizer providers can use this enum.

EGlyphBitmapTypeNotDefined 

This is used for glyphs, and not fonts, and is needed to inform the font drawing routines that the character should be drawn using the overall font setting.

For Internal Use Only.

EAntiAliasedOrMonochromeGlyphBitmap 

This is used to inform the rasterizer that the best match should be found for the bitmap type based upon its knowledge.

For Internal Use Only.

Definition at line 646 of file gdi.h.

Function Documentation

◆ KA4PaperSizeInTwips()

const TSize KA4PaperSizeInTwips ( 11906  ,
16838   
)
API status
Published to all clients. Released API.

◆ KC5PaperSizeInTwips()

const TSize KC5PaperSizeInTwips ( 9184  ,
12983   
)

◆ KCom_10PaperSizeInTwips()

const TSize KCom_10PaperSizeInTwips ( 5940  ,
13680   
)

◆ KDLPaperSizeInTwips()

const TSize KDLPaperSizeInTwips ( 6236  ,
12472   
)

◆ KExecutivePaperSizeInTwips()

const TSize KExecutivePaperSizeInTwips ( 10440  ,
15120   
)

◆ KLegalPaperSizeInTwips()

const TSize KLegalPaperSizeInTwips ( 12240  ,
20160   
)

◆ KLetterPaperSizeInTwips()

const TSize KLetterPaperSizeInTwips ( 12240  ,
15840   
)

◆ KMonarchPaperSizeInTwips()

const TSize KMonarchPaperSizeInTwips ( 5580  ,
10800   
)

◆ NONSHARABLE_CLASS()

NONSHARABLE_CLASS ( FontEffect  )

Defines a set of font effects flags.

WARNING: This Class is for use by system/UI software ONLY.

API status
Published to all clients. Released API.

Definition at line 687 of file gdi.h.

Variable Documentation

◆ KFontCapitalAscent

const TUid KFontCapitalAscent = {0x1020498E}

WARNING: this Class is for internal use ONLY.

Compatibility is not guaranteed in future releases. UIDs corresponding to the CFont API extension functions

API status
Internal technology API.

Definition at line 1320 of file gdi.h.

◆ KFontGetFontTable

const TUid KFontGetFontTable = {0x102872C1}

Definition at line 1325 of file gdi.h.

◆ KFontGetGlyphOutline

const TUid KFontGetGlyphOutline = {0x102872C2}

Definition at line 1326 of file gdi.h.

◆ KFontLineGap

const TUid KFontLineGap = {0x10204B12}

Definition at line 1324 of file gdi.h.

◆ KFontMaxAscent

const TUid KFontMaxAscent = {0x10204B10}

Definition at line 1321 of file gdi.h.

◆ KFontMaxDescent

const TUid KFontMaxDescent = {0x10205AFC}

Definition at line 1323 of file gdi.h.

◆ KFontReleaseFontTable

const TUid KFontReleaseFontTable = {0x2002AC24}

Definition at line 1328 of file gdi.h.

◆ KFontReleaseGlyphOutline

const TUid KFontReleaseGlyphOutline = {0x2002A1FD}

Definition at line 1327 of file gdi.h.

◆ KFontStandardDescent

const TUid KFontStandardDescent = {0x10204B11}

Definition at line 1322 of file gdi.h.

◆ KMaxFontCacheEntries

const TInt KMaxFontCacheEntries =32

The maximum number of entries in the font cache.

See also
CFontCache

Definition at line 1002 of file gdi.h.

◆ KMaxPrinterModelNameLength

const TInt KMaxPrinterModelNameLength =0x20

The maximum length of a printer model name.

See also
TPrinterModelName
API status
Published to all clients. Released API.

Definition at line 3731 of file gdi.h.

◆ KMaxTypefaceNameLength

const TInt KMaxTypefaceNameLength =0x18

The maximum length of a typeface name (in characters).

API status
Published to all clients. Released API.

Definition at line 571 of file gdi.h.

◆ KPdlUidVal

const TInt KPdlUidVal =268450588

Definition at line 4146 of file gdi.h.

◆ KPdrStoreFileUidVal

const TInt KPdrStoreFileUidVal =268435514

The UID value of a printer specification data store.

API status
Published to all clients. Released API.

Definition at line 4144 of file gdi.h.

◆ KPointsPerInch

const TInt KPointsPerInch =72

Number of points per inch.

API status
Published to all clients. Released API.

Definition at line 59 of file gdi.h.

◆ KSubscriptOffsetPercentage

const TInt KSubscriptOffsetPercentage =14

The percentage of a font height used to calculate its baseline offset for a subscript print position.

API status
Published to all clients. Released API.

Definition at line 850 of file gdi.h.

◆ KSuperscriptOffsetPercentage

const TInt KSuperscriptOffsetPercentage =-28

The percentage of a font height used to calculate its baseline offset for a superscript print position.

API status
Published to all clients. Released API.

Definition at line 840 of file gdi.h.

◆ KSuperSubScalingPercentage

const TInt KSuperSubScalingPercentage =67

The percentage used to multiply a normal font height when calculating its superscript or subscript height.

API status
Published to all clients. Released API.

Definition at line 830 of file gdi.h.

◆ KTwipsPerCm

const TInt KTwipsPerCm =567

Number of twips per cm.

API status
Published to all clients. Released API.

Definition at line 68 of file gdi.h.

◆ KTwipsPerInch

const TInt KTwipsPerInch =1440

Number of twips per inch.

API status
Published to all clients. Released API.

Definition at line 41 of file gdi.h.

◆ KTwipsPerPoint

const TInt KTwipsPerPoint =20

Number of twips per point.

API status
Published to all clients. Released API.

Definition at line 50 of file gdi.h.

◆ KUdlUidVal

const TInt KUdlUidVal =268450589

Definition at line 4147 of file gdi.h.