freetype-devel
[Top][All Lists]
Advanced

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

RE: [ft-devel] current cvs on suse 10


From: Turner, David
Subject: RE: [ft-devel] current cvs on suse 10
Date: Mon, 21 Nov 2005 10:08:20 +0100

ello,

the problem is different from what you think.

- fontconfig is buggy and uses FreeType internals when it shouldn't

- Suse's patch is a kludge to avoid fixing fontconfig

- we're not transitioning from FT_EXPORT to FT_BASE. FT_EXPORT is
  the only macro used to export public API names. FT_BASE is used
  to tag "base" functions, which are only relevant if you write
  a FreeType 2 module.

- there are already *two* patches to remove freetype internals dependencies
  for fontconfig. One I sent to Keith one or two months ago, another one by
  Matthias Clasen.

  I don't know if they've been integrated or not, and if not, I don't know
  why.

I'm still surprised to see that proper kerning depends on the stream interface.
I suspect that someone is accessing the font files directly instead of asking
for a proper API in the font engine instead.

Regards,

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


> -----Message d'origine-----
> De : address@hidden
> [mailto:address@hidden
> la part de
> Hans-Peter Jansen
> Envoyé : lundi 21 novembre 2005 01:06
> À : address@hidden
> Objet : [ft-devel] current cvs on suse 10
>
>
> Hi *,
>
> just subscribed here, because of some issues with freetype2 on suse 10
> and general interest in font rendering.
>
> While setting up 10.0 for an office environment, I noticed quite bad
> font display due to kerning errors compared to earlier versions.
>
> Investigating this issue, I came across this: 
> http://lists.nongnu.org/archive/html/freetype-devel/2005-09/ms
> g00027.html.
>
> Unfortunately, changing it seems to not have any visual impact here.
>
> In order to cross check this, I recompiled freetype2-2.1.9
> for 10.0, and
> the visual impression is back en par with 9.3 as expected.
>
> Since the changelog from 2.1.9 to 2.1.10 is pretty huge, and further
> experiments with 2.1.10 (BC on and off) didn't made it much better, I
> bite the apple and built a freetype2 rpm from current cvs.
>
> That revealed a few problems, though. SUSE uses a patch to export a
> bunch of methods from the ftstream module, which applied fine, but the
> symbols weren't exported correctly, which let the fontconfig package
> fall flat on it's face. Hmm. Further investigation showed, that you're
> in transition from FT_EXPORT to FT_BASE macros, but didn't
> finished yet
> (FT_Stream_OpenGzip and FT_Stream_OpenLZW still used FT_EXPORT).
> I fixed it in a rather crude way in my rpm spec:
>
> find . -name \*.c -o -name \*.h | xargs sed -i
> 's/FT_EXPORT(/FT_BASE(/g'
> find . -name \*.c -o -name \*.h | xargs sed -i
> 's/FT_EXPORT_DEF(/FT_BASE_DEF(/g'
> but still no bonus. Well, it was due to:
>
> --- freetype-2.1.11.0.cvs20051119/src/tools/apinames.c~
> 2005-11-20 01:30:22.217388000 +0100
> +++ freetype-2.1.11.0.cvs20051119/src/tools/apinames.c        
> 2005-11-20 01:30:38.382398250 +0100
> @@ -222,10 +222,10 @@
>      {
>        case STATE_START:
>          {
> -          if ( memcmp( p, "FT_EXPORT(", 10 ) != 0 )
> +          if ( memcmp( p, "FT_BASE(", 8 ) != 0 )
>              break;
>
> -          p += 10;
> +          p += 8;
>            for (;;)
>            {
>              if ( *p == 0 || *p == '\n' || *p == '\r' )
>
>
> Now, with this little fix and
>
> sed -i \
> 's|\$(wildcard \$(PUBLIC_DIR)/\*.h)|\
> \$(wildcard \$(PUBLIC_DIR)/\*.h) \$(wildcard
> \$(INTERNAL_DIR)/\*.h)|g' \
>  builds/exports.mk
>
> it's operational, and the kerning/hinting is _much_ improved.
> Great! Congrats!
>
> That leaves me with a couple of questions:
>  - Should I prepare some (more) diffs from these issues?
>  - What are your plans with this unofficial ftstream interface?
>  - Any rough estimation on code maturity of current CVS?
>
> Thanks,
> Pete
>
>
> _______________________________________________
> Freetype-devel mailing list
> address@hidden
> http://lists.nongnu.org/mailman/listinfo/freetype-devel
>
***********************************************************************************
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]