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

Bug#385798: openoffice.org: font hinting still does not work with the current version ob libfreetype



> 1) cd <whatever>/vcl
> 2) . ../Linux<whatever>.sh
> 3) build
> 4) copy the lib into your install
> 5) *try*
> 6) repeat from 2)

Ah, finally I understood what you mean. Got it recompiled within 1min and 
first test was immediately successfull - the screenshots now look identical.

http://www.pci.uni-heidelberg.de/tc/usr/bernd/downloads/freetype-snapshots/3-old_full_sub.png
http://www.pci.uni-heidelberg.de/tc/usr/bernd/downloads/freetype-snapshots/3-new_full_sub_oo_normal_fix.png

I suggest anyone who is interesting tries those new libs:

http://www.pci.uni-heidelberg.de/tc/usr/bernd/downloads/freetype/OpenOffice_fix_libs/

NOTE: They are for openoffice.org-2.0.4~rc1 NOT for rc2!

About the patch, since it sets normal hinting it might be possible one could 
disable this flag at all. However, to verify this, I would need to read the 
code more carefully, I only don't have the time to do that. 

Cheers,
Bernd

-- 
Bernd Schubert
PCI / Theoretische Chemie
Universität Heidelberg
INF 229
69120 Heidelberg

--- openoffice.org-2.0.4~rc1.old/ooo-build/build/ood680-m3/vcl/source/glyphs/gcach_ftyp.cxx	2006-09-24 00:23:00.000000000 +0200
+++ openoffice.org-2.0.4~rc1.new/ooo-build/build/ood680-m3/vcl/source/glyphs/gcach_ftyp.cxx	2006-09-28 02:16:19.000000000 +0200
@@ -849,10 +859,10 @@
 #endif
         mnLoadFlags |= FT_LOAD_NO_HINTING;
 
-#ifdef FT_LOAD_TARGET_LIGHT
+#ifdef FT_LOAD_TARGET_NORMAL
     // enable "light hinting" if available
     if( !(mnLoadFlags & FT_LOAD_NO_HINTING) && (nFTVERSION >= 2103))
-        mnLoadFlags |= FT_LOAD_TARGET_LIGHT;
+         mnLoadFlags |= FT_LOAD_TARGET_NORMAL;
 #endif
 
     if( ((mnCos != 0) && (mnSin != 0)) || (mnPrioEmbedded <= 0) )
@@ -2158,10 +2168,10 @@
 
     FT_Int nLoadFlags = FT_LOAD_DEFAULT;
 
-#ifdef FT_LOAD_TARGET_LIGHT
+#ifdef FT_LOAD_TARGET_NORMAL
     // enable "light hinting" if available
     if( nFTVERSION >= 2103 )
-        nLoadFlags |= FT_LOAD_TARGET_LIGHT;
+        nLoadFlags |= FT_LOAD_TARGET_NORMAL;
 #endif
 
     FT_Error rc = FT_Load_Glyph( maFaceFT, nGlyphIndex, nLoadFlags );

Reply to: