00001 /* 00002 * ============================================================================ 00003 * Name : AknFontAccess.h 00004 * Part of : Avkon 00005 * 00006 * Description: 00007 * Access to Series 60 font system 00008 * 00009 * Version: 00010 * 00011 * Copyright © 2005 Nokia Corporation. 00012 * This material, including documentation and any related 00013 * computer programs, is protected by copyright controlled by 00014 * Nokia Corporation. All rights are reserved. Copying, 00015 * including reproducing, storing, adapting or translating, any 00016 * or all of this material requires the prior written consent of 00017 * Nokia Corporation. This material also contains confidential 00018 * information which may not be disclosed to others without the 00019 * prior written consent of Nokia Corporation. 00020 * ============================================================================ 00021 */ 00022 00023 #ifndef __AKNFONTACCESS_H__ 00024 #define __AKNFONTACCESS_H__ 00025 00026 class CAknLayoutFont; 00027 class CFbsFont; 00028 00029 #include <AknFontSpecification.h> 00030 00031 class AknFontAccess 00032 { 00033 public: 00034 00038 enum TAknFontFamily 00039 { 00040 EAknFontFamilyNotSpecified = 0, 00041 EAknFontFamilySansSerif, 00042 EAknFontFamilySerif, 00043 EAknFontFamilyMonospace 00044 }; 00045 00046 public: 00047 00064 IMPORT_C static CFbsFont* GetFont( 00065 CBitmapDevice& aBitmapDevice, 00066 const TFontStyle aFontStyle, 00067 TInt aFontSizeInTwips, 00068 TAknFontFamily aFontFamily); 00085 IMPORT_C static CFbsFont* GetFont( 00086 CBitmapDevice& aBitmapDevice, 00087 const TFontStyle aFontStyle, 00088 TInt aFontSizeInTwips, 00089 const TDesC& aFontFamilyName); 00107 IMPORT_C static CFbsFont* GetClosestFont( 00108 CBitmapDevice& aBitmapDevice, 00109 const TFontStyle aFontStyle, 00110 TInt aFontSizeInTwips, 00111 TAknFontFamily aFontFamily); 00128 IMPORT_C static CFbsFont* GetClosestFont( 00129 CBitmapDevice& aBitmapDevice, 00130 const TFontStyle aFontStyle, 00131 TInt aFontSizeInTwips, 00132 const TDesC& aFontFamilyName); 00133 00148 IMPORT_C static CAknLayoutFont* CreateLayoutFontFromSpecificationL( 00149 CBitmapDevice& aBitmapDevice, 00150 const TAknFontSpecification& aSpec ); 00151 00169 IMPORT_C static CAknLayoutFont* CreateLayoutFontFromSpecificationL( 00170 CBitmapDevice& aBitmapDevice, 00171 const TTypeface& aTypeface, 00172 const TAknFontSpecification& aSpec); 00173 00174 00175 private: 00179 static CFbsFont* DoGetFont( 00180 CBitmapDevice& aBitmapDevice, 00181 const TFontStyle aFontStyle, 00182 TInt aFontSizeInTwips, 00183 const TTypeface& aFontFamilyTypeface, 00184 TBool aExactMatchRequired); 00185 }; 00186 00187 // __AKNFONTACCESS_H__ 00188 #endif 00189 00190 // End of file 00191 00192 00193 00194 00195 00196 00197 00198 00199