fontconfig issueshttps://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues2019-12-08T10:46:35Zhttps://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/106RFE: allow merging of legacy font family names2019-12-08T10:46:35ZBugzilla Migration UserRFE: allow merging of legacy font family names## Submitted by Nicolas Mailhot
Assigned to **fon..@..op.org**
**[Link to original bug (#18725)](https://bugs.freedesktop.org/show_bug.cgi?id=18725)**
## Description
Historically font formats only allowed four faces regular, bold,...## Submitted by Nicolas Mailhot
Assigned to **fon..@..op.org**
**[Link to original bug (#18725)](https://bugs.freedesktop.org/show_bug.cgi?id=18725)**
## Description
Historically font formats only allowed four faces regular, bold, italic, bold italic. You had to use a separate font family to distribute condensed, heavy etc variants
This has changed (cf http://blogs.msdn.com/text/attachment/2249036.ashx ) and modern fonts such as DejaVu include all faces under a single family name. Applications such as OO.o are being fixed to handle multifaced fonts
Unfortunately there are still many historic fonts in the wild distributed in several sets of four faces (gs fonts, arial narrow, arial bold, etc). Those fonts currently appear under different family names in fontconfig-using apps. This is perturbing to users, since the same faces of historic and modern fonts are not handled the same way. Microsoft did some sort of magic in uniscribe to hide this distinction (irrelevant to users).
Please provide a documented config pattern for font distributors that enables them to declare to fontconfig "font family A and font family B are the same, please expose all the associated faces under A name to users".
(of course an application asking explicitely for B should still get it, but users would only see A in font lists)
Version: 2.6https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/104Enhance fontconfig to render Microsoft fonts better2018-08-20T21:55:44ZBugzilla Migration UserEnhance fontconfig to render Microsoft fonts better## Submitted by Charles
Assigned to **fon..@..op.org**
**[Link to original bug (#7662)](https://bugs.freedesktop.org/show_bug.cgi?id=7662)**
## Description
You could incorporate these enhancements into fontconfig:
http://www.ubunt...## Submitted by Charles
Assigned to **fon..@..op.org**
**[Link to original bug (#7662)](https://bugs.freedesktop.org/show_bug.cgi?id=7662)**
## Description
You could incorporate these enhancements into fontconfig:
http://www.ubuntuforums.org/showthread.php?t=208396
Many people have asked for it on the Internet, and these configurations don't
affect regular fonts rendering so that everybody's happy :)
Version: 2_1
### Blocking
* [Bug 8100](https://bugs.freedesktop.org/show_bug.cgi?id=8100)https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/103Merge some optimisation works by Michal Srb?2019-12-04T05:54:59ZBugzilla Migration UserMerge some optimisation works by Michal Srb?## Submitted by Mingcong Bai
Assigned to **fon..@..op.org**
**[Link to original bug (#105102)](https://bugs.freedesktop.org/show_bug.cgi?id=105102)**
## Description
First described in his paper ¹ to optimise various fontconfig alg...## Submitted by Mingcong Bai
Assigned to **fon..@..op.org**
**[Link to original bug (#105102)](https://bugs.freedesktop.org/show_bug.cgi?id=105102)**
## Description
First described in his paper ¹ to optimise various fontconfig algorithms, his work ² has proven to be beneficial especially with LibreOffice. With current 2.12.6 it is practically impossible to scroll through the font listing when a full set of Noto and Noto CJK fonts are installed, scrolling can cause the UI to lock up for more than a second which practically destroys the user experience.
With patches generated from his work - applied upon 2.12.6, this issue has gone away. I was trying to test https://bugs.freedesktop.org/show_bug.cgi?id=105085 with 2.12.92, however, these patches would no longer apply to the newest code, as extensive API changes were made - it would be a shame to waste all these optimisation works...
--------
¹ https://www.theseus.fi/bitstream/handle/10024/124694/Srb_Michal.pdf?sequence=1
² https://github.com/michalsrb/fontconfig
Version: 2.12https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/100Add way to FcNameUnparse to specify weak binding?2018-08-20T21:52:32ZBugzilla Migration UserAdd way to FcNameUnparse to specify weak binding?## Submitted by Behdad Esfahbod
Assigned to **fon..@..op.org**
**[Link to original bug (#103727)](https://bugs.freedesktop.org/show_bug.cgi?id=103727)**
## Description
Would be nice. Right now there's no way to generate patterns ...## Submitted by Behdad Esfahbod
Assigned to **fon..@..op.org**
**[Link to original bug (#103727)](https://bugs.freedesktop.org/show_bug.cgi?id=103727)**
## Description
Would be nice. Right now there's no way to generate patterns with weak bindings from command-line.https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/99RFE: subpixel hinting support2018-08-20T21:52:28ZBugzilla Migration UserRFE: subpixel hinting support## Submitted by Akira TAGOH `@tagoh`
Assigned to **fon..@..op.org**
**[Link to original bug (#51212)](https://bugs.freedesktop.org/show_bug.cgi?id=51212)**
## Description
http://git.savannah.gnu.org/cgit/freetype/freetype2.git/com...## Submitted by Akira TAGOH `@tagoh`
Assigned to **fon..@..op.org**
**[Link to original bug (#51212)](https://bugs.freedesktop.org/show_bug.cgi?id=51212)**
## Description
http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=79e36baebba4532dff92ca1ca43c4dc2f779fd32https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/98Config format (and api?) to define virtual families2018-08-20T21:52:25ZBugzilla Migration UserConfig format (and api?) to define virtual families## Submitted by Behdad Esfahbod
Assigned to **fon..@..op.org**
**[Link to original bug (#90428)](https://bugs.freedesktop.org/show_bug.cgi?id=90428)**
## Description
Right now we recognize sans-serif, serif, monospace, fantasy, an...## Submitted by Behdad Esfahbod
Assigned to **fon..@..op.org**
**[Link to original bug (#90428)](https://bugs.freedesktop.org/show_bug.cgi?id=90428)**
## Description
Right now we recognize sans-serif, serif, monospace, fantasy, and cursive but user has to know that. Would be nice to allow defining those formally, and let user define more.
That would be useful for a font-manager kind of scenario, where one can define new virtual families and add multiple fonts as a stack to it.
The latter can be done using existing configuration facilities (mostly), so the part missing is just making it appear in FcFontList() output.
No idea what the config / API for this should look like.https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/97Support variation selectors2018-08-20T21:52:22ZBugzilla Migration UserSupport variation selectors## Submitted by Behdad Esfahbod
Assigned to **fon..@..op.org**
**[Link to original bug (#82266)](https://bugs.freedesktop.org/show_bug.cgi?id=82266)**
## Description
I think can support this internally by including a unicode,selec...## Submitted by Behdad Esfahbod
Assigned to **fon..@..op.org**
**[Link to original bug (#82266)](https://bugs.freedesktop.org/show_bug.cgi?id=82266)**
## Description
I think can support this internally by including a unicode,selector pair as (selector<<21)|unicode value in the charset, but provide new API to the charset for querying. Or maybe expose that convention all the way to the API. Here's some code to that extent:
unsigned int var_num = 0;
if (variation_selector - 0xFE00u < 16)
var_num = variation_selector - 0xFE00 + 1;
else if (variation_selector - 0xE0100u < (256 - 16))
var_num = variation_selector - 0xE0100 + 17;
unicode = (var_num << 21) | unicode;
Note that currently FcCharSetPutLeaf has:
ucs4 >>= 8;
if (ucs4 >= 0x10000)
return FcFalse;
so the top byte of the ucs4 has been unused. Unfortunately the top byte is not enough as there are 256 values to fit, not 255 :(.https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/96Missing closing bracket in src/fcstr.c (git master)2018-08-21T03:13:12ZBugzilla Migration UserMissing closing bracket in src/fcstr.c (git master)## Submitted by sor..@..teo.jp
Assigned to **fon..@..op.org**
**[Link to original bug (#107444)](https://bugs.freedesktop.org/show_bug.cgi?id=107444)**
## Description
There is a missing closing bracket in src/fcstr.c at line 875: ...## Submitted by sor..@..teo.jp
Assigned to **fon..@..op.org**
**[Link to original bug (#107444)](https://bugs.freedesktop.org/show_bug.cgi?id=107444)**
## Description
There is a missing closing bracket in src/fcstr.c at line 875: https://cgit.freedesktop.org/fontconfig/tree/src/fcstr.c#n875
Patch:
diff --git a/src/fcstr.c b/src/fcstr.c
index bfddd68..4247c85 100644
--- a/src/fcstr.c
+++ b/src/fcstr.c
@@ -872,7 +872,7 @@ FcStrIsAbsoluteFilename (const FcChar8 *s)
{
#ifdef _WIN32
if (*s == '\\' ||
- (isalpha (*s) && s[1] == ':' && (s[2] == '/' || s[2] == '\\'))
+ (isalpha (*s) && s[1] == ':' && (s[2] == '/' || s[2] == '\\')))
return FcTrue;
#endif
return *s == '/';
--
2.18.0https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/94FcConfigReinitialize loses all config settings2018-08-20T21:52:06ZBugzilla Migration UserFcConfigReinitialize loses all config settings## Submitted by Behdad Esfahbod
Assigned to **fon..@..op.org**
**[Link to original bug (#17123)](https://bugs.freedesktop.org/show_bug.cgi?id=17123)**
## Description
AppFonts, EnableHome, RescanInterval.
It should copy them from o...## Submitted by Behdad Esfahbod
Assigned to **fon..@..op.org**
**[Link to original bug (#17123)](https://bugs.freedesktop.org/show_bug.cgi?id=17123)**
## Description
AppFonts, EnableHome, RescanInterval.
It should copy them from old config to new config for the least.
Version: 2.4https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/93Support for sFamilyClass font attribute to allow searching by serif style2018-08-20T21:51:56ZBugzilla Migration UserSupport for sFamilyClass font attribute to allow searching by serif style## Submitted by Eric Wasylishen
Assigned to **Akira TAGOH `@tagoh`**
**[Link to original bug (#29497)](https://bugs.freedesktop.org/show_bug.cgi?id=29497)**
## Description
The OpenType spec has a field called sFamilyClass in the r...## Submitted by Eric Wasylishen
Assigned to **Akira TAGOH `@tagoh`**
**[Link to original bug (#29497)](https://bugs.freedesktop.org/show_bug.cgi?id=29497)**
## Description
The OpenType spec has a field called sFamilyClass in the required OS/2 table, which allows the font designer to classify the font based on a "family class" (e.g. serif, sans-serif) and "family subclass" (e.g. modern, old style).
See:
http://www.microsoft.com/typography/otspec/os2.htm#fc
and:
http://www.microsoft.com/typography/otspec/ibmfc.htm
It would be really nice if Fontconfig read this field from fonts and allowed searching based on it (probably treating it as two separate fields: maybe FC_FAMILY_CLASS and FC_FAMILY_SUBCLASS?)
In my opinion, this kind of classification would be really useful to present to users for choosing fonts. I would be happy to write a patch if you think this is a good idea.. :-)
Version: 2_1
### Blocking
* [Bug 30225](https://bugs.freedesktop.org/show_bug.cgi?id=30225)https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/90FIR filters with custom constants from fontconfig2019-07-25T05:16:11ZBugzilla Migration UserFIR filters with custom constants from fontconfig## Submitted by Robin Johnson
Assigned to **fon..@..op.org**
**[Link to original bug (#27386)](https://bugs.freedesktop.org/show_bug.cgi?id=27386)**
## Description
There have been a number of subjective patches around for altering...## Submitted by Robin Johnson
Assigned to **fon..@..op.org**
**[Link to original bug (#27386)](https://bugs.freedesktop.org/show_bug.cgi?id=27386)**
## Description
There have been a number of subjective patches around for altering the FIR constants used in ./freetype-2.3.12/src/base/ftlcdfil.c
I've seen at least 4 different sets of values:
light: { 0, 85, 86, 85, 0 }
default: { 0x10, 0x40, 0x70, 0x40, 0x10 }
gentoo-bug306053:{ 0x1C, 0x38, 0x55, 0x38, 0x1C }
russian forum: {8, 28, 100, 80, 40};
Here was the Gentoo bug:
http://bugs.gentoo.org/show_bug.cgi?id=306053
We told the user to take it upstream, he never did, but it came up again.
Here's the google cache of Russian forum post, as the original seems to have gone:
http://tinyurl.com/yl5kyup
Can we please introduce a way to set the constants from fontconfig, and let the users duke it out amongst themselves?
Version: 2.8https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/89Consider moving fontconfig-monitor into fontconfig tree2018-10-02T07:28:29ZBugzilla Migration UserConsider moving fontconfig-monitor into fontconfig tree## Submitted by Behdad Esfahbod
Assigned to **fon..@..op.org**
**[Link to original bug (#101997)](https://bugs.freedesktop.org/show_bug.cgi?id=101997)**
## Description
The code at:
https://github.com/behdad/fontconfig-monitor## Submitted by Behdad Esfahbod
Assigned to **fon..@..op.org**
**[Link to original bug (#101997)](https://bugs.freedesktop.org/show_bug.cgi?id=101997)**
## Description
The code at:
https://github.com/behdad/fontconfig-monitorhttps://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/85Make it build with MSVC2018-08-20T21:50:57ZBugzilla Migration UserMake it build with MSVC## Submitted by Ignacio Casal Quinteiro
Assigned to **fon..@..op.org**
**[Link to original bug (#97237)](https://bugs.freedesktop.org/show_bug.cgi?id=97237)**
## Description
On our downstream gtk-win32 project we are maintaining a...## Submitted by Ignacio Casal Quinteiro
Assigned to **fon..@..op.org**
**[Link to original bug (#97237)](https://bugs.freedesktop.org/show_bug.cgi?id=97237)**
## Description
On our downstream gtk-win32 project we are maintaining a patch for quite a while already to make it build with MSVC. It would be great if somebody could take the interesting parts from it and push it upstream:
https://github.com/wingtk/gtk-win32/blob/master/fontconfig/fontconfig.patchhttps://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/84fontconfig test fails2018-10-02T06:43:34ZBugzilla Migration Userfontconfig test fails## Submitted by Petr Gajdos
Assigned to **fon..@..op.org**
**[Link to original bug (#47704)](https://bugs.freedesktop.org/show_bug.cgi?id=47704)**
## Description
Test fails imho because of wrong out.expected.
fontconfig-2.9.0/tes...## Submitted by Petr Gajdos
Assigned to **fon..@..op.org**
**[Link to original bug (#47704)](https://bugs.freedesktop.org/show_bug.cgi?id=47704)**
## Description
Test fails imho because of wrong out.expected.
fontconfig-2.9.0/test[1]> for i in 4x6.pcf 8x16.pcf ; do fc-query $i; done | grep "family\|size"
Pattern has 18 elts (size 32)
family: "Misc Fixed"(s)
pixelsize: 6(f)(s)
Pattern has 18 elts (size 32)
family: "Sony Fixed"(s)
pixelsize: 16(f)(s)
fontconfig-2.9.0/test[0]> cat out.expected
Fixed:pixelsize=16
Fixed:pixelsize=6
=
Fixed:pixelsize=16
Fixed:pixelsize=6
=
Fixed:pixelsize=16
Fixed:pixelsize=6
fontconfig-2.9.0/test> cat out
Misc Fixed:pixelsize=6
Sony Fixed:pixelsize=16
=
Misc Fixed:pixelsize=6
Sony Fixed:pixelsize=16
=
Misc Fixed:pixelsize=6
Sony Fixed:pixelsize=16
Version: 2_1https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/82Language bindings...2022-02-12T22:41:52ZBugzilla Migration UserLanguage bindings...## Submitted by Behdad Esfahbod
Assigned to **Akira TAGOH `@tagoh`**
**[Link to original bug (#90274)](https://bugs.freedesktop.org/show_bug.cgi?id=90274)**
## Description
Perhaps using gobject-introspection, like we do in HarfBuz...## Submitted by Behdad Esfahbod
Assigned to **Akira TAGOH `@tagoh`**
**[Link to original bug (#90274)](https://bugs.freedesktop.org/show_bug.cgi?id=90274)**
## Description
Perhaps using gobject-introspection, like we do in HarfBuzz...
G-I sucks for non-GObject projects though; a SWIG or even ctypes alternative might be easier. Not sure. Just filing the request for now.https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/81Add caching of PostScript names2018-10-02T06:56:38ZBugzilla Migration UserAdd caching of PostScript names## Submitted by Isaiah Beerbower
Assigned to **fon..@..op.org**
**[Link to original bug (#18095)](https://bugs.freedesktop.org/show_bug.cgi?id=18095)**
## Description
Created attachment 19703
A patch which adds the desired feature...## Submitted by Isaiah Beerbower
Assigned to **fon..@..op.org**
**[Link to original bug (#18095)](https://bugs.freedesktop.org/show_bug.cgi?id=18095)**
## Description
Created attachment 19703
A patch which adds the desired feature.
I am working on GNUstep's (http://www.gnustep.org/) font support. One
of GNUstep's goals is to implement the OpenStep specification
(http://www.gnustep.org/resources/OpenStepSpec.pdf.gz). Fontconfig is
already being used by GNUstep, however, in order to properly implement
the OpenStep standard the PostScript name should be used to uniquely
reference a font. Right now GNUstep is using the full font name,
however, it would be better if the PostScript name was cached so that
it could be used instead.
I've attached a patch (postscript_name.diff) which implements this functionality.
Related are these threads:
http://lists.freedesktop.org/archives/fontconfig/2008-October/003028.html
http://lists.freedesktop.org/archives/fontconfig/2008-June/002957.html
**Patch 19703**, "A patch which adds the desired feature.":
[postscript_name.diff](/uploads/68287e1245efb05d6fc80d61cf74573b/postscript_name.diff)
Version: 2_1https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/80moving matcher definition schemas into external resources2018-08-20T21:50:36ZBugzilla Migration Usermoving matcher definition schemas into external resources## Submitted by Akira TAGOH `@tagoh`
Assigned to **fon..@..op.org**
**[Link to original bug (#68043)](https://bugs.freedesktop.org/show_bug.cgi?id=68043)**
## Description
That would be good to have matcher definition schemas in th...## Submitted by Akira TAGOH `@tagoh`
Assigned to **fon..@..op.org**
**[Link to original bug (#68043)](https://bugs.freedesktop.org/show_bug.cgi?id=68043)**
## Description
That would be good to have matcher definition schemas in the configuration, including the type of value and the priority of matcher. this would allows users to add the own objects for evaluation to be matched.https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/77Code obfuscation results in memory leaks reported by Valgrind, AddressSanitizer2021-10-25T20:32:16ZBugzilla Migration UserCode obfuscation results in memory leaks reported by Valgrind, AddressSanitizer## Submitted by Zoltán Böszörményi
Assigned to **fon..@..op.org**
**[Link to original bug (#96535)](https://bugs.freedesktop.org/show_bug.cgi?id=96535)**
## Description
Fontconfig uses pointer arithmetics to compute the distance f...## Submitted by Zoltán Böszörményi
Assigned to **fon..@..op.org**
**[Link to original bug (#96535)](https://bugs.freedesktop.org/show_bug.cgi?id=96535)**
## Description
Fontconfig uses pointer arithmetics to compute the distance from an object base pointer to a member structure and the result is stored in intptr_t type members.
This causes reported memory leaks in fontconfig in applications compiled with GCC's AddressSanitizer and Valgrind, too.
The fact that the size of intptr_t always equals to the size of a pointer makes this whole thing look like code obfuscation.
It also slows down the code slightly. Pointer arithmetics and storing the result is always slower than just storing the pointer value.
The amount of reported memory leaks in AddressSanitizer is so much that it makes genuine debugging hard, like searching for a needle in a haystack.
Please, use real pointers instead of intptr_t.
Version: 2.11https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/73Preserve binding when preparing patterns2018-08-20T21:49:46ZBugzilla Migration UserPreserve binding when preparing patterns## Submitted by Behdad Esfahbod
Assigned to **fon..@..op.org**
**[Link to original bug (#90330)](https://bugs.freedesktop.org/show_bug.cgi?id=90330)**
## Description
In FcFontRenderPrepare(), matching values are always added with ...## Submitted by Behdad Esfahbod
Assigned to **fon..@..op.org**
**[Link to original bug (#90330)](https://bugs.freedesktop.org/show_bug.cgi?id=90330)**
## Description
In FcFontRenderPrepare(), matching values are always added with binding=strong. If we change that to retain the binding of the matched value and also add API to get binding, then we can have a recommended way to determine whether font fallback happened.https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/69RFE: native build support on MSVC2019-06-20T09:22:19ZBugzilla Migration UserRFE: native build support on MSVC## Submitted by Akira TAGOH `@tagoh`
Assigned to **fon..@..op.org**
**[Link to original bug (#56381)](https://bugs.freedesktop.org/show_bug.cgi?id=56381)**
## Description
just to keep it in mind...
there has been two proposals po...## Submitted by Akira TAGOH `@tagoh`
Assigned to **fon..@..op.org**
**[Link to original bug (#56381)](https://bugs.freedesktop.org/show_bug.cgi?id=56381)**
## Description
just to keep it in mind...
there has been two proposals posted to the list. one is from Pavel Koshevoy:
http://lists.freedesktop.org/archives/fontconfig/2012-October/004425.html
one is from Dos Santos, Oliveira:
http://lists.freedesktop.org/archives/fontconfig/2012-October/004436.html