Add FcMatchScan to resolve Delicious font matching issues (bug #6769)
The Delicious family includes one named Delicious Heavy, a bold variant which is unfortunately marked as having normal weight. Because the family name is 'Delicious', fontconfig accidentally selects this font instead of the normal weight variant. The fix here rewrites the scanned data by running the scanned pattern through a new substitution sequence tagged with <match target=scan>; a sample for the Delicious family is included to demonstrate how it works (and fix Delicious at the same time). Also added was a new match predicate -- the 'decorative' predicate which is automatically detected in fonts by searching style names for key decorative phrases like SmallCaps, Shadow, Embosed and Antiqua. Suggestions for additional decorative key words are welcome. This should have little effect on font matching except when two fonts share the same characteristics except for this value.
Showing with 153 additions and 31 deletions