Newer Older
Keith Packard's avatar
Keith Packard committed
1 2
	Font configuration and customization library
Patrick Lam's avatar
Patrick Lam committed
3 4
		      Version 2.3.93
Keith Packard's avatar
Keith Packard committed

Keith Packard's avatar
Keith Packard committed
6 7 8
Check INSTALL for compilation and installation instructions.
Report bugs to in the fontconfig module.

Patrick Lam's avatar
Patrick Lam committed
9 10 11 12 13 14 15 16 17 18 19 20 21

Create cache files in /var/cache/fontconfig with hashed filenames, if
possible, for added FHS compliance.  
Make fc-cat read both per-directory and global cache files.  
Add config file for Persian fonts from Sharif FarsiWeb, Inc.  
Major performance improvements by Dirk Mueller, Stephen Kulow, and Michael Matz at SuSE: in particular, speed up FcFontSetMatch, and inline many functions.
Fix treatment of globs in config files, broken since 2.3.2 and discovered by Mathias Clasen.
Don't use freetype internal headers (patch by Matthias Clasen).  
Further space improvements: create langsets statically, so that they can live in .rodata.
Properly align mmapped data structures to make e.g. ia64 happy.  
Bug fixes.

Patrick Lam's avatar
Patrick Lam committed
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46

Fix corrupted caches bugs from 2.3.91 (reported by Mike Fabian).
Store only basename in the cache, reconstitute on demand 
(reported by James Cloos).
Change the rule for artificial emboldening in  This
enables the support for artificial emboldening included in cairo
(patch by Zhe Su).
Add FC_EMBEDDED_BITMAP object type to tell Xft/Cairo whether
to load embedded bitmaps or not (patch by Jinghua Luo).
Fix GCC4 warnings (some by Behdad Esfahbod).
Support localized font family and style names; this has been reported
to break old apps like xfd, but modern (gtk+/qt/mozilla) apps work
fine (patch by Zhe Su).
Prevent fc-list from escaping strings when printing them (reported by
Matthias Clasen).
Add valist sentinel markup for FcObjectSetBuild and 
FcPatternBuild (patch by Marcus Meissner).
Add consts to variables so as to move arrays into .rodata (patch by
Ross Burton).
Modify config file to use Greek fonts before Asian fonts with
Greek glyphs. (patch by Simos Xenitellis).
Use libtool -no-undefined flag on all platforms (patch by Christian

Patrick Lam's avatar
Patrick Lam committed
47 48 49 50 51 52 53 54 55 56 57 58 59

Use libxml2 if requested or if expat not available. (Mathias Hasselmann)
Fix multi-arch cache files: compute the position for the
block to be added using info from OrigFile, not NewFile. (plam)
Cast results of sizeof() to unsigned int to get rid of
warnings on x86_64 (reported by Matthias Clasen).
Use FcAtomic to rewrite cache files; don't unlink the fonts.cache-2
file even if there's no data to write; just write an empty cache file.
(Reported by Lubos Lunak)
Allocate room for the subdirectory names in each directory cache. 
(Reported by James Cloos)

60 61 62 63 64

Development release of mmap patch: load pattern information
directly from cache files.  (Patrick Lam)

Keith Packard's avatar
Keith Packard committed
65 66

67 68
Patch memory leaks in using iconv.  (Reported by Chris Capoccia)
Patch memory leaks in fc-cache. (Reported by Chris Capoccia)
Keith Packard's avatar
Keith Packard committed
69 70 71 72
Fetch bitmap glyphs to get widths during font evaluation. (keithp)
Share strings through FcObjectStaticName (Ross Burton)
Windows build updates (Tor Lillqvist)

Keith Packard's avatar
Keith Packard committed
73 74 75 76 77 78 79 80

Be more careful about broken GSUB/GPOS tables (Manish Singh)
Include debian packaging stuff in CVS (Josselin Mouette)
Add more conf.d examples (Keith Packard)
Make manuals build again (Keith Packard)
Johap -> Johab (Funda Wang)

Keith Packard's avatar
Keith Packard committed
81 82 83 84 85 86 87 88 89 90

Fix memory leak of patterns rejected by configuration (#2518)

Create prototype /etc/fonts/conf.d directory and populate it with a few
sample files.  These samples are unused as the file names don't start with

Update documentation.

Keith Packard's avatar
Keith Packard committed
91 92 93 94 95 96 97 98 99 100 101 102

Verify cache for FC_FILE and FC_FAMILY in every entry (#2219)

Update blanks list from recent Unicode docs (#86)

Various small build fixes (#280, #2278, 

Documentation fixes (#2085, #2284, #2285)

Add polite typechecking to config file loader (#229)

Keith Packard's avatar
Keith Packard committed
103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119

Share object name strings (Michael Meeks)

Eliminate a couple of codepoints from Russian orthography (John Thacker)

Add synthetic emboldening configuration changes (Jakub Pavelek)

Change FcFontSetSort to ignore language after fonts with the requested
languages have been found. (Owen Taylor)

Add some RedHat font configuration changes (Owen Tayler).

Add full Unicode case folding support to case-ignoring string functions
(Keith Packard)

Remove Han characters from Korean orthography (Tor Andersson)
Keith Packard's avatar
Keith Packard committed
120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145


Fc-cache sleeps before exiting to ensure filesystem timestamps are well

Added Punjai orthography.

The timestamp in fonts.conf is gone now.  Too many problems.

The default font path includes all of the X fonts; use selectfont/rejectfont
to eliminate bitmaps, as shown in the sample local.conf file.

<include> configuration elements may now reference a directory.  Files
in that directory matching [0-9]* are loaded in UTF-8 collating sequence order.

<selectfont> configuration added to control which fonts are used.

fontformat font pattern elements built from the FT_Get_X11_Font_Format
function in newer versions of FreeType.

'capability' list constructed from gsub/gpos and silf values in TrueType

Multi-lingual names (style, family, fullname) extracted and stored with
parallel <foo>lang properties marking language.
Keith Packard's avatar
Keith Packard committed
146 147 148 149 150 151 152 153


Fix FcConfigUpToDate to actually check all font directories and eliminate
a typo which completely prevented it from working (Lubos Lunak

Remove comma at end of FcResult enum definition for picky compilers.
Keith Packard's avatar
Keith Packard committed
154 155 156 157 158 159 160


Add FcResultOutOfMemory so FcFontSetMatch can return accurate error.

Replace MIN/MAX/ABS macros which happened to be in old FreeType releases
with FC_MIN/FC_MAX/FC_ABS macros owned by fontconfig.
161 162 163 164 165


The 2.2.93 release was prepared with a broken libtool which created
the shared library without the '.so' in the file names.
166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188


This is the third prerelease of fontconfig 2.3.  Significant changes from
2.2.92 are:

 o	Use new FreeType #include syntax
 o	use y_ppem field instead of 'height' in bitmap sizes rec -
 	FreeType changed the semantics.  Still uses height for
	older versions of FreeType
 o	Don't construct program manuals unless docbook is available


 o	make distcheck work


 o	Switch to SGML manuals
 o	Add FC_DUAL width spacing value
 o	Add FcFini to close out fontconfig and release all memory

This is the third public release of fontconfig, a font configuration and
191 192 193 194 195 196 197 198 199
customization library.  Fontconfig is designed to locate fonts within the
system and select them according to requirements specified by applications.

Fontconfig is not a rasterization library, nor does it impose a particular
rasterization library on the application.  The X-specific library
'Xft' uses fontconfig along with freetype to specify and rasterize fonts.

Keith Packard