For our December “Community Choice” Project of the Month, the community elected FreeType, a high-quality and portable font engine. The FreeType team shared their thoughts about the project’s history, purpose, and direction.
SourceForge (SF): Tell me about the FreeType project please.
FreeType team: FreeType is a font-rendering engine that supports a big variety of different font formats.
SF: What made you start this?
FreeType team: Our former main developer, David Turner, wanted to write a TrueType engine that can also handle bytecode (FreeType version 1.x). Later on, he made FreeType more modular (FreeType version 2.x) and added support for PostScript fonts, and over time support for other formats were added, too.
SF: Has the original vision been achieved?
FreeType team: Yes. FreeType is used virtually everywhere – for example, you can find it in almost all mobile devices, including iOS and Android.
SF: Who can benefit the most from your project?
FreeType team: If you need a freely available font-rendering engine that supports more than a single font format, you probably have no other choice but to use FreeType.
SF: Have you all found that more frequent releases helps build up your community of users?
FreeType team: Frequent releases are a good thing and, I must admit, we don’t do enough releases of FreeType. However, I have no idea whether this helps build up the community or not.
SF: What was the first big thing that happened for your project?
FreeType team: That’s hard to say as nobody told us 🙂 Because FreeType is an old project, integration into other projects happened a long time ago. I think that the main reason for FreeType’s widespread use is that it is the de-facto font-rendering engine on all GNU/Linux systems.
It’s nice to see that even big companies are interested in supporting FreeType. For example, Adobe contributed a CFF rendering engine two years ago; Google developers provided colored emoji support, etc. In general, these events provide small, incremental improvements, which I consider a good thing.
SF: What is the next big thing for FreeType?
FreeType team: There is no `next big thing’. FreeType is mature and today stability is an important factor in our development. Again, we are adding small things here and there in an incremental manner. An example is support for more scripts in FreeType’s auto-hinter engine, which happens gradually.
SF: How long do you think that will take?
FreeType team: It’s a never-ending story 🙂
SF: Do you have the resources you need to make that happen?
FreeType team: What we lack most is manpower. This makes everything happen at a slow pace.
SF: If you had it to do over again, what would you do differently for FreeType?
FreeType team: Due to the age of FreeType, both the API and some internals are a bit old-fashioned. We’ve also learned a lot while developing and maintaining the library, which means that we could write a better interface today.
SF: Any reason you can’t do that now?
FreeType team: Lack of manpower. FreeType works so there is no urgent need to create FreeType 3. However, if a volunteer wants to work on a modern API we’ll certainly welcome them.