freetype
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: FW: [ft] cache manager


From: David Turner
Subject: Re: FW: [ft] cache manager
Date: Thu, 03 Aug 2006 12:23:59 +0200
User-agent: Thunderbird 1.5 (Windows/20051201)

Hello,

As Werner said, I was in vacation, I'll try to answer your questions here:

Kristján V. Jónsson a écrit :
Hi there.
I am reposting this to the list since I got not a single response.  Maybe 
something went wrong.  These are issues of some importance.
1) is important in our application since the node ID is actually a strong 
reference to an application object that needs to be released when the CM 
doesn't know about it any more.
2) is perhaps more important.  The CM is only truly useful if one can hook into 
its loading and transformation stage to provide custom slanting and embolding 
and perhaps other effects.  Somewhere in the archives someone mentioned 
subclassing in this context.  Any more infor on that?

You're essentially asking for the ability to define custom nodes within the cache, and this is something that did exist in previous releases of FreeType, but was explicitely removed for 2.2.1 for several reasons:

- first of all, nobody seemed to use this "feature"

- second, I wanted to be able to change some internals in order to improve
 certain aspects of the implementation, without breaking clients.

Before 2.2.1, it was possible to write a "custom cache" used to store custom nodes which could be *anything*, including custom glyph images. However, the level of details to master to do that was very high (unfortunately, writing a cache that is efficient, flexible and deals well with out-of-memory conditions isn't trivial), and I guess that's
why nobody really tried to.

My goal is now to provide a much simpler API that allows users to store custom glyph bitmaps and outlines in the cache, and nothing more. However, this is not on my priority list, and I don't even promise I'll implement this in 2006,
nor that it will allow the user to know when a cache node is flushed.

So, I invite you to either write your own cache, or grab a copy of the one available in 2.1.10 and modify it to suit your needs. This would become part of your application, and by simply renaming its types and functions, it would
happily live side-by-side with any FreeType release.

Hope this helps,

- David Turner
- The FreeType Project  (www.freetype.org)







K
-----Original Message-----
From: address@hidden [mailto:address@hidden On Behalf Of Kristján V. Jónsson
Sent: 3. júlí 2006 14:17
To: address@hidden
Subject: [ft] cache manager

Hello there.
I am new to this list although I have been using freetype for a while now.
So, please excuse me if this has been covered before.

I use the cache manager interface to freetype for convenience.  However, there 
are two things there which I find sorely missing:

1) I need CM to tell me when a node goes out of cache.
2) I need to be able to hook into the glyph rendering process so that I can 
provide gransformations for the glyph before caching.  This is to allow me to 
embolden and slant the glyph, for example.

Is there a way to do this?  Or is it simple to enhance freetype to support this?

Cheers,

Kristjan


_______________________________________________
Freetype mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/freetype


_______________________________________________
Freetype mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/freetype




***********************************************************************************
Information contained in this email message is confidential and may be 
privileged, and is intended only for use of the individual or entity named 
above. If the reader of this message is not the intended recipient, or the 
employee or agent responsible to deliver it to the intended recipient, you are 
hereby notified that any dissemination, distribution or copying of this 
communication is strictly prohibited. If you have received this communication 
in error, please immediately notify the address@hidden and destroy the original 
message.
***********************************************************************************




reply via email to

[Prev in Thread] Current Thread [Next in Thread]