Commit Graph

257 Commits

Author SHA1 Message Date
Khaled Hosny f614ec4d60 Add FC_FONT_WRAPPER
Currently detects only SFNT wrappers:
- WOFF: if it is FreeType says it is an SFNT font the file starts with wOFF tag
- WOFF2: the same but tag is wOF2
- SFNT: for any other SFNT font (which helps distinguishing standalone
  CFF fonts from CFF in SFNT aka OTF)

Fixes #375
2023-08-08 18:17:10 +03:00
Akira TAGOH ff037052bc Fix a typo 2023-05-30 19:00:02 +09:00
Akira TAGOH f0612537cb Add namedinstance property
This change allows applications to detect if a font
is a variable font and a named-instance.
If they are, namedinstance property is set to true,
otherwise false.

Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/362
2023-05-25 20:12:31 +09:00
Akira TAGOH 311f6caaa8 Bump version to 2.14.2 2023-01-27 17:55:02 +09:00
Akira TAGOH b54b98bb21 Add some missing constant names for weight.
Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/348
2023-01-25 23:04:35 +09:00
Mike FABIAN ce9cbe36d8 Change index type to 16 bit and bump cache version to 9
The number of .orth files is now > 256, therefore the index type needs to be 16 bit.
2022-12-09 09:23:19 +01:00
Akira TAGOH 6715a14f13 Add FC_DESKTOP_NAME property
To allow users to have desktop-specific matching rule.
2022-11-26 14:37:49 +09:00
Akira TAGOH c45e09df1e Bump version to 2.14.1 2022-10-21 14:14:03 +09:00
Akira TAGOH 911b19f19f Bump version to 2.14.0 2022-03-31 16:26:11 +09:00
Akira TAGOH d37f97223a Bump version to 2.13.96 2022-02-04 17:19:27 +09:00
Akira TAGOH 53fa8a3801 Bump version to 2.13.95 2022-02-01 14:25:45 +09:00
Akira TAGOH 5d84745e72 Bump the cache version to 8
Bump the cache version to avoid unexpected behavior in
older version of fontconfig.

There was no real incompatible features introduced in a cache.
But the older version of fontconfig can't deal with variable fonts
and then it failed. To avoid this breakage, you may want to choose
one of options like:

1) Applying this change to fontconfig in host and remove all the
fontconfig caches and then regenerate them by fc-cache linked with
older one and new one. or simply run applications.
You'll see two versions of caches in the cache directories.

2) Remove variable fonts on system and remove all the fontconfig
caches too. then regenerate caches. You'll still see one version of
caches there but without the entries of variable fonts.

After that, the problem should be gone.

https://bugzilla.redhat.com/show_bug.cgi?id=1981500
2021-08-24 18:28:26 +09:00
Akira TAGOH e291fda7d4 Bump version to 2.13.94 2021-06-28 22:45:02 +09:00
Akira TAGOH d06103e3e7 Bump version to 2.13.93 2020-11-28 11:38:31 +09:00
Akira TAGOH 98764d54a7 Update README that missed changes mistakenly 2020-11-28 10:52:12 +09:00
Akira TAGOH 3ae08a8601 Make more clearer the license terms
COPYING is missing non-expat license terms for some files and some files is also missing license terms. This is changes to makes it clearer and update.

Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/219
2020-09-03 06:25:30 +00:00
Akira TAGOH 68d021b634 Add FC_ORDER property into cache
"fontversion" used to be modified to sort out fonts as a technique.
But that lost the original purpose to do the version control between
releases.

This change adds the dedicated property into the cache.

Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/226
2020-05-25 18:22:55 +09:00
Akira TAGOH b5bcf61fe7 Use FcConfigReference/Destroy appropriately instead of FcConfigGetCurrent
This may improves to be MT-safe.

Reported at https://bugs.chromium.org/p/chromium/issues/detail?id=1004254
2019-11-01 14:44:47 +09:00
Akira TAGOH cd51cb241a Take effect sysroot functionality to the default config file
When loading the default config file with FONTCONFIG_SYSROOT,
it fails if no /etc/fonts/fonts.conf is available, even if it is
there where is based on sysroot.

To address this, FcConfig is required to determine the sysroot.
therefore, this change makes FcConfigFilename() deprecated,
use FcConfigGetFilename() instead.

Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/181
2019-10-21 20:46:09 +09:00
Akira TAGOH 80047ed8e8 Add FC_FONT_HAS_HINT property to see if font has hinting or not.
This may helps to enable autohint only when font doesn't have any hinting
2019-07-29 10:19:26 +00:00
Akira TAGOH a919700fbd Bump version to 2.13.91 2019-06-10 20:37:03 +09:00
Akira TAGOH f40b203b3e Correct the comment for FC_LANG in fontconfig.h 2019-06-03 07:08:44 +00:00
Akira TAGOH 8208f99fa1 Fix the build issue with --enable-static
Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/109
2018-09-03 07:24:42 +00:00
Akira TAGOH 844d8709a1 Bump version to 2.13.1 2018-08-30 17:20:15 +09:00
Akira TAGOH f5dd8512bd Remove .uuid when no font files exists on a directory
https://bugs.freedesktop.org/show_bug.cgi?id=106632
2018-06-11 17:03:46 +09:00
Akira TAGOH 307639cff1 Bug 43367 - RFE: iterator to peek objects in FcPattern
Add various APIs to obtain things in FcPattern through the iterator

https://bugs.freedesktop.org/show_bug.cgi?id=43367
2018-05-11 20:48:30 +09:00
Akira TAGOH f075ca1aea Bump version to 2.13.0 2018-03-06 12:31:12 +09:00
Akira TAGOH 2fc42310cd Bump version to 2.12.93 2018-02-15 22:01:54 +09:00
Tom Anderson b8a225b3c3 Allow overriding symbol visibility.
Fontconfig symbols were hardcoded to be either hidden or exported.  This patch
adds configurable symbol visibility.  This is useful for projects that want to
do in-tree fontconfig builds and not export any symbols, otherwise they would
conflict with the system library's symbols

Chromium is a project that does in-tree fontconfig builds, and the workaround
currently used is "#define visibility(x) // nothing" [1] and building with
"-fvisibility=hidden".
[1] https://cs.chromium.org/chromium/src/third_party/fontconfig/BUILD.gn?rcl=ce146f1f300988c960e1eecf8a61b238d6fd7f7f&l=62
2018-01-04 15:24:16 +00:00
Akira TAGOH d7d40b5aa8 Bump version to 2.12.92 2018-01-04 20:42:34 +09:00
Behdad Esfahbod 706535e107 Add FcWeightTo/FromOpenTypeDouble()
No idea why I didn't add these as double to begin with.
2018-01-03 15:59:56 +00:00
Akira TAGOH dd21876e64 Update .uuid only when -r is given but not -f. 2017-12-18 12:11:21 +09:00
Akira TAGOH bad64a7e1f Bump version to 2.12.91 2017-12-14 15:44:20 +09:00
Akira TAGOH 68ff99c414 cleanup 2017-11-20 17:37:22 +05:30
Akira TAGOH 85d9de58ed Add new API to find out a font from current search path 2017-11-20 17:37:22 +05:30
Akira TAGOH 9a0fcb948f Add the ruleset description support
Trying to address what these configuration files really do.
This change allows to see the short description that mention
the purpose of the content in the config file and obtain
them through API.

This change also encourage one who want to make some UI for
the user-specific configuration management. it is the main
purpose of this change for me though.

Aside from that, I've also made programs translatable. so
we see more dependencies on the build time for gettext,
and itstool to generate PO from xml.
2017-11-07 15:24:54 +09:00
Akira TAGOH 14d70d3a8a Bump version to 2.12.6 2017-10-17 16:48:50 +09:00
Behdad Esfahbod 2544bc5343 Add FcDontCare value to FcBool
This can be used for FC_VARIABLE=FcDontCare for example, to opt into getting
variable fonts for clients that support using them.
2017-09-20 13:21:13 -07:00
Behdad Esfahbod a4bd5b7c7a [varfonts] Change id argument in FcFreeTypeQuery* to unsigned int
Going to use the top bit to query varfonts.
2017-09-20 13:13:35 -07:00
Behdad Esfahbod 819d3a5541 [varfonts] Add FC_VARIABLE
For now, we mark all fonts as non-variable.
2017-09-20 13:13:35 -07:00
Behdad Esfahbod 80e155c1c0 [varfonts] Add FC_FONT_VARIATIONS
This is for clients to passthru font variation settings.  Modeled
similar to FC_FONT_FEATURES.  Each element value is for one axis
settings, eg. "abcd=2.3" where 'abcd' is the OpenType Font Variations
axis tag.

Needs docs update.
2017-09-20 13:13:35 -07:00
Behdad Esfahbod 27a6a299e0 Add FcFreeTypeQueryAll()
Like FcFreeTypeQuery(), but adds patterns for all fonts found, including named
instances of variable fonts.  If id is -1, then all collection faces are queried.
Returns number of fonts added.

This merges the same face loop that was in fc-query. and fcdir.c.

Needs documentation update.
2017-09-12 17:17:05 -04:00
Akira TAGOH 4d3410bd08 Bump version to 2.12.5 2017-09-09 22:34:36 +09:00
Akira TAGOH 12b7501bad Add FcConfigParseAndLoadFromMemory() to load a configuration from memory.
https://bugs.freedesktop.org/show_bug.cgi?id=78452
2017-07-07 15:52:15 +09:00
Akira TAGOH ee2000494c Add FcPatternGetWithBinding() to obtain the binding type of the value in FcPattern.
https://bugs.freedesktop.org/show_bug.cgi?id=19375
2017-07-07 15:43:59 +09:00
Akira TAGOH 01085e0785 Bump version to 2.12.4 2017-07-05 17:37:26 +09:00
Akira TAGOH 690f822a1b Bump version to 2.12.3 2017-05-31 20:10:00 +09:00
Akira TAGOH 3072f14bdd Bump version to 2.12.2 2017-05-31 16:39:44 +09:00
Khem Raj 1ab5258f7c Avoid conflicts with integer width macros from TS 18661-1:2014
glibc 2.25+ has now defined these macros in <limits.h>
https://sourceware.org/git/?p=glibc.git;a=commit;h=5b17fd0da62bf923cb61d1bb7b08cf2e1f1f9c1a

Create an alias for FC_CHAR_WIDTH for ABI compatibility

Signed-off-by: Khem Raj <raj.khem@gmail.com>
2016-12-20 16:33:07 +09:00
Akira TAGOH 6b222c52cd Bump version to 2.12.1 2016-08-05 14:47:02 +09:00