fontservices/fontstore/inc/OPENFONT.H
branchRCL_3
changeset 54 748ec5531811
parent 15 9a2be90ac9a2
child 55 336bee5c2d35
equal deleted inserted replaced
36:f902e87c146f 54:748ec5531811
    79 @see	MOpenFontTrueTypeExtension
    79 @see	MOpenFontTrueTypeExtension
    80 @publishedAll
    80 @publishedAll
    81 @released
    81 @released
    82 */
    82 */
    83 const TUid KUidOpenFontTrueTypeExtension = {0x1027553E};
    83 const TUid KUidOpenFontTrueTypeExtension = {0x1027553E};
       
    84 const TUid KUidOpenFontGlyphOutlineExtension = {0x102872CE};
    84 
    85 
    85 /**
    86 /**
    86 Supplied to CShaper::ExtendedInterface() to get the language and script
    87 Supplied to CShaper::ExtendedInterface() to get the language and script
    87 code with which the current shaper is instatsiated.
    88 code with which the current shaper is instatsiated.
    88 @see	CShaper::ExtendedInterface()
    89 @see	CShaper::ExtendedInterface()
   325 	TInt DecrementCachedRefCount(TInt aSessionHandle,TShapeHeader* aShapeHeader,TBool aResetAll=EFalse);
   326 	TInt DecrementCachedRefCount(TInt aSessionHandle,TShapeHeader* aShapeHeader,TBool aResetAll=EFalse);
   326 	TBool Rasterize(TInt aSessionHandle,TInt aCode,TOpenFontGlyphData* aGlyphData);
   327 	TBool Rasterize(TInt aSessionHandle,TInt aCode,TOpenFontGlyphData* aGlyphData);
   327 	TBool HasCharacterL(TInt aCode) const;
   328 	TBool HasCharacterL(TInt aCode) const;
   328 	TBool GetCharacterData(TInt aSessionHandle,TInt aCode,const TOpenFontCharMetrics*& aMetrics,const TUint8*& aBitmap) const;
   329 	TBool GetCharacterData(TInt aSessionHandle,TInt aCode,const TOpenFontCharMetrics*& aMetrics,const TUint8*& aBitmap) const;
   329 	void OnFileDeleted();
   330 	void OnFileDeleted();
   330 	COpenFontGlyphCache* GetGlyphCache();
   331 	COpenFontGlyphCache* GetGlyphCache() const;
   331 	inline TInt FontCapitalAscent() const;
   332 	inline TInt FontCapitalAscent() const;
   332 	inline TInt FontMaxAscent() const;
   333 	inline TInt FontMaxAscent() const;
   333 	inline TInt FontStandardDescent() const;
   334 	inline TInt FontStandardDescent() const;
   334 	inline TInt FontMaxDescent() const;
   335 	inline TInt FontMaxDescent() const;
   335 	inline TInt FontLineGap() const;
   336 	inline TInt FontLineGap() const;
   336 	inline TInt FontMaxHeight() const;
   337 	inline TInt FontMaxHeight() const;
   337 	void DeleteShaper() const;
   338 	void DeleteShaper() const;
       
   339 	TInt GetFontTable(TUint32 aTag, TAny*& aTableContent, TInt& aLength);
       
   340 	TInt GetGlyphOutline(TUint aCode, TBool aHinted, TAny*& aOutline, TInt& aLength);
   338 	
   341 	
   339 protected:
   342 protected:
   340 	RHeap* iHeap;
   343 	RHeap* iHeap;
   341 	TOpenFontMetrics iMetrics;
   344 	TOpenFontMetrics iMetrics;
   342 private:
   345 private:
   366 		lines of text in the font */
   369 		lines of text in the font */
   367 	TInt iFontLineGap;
   370 	TInt iFontLineGap;
   368 private:
   371 private:
   369 	const COpenFontGlyph* Glyph(TInt aSessionHandle,TInt aCode) const;
   372 	const COpenFontGlyph* Glyph(TInt aSessionHandle,TInt aCode) const;
   370 
   373 
   371 	const COpenFontGlyph* FontCacheGlyph(TInt aCode);
   374 	const COpenFontGlyph* FontCacheGlyph(TInt aCode) const;
   372 	
   375 	
   373 	void SetGlyphCache(COpenFontGlyphCache* aGlyphCache);
   376 	void SetGlyphCache(COpenFontGlyphCache* aGlyphCache);
   374 	
   377 	
   375 	const COpenFontGlyph* SessionCacheGlyph(RHeap* aHeap,TInt aSessionHandle,TInt aCode,
   378 	const COpenFontGlyph* SessionCacheGlyph(RHeap* aHeap,TInt aSessionHandle,TInt aCode,
   376 											COpenFontSessionCache*& aCache,TInt& aIndex,TBool aCreate) const;
   379 											COpenFontSessionCache*& aCache,TInt& aIndex,TBool aCreate) const;
   531 	@return True if the table exists in the font file, false otherwise.
   534 	@return True if the table exists in the font file, false otherwise.
   532 	@see GetTrueTypeTable */
   535 	@see GetTrueTypeTable */
   533 	virtual TBool HasTrueTypeTable(TUint32 aTag) = 0;
   536 	virtual TBool HasTrueTypeTable(TUint32 aTag) = 0;
   534 	};
   537 	};
   535 
   538 
       
   539 class MOpenFontGlyphOutlineExtension 
       
   540     {
       
   541 public:
       
   542     virtual TInt GetGlyphOutline(TUint aCode, TBool aIsGlyphId, 
       
   543             TBool aHinted, TAny*& aOutline, TInt& aLength) = 0;
       
   544     };
   536 /** 
   545 /** 
   537 Font attribute base class. 
   546 Font attribute base class. 
   538 
   547 
   539 This class is not intended for user derivation.
   548 This class is not intended for user derivation.
   540 
   549