]> git.wh0rd.org - fontconfig.git/blob - README
Bail gracefully if the cache file does not contain enough data.
[fontconfig.git] / README
1 Fontconfig
2 Font configuration and customization library
3 Version 2.3.95
4 2006-04-18
5
6
7 Check INSTALL for compilation and installation instructions.
8 Report bugs to https://bugs.freedesktop.org in the fontconfig module.
9
10 2.3.95
11
12 Match 'Standard Symbols L' for 'Symbol'. Add URW fonts as aliases for
13 all of the PostScript fonts. (reported by Miguel Rodriguez). Fix a
14 number of Coverity defects (Frederic Crozat). Speed up FcFontSort
15 (fix suggested by Kenichi Handa). Fix error with charsets. Survive
16 missing docbook2pdf. Compile on HP-UX, AIX, SGI and Windows (Cygwin,
17 MinGW). Fix intel compiler warnings. Fix multiarch support (don't
18 destroy multiarch files!) Require pkg-config. (Thanks Behdad; better
19 solution wanted for libxml2 detection!) Fix typos in orth files and
20 add orth for Lingala (reported by Denis Jacquerye). Remove debian/
21 directory. Add a configuration file that disables hinting for the
22 Lohit Gujarati font (since the hinting distorts some glyphs quite
23 badly). Sort directory entries while scanning them from disk;
24 prevents Heisenbugs due to file ordering in a directory (due to Egmont
25 Koblinger). Fix Wine's problem with finding fonts. (Reported by
26 Bernhard Rosenkraenzer.)
27
28 2.3.94
29
30 fc-cat can take directories as input and creates old-style fonts.cache
31 listings.
32 fc-cache takes -r --really-force which blows away all old caches and
33 regenerates.
34 Robustness fixes, integer overflow fixes (notably to cache handling
35 code), toast broken global cache files.
36 Change binary format to make it compatible with static langset
37 information (thanks to Takashi Iwai).
38 Open hashed caches before fonts.cache-2 (Takashi Iwai).
39 Fix FcFontSetMatch's algorithm, which used to unjustly kill fonts for
40 not declaring certain elements (Takashi Iwai).
41 Fix matching bug when multiple elements match; don't use
42 the sum of all scores, but the best score (James Su).
43 Make fc-lang more friendly to Windows systems.
44 Remove archaic chars from Georgian charset; add Euro character to
45 charsets for European languages.
46 Fix treatment of broken PCF fonts that don't declare family names.
47 Pass O_BINARY to open if appropriate (reported by Doodle).
48 Normalize font directories to the form in which they appear in
49 config files.
50 Add a record of the cached directory to the cache file.
51 Perf optimizations (Dirk Mueller; some reported by Michael Meeks.)
52 Don't loop infinitely on recursive symlinks.
53 Make 'make distcheck' work with automake 1.6.3.
54 Replace 'stamp' target with mkinstalldirs.
55 Don't stop scanning if a directory in fonts.conf doesn't exist,
56 because subsequent directories might exist.
57 Put directory names into global cache (reported by Ronny V. Vindenes).
58 Treat zh-hk fonts differently from zh-tw fonts. This patch may cause
59 fontconfig to treat A-X fonts differently from A-Y fonts; please mail
60 the fontconfig list if this causes any problems.
61 Fix for unaligned memory accesses (Andreas Schwab).
62 Fix treatment of cache directory as read from cache file; don't use
63 string equality to determine if we have the right file, use inode
64 equality.
65 Properly skip past dir caches that contain zero fonts, as occurs
66 in global caches (reported by Mike Fabian).
67 Print out full pathname in fc-match -v (reported by Frederic Crozat).
68 Fix bug where fc-match crashes when given __DUMMY__ property to
69 match on.
70
71 2.3.93
72
73 Create cache files in /var/cache/fontconfig with hashed filenames, if
74 possible, for added FHS compliance.
75 Make fc-cat read both per-directory and global cache files.
76 Add config file for Persian fonts from Sharif FarsiWeb, Inc.
77 Major performance improvements by Dirk Mueller, Stephen Kulow, and Michael Matz at SuSE: in particular, speed up FcFontSetMatch, and inline many functions.
78 Fix treatment of globs in config files, broken since 2.3.2 and discovered by Mathias Clasen.
79 Don't use freetype internal headers (patch by Matthias Clasen).
80 Further space improvements: create langsets statically, so that they can live in .rodata.
81 Properly align mmapped data structures to make e.g. ia64 happy.
82 Bug fixes.
83
84 2.3.92
85
86 Fix corrupted caches bugs from 2.3.91 (reported by Mike Fabian).
87 Store only basename in the cache, reconstitute on demand
88 (reported by James Cloos).
89 Change the rule for artificial emboldening in fonts.conf.in. This
90 enables the support for artificial emboldening included in cairo
91 (patch by Zhe Su).
92 Add FC_EMBEDDED_BITMAP object type to tell Xft/Cairo whether
93 to load embedded bitmaps or not (patch by Jinghua Luo).
94 Fix GCC4 warnings (some by Behdad Esfahbod).
95 Support localized font family and style names; this has been reported
96 to break old apps like xfd, but modern (gtk+/qt/mozilla) apps work
97 fine (patch by Zhe Su).
98 Prevent fc-list from escaping strings when printing them (reported by
99 Matthias Clasen).
100 Add valist sentinel markup for FcObjectSetBuild and
101 FcPatternBuild (patch by Marcus Meissner).
102 Add consts to variables so as to move arrays into .rodata (patch by
103 Ross Burton).
104 Modify config file to use Greek fonts before Asian fonts with
105 Greek glyphs. (patch by Simos Xenitellis).
106 Use libtool -no-undefined flag on all platforms (patch by Christian
107 Biesinger).
108
109 2.3.91
110
111 Use libxml2 if requested or if expat not available. (Mathias Hasselmann)
112 Fix multi-arch cache files: compute the position for the
113 block to be added using info from OrigFile, not NewFile. (plam)
114 Cast results of sizeof() to unsigned int to get rid of
115 warnings on x86_64 (reported by Matthias Clasen).
116 Use FcAtomic to rewrite cache files; don't unlink the fonts.cache-2
117 file even if there's no data to write; just write an empty cache file.
118 (Reported by Lubos Lunak)
119 Allocate room for the subdirectory names in each directory cache.
120 (Reported by James Cloos)
121
122 2.3.90
123
124 Development release of mmap patch: load pattern information
125 directly from cache files. (Patrick Lam)
126
127 2.3.2
128
129 Patch memory leaks in using iconv. (Reported by Chris Capoccia)
130 Patch memory leaks in fc-cache. (Reported by Chris Capoccia)
131 Fetch bitmap glyphs to get widths during font evaluation. (keithp)
132 Share strings through FcObjectStaticName (Ross Burton)
133 Windows build updates (Tor Lillqvist)
134
135 2.3.1
136
137 Be more careful about broken GSUB/GPOS tables (Manish Singh)
138 Include debian packaging stuff in CVS (Josselin Mouette)
139 Add more conf.d examples (Keith Packard)
140 Make manuals build again (Keith Packard)
141 Johap -> Johab (Funda Wang)
142
143 2.3.0
144
145 Fix memory leak of patterns rejected by configuration (#2518)
146
147 Create prototype /etc/fonts/conf.d directory and populate it with a few
148 sample files. These samples are unused as the file names don't start with
149 numbers.
150
151 Update documentation.
152
153 2.2.99
154
155 Verify cache for FC_FILE and FC_FAMILY in every entry (#2219)
156
157 Update blanks list from recent Unicode docs (#86)
158
159 Various small build fixes (#280, #2278,
160
161 Documentation fixes (#2085, #2284, #2285)
162
163 Add polite typechecking to config file loader (#229)
164
165 2.2.98
166
167 Share object name strings (Michael Meeks)
168
169 Eliminate a couple of codepoints from Russian orthography (John Thacker)
170
171 Add synthetic emboldening configuration changes (Jakub Pavelek)
172
173 Change FcFontSetSort to ignore language after fonts with the requested
174 languages have been found. (Owen Taylor)
175
176 Add some RedHat font configuration changes (Owen Tayler).
177
178 Add full Unicode case folding support to case-ignoring string functions
179 (Keith Packard)
180
181 Remove Han characters from Korean orthography (Tor Andersson)
182
183 2.2.97
184
185 Fc-cache sleeps before exiting to ensure filesystem timestamps are well
186 ordered.
187
188 Added Punjai orthography.
189
190 The timestamp in fonts.conf is gone now. Too many problems.
191
192 The default font path includes all of the X fonts; use selectfont/rejectfont
193 to eliminate bitmaps, as shown in the sample local.conf file.
194
195 <include> configuration elements may now reference a directory. Files
196 in that directory matching [0-9]* are loaded in UTF-8 collating sequence order.
197
198 <selectfont> configuration added to control which fonts are used.
199
200 fontformat font pattern elements built from the FT_Get_X11_Font_Format
201 function in newer versions of FreeType.
202
203 'capability' list constructed from gsub/gpos and silf values in TrueType
204 files.
205
206 Multi-lingual names (style, family, fullname) extracted and stored with
207 parallel <foo>lang properties marking language.
208
209 2.2.96
210
211 Fix FcConfigUpToDate to actually check all font directories and eliminate
212 a typo which completely prevented it from working (Lubos Lunak
213 <l.lunak@suse.cz>)
214
215 Remove comma at end of FcResult enum definition for picky compilers.
216
217 2.2.95
218
219 Add FcResultOutOfMemory so FcFontSetMatch can return accurate error.
220
221 Replace MIN/MAX/ABS macros which happened to be in old FreeType releases
222 with FC_MIN/FC_MAX/FC_ABS macros owned by fontconfig.
223
224 2.2.94
225
226 The 2.2.93 release was prepared with a broken libtool which created
227 the shared library without the '.so' in the file names.
228
229 2.2.93
230
231 This is the third prerelease of fontconfig 2.3. Significant changes from
232 2.2.92 are:
233
234 o Use new FreeType #include syntax
235 o use y_ppem field instead of 'height' in bitmap sizes rec -
236 FreeType changed the semantics. Still uses height for
237 older versions of FreeType
238 o Don't construct program manuals unless docbook is available
239
240 2.2.92
241
242 o make distcheck work
243
244 2.2.91
245
246 o Switch to SGML manuals
247 o Add FC_DUAL width spacing value
248 o Add FcFini to close out fontconfig and release all memory
249
250 2.2
251
252 This is the third public release of fontconfig, a font configuration and
253 customization library. Fontconfig is designed to locate fonts within the
254 system and select them according to requirements specified by applications.
255
256 Fontconfig is not a rasterization library, nor does it impose a particular
257 rasterization library on the application. The X-specific library
258 'Xft' uses fontconfig along with freetype to specify and rasterize fonts.
259
260 Keith Packard
261 keithp@keithp.com