Fix bitmap scaling

Was broken by 66db69a6d9.  Ouch!
This commit is contained in:
Behdad Esfahbod 2015-04-30 11:25:59 -04:00
parent 3a4136778c
commit 4a6f5efd5f
1 changed files with 17 additions and 15 deletions

View File

@ -2,8 +2,13 @@
<!DOCTYPE fontconfig SYSTEM "fonts.dtd"> <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig> <fontconfig>
<!--
If font is bitmap, calculate scale factor.
Note that color bitmap fonts have scalable=true, while
non-color ones have scalable=false. Both groups have outline=false.
-->
<match target="font"> <match target="font">
<test name="scalable" compare="eq"> <test name="outline" compare="eq">
<bool>false</bool> <bool>false</bool>
</test> </test>
<edit name="pixelsizefixupfactor" mode="assign"> <edit name="pixelsizefixupfactor" mode="assign">
@ -13,10 +18,20 @@
</divide> </divide>
</edit> </edit>
</match> </match>
<!--
For non-scalable bitmap fonts (ie. non-color), skip
minor scaling if hinting is enabled.
-->
<match target="font"> <match target="font">
<test name="outline" compare="eq">
<bool>false</bool>
</test>
<test name="scalable" compare="eq"> <test name="scalable" compare="eq">
<bool>false</bool> <bool>false</bool>
</test> </test>
<test name="hinting" compare="eq">
<bool>true</bool>
</test>
<edit name="scalingnotneeded" mode="assign"> <edit name="scalingnotneeded" mode="assign">
<and> <and>
<less> <less>
@ -30,20 +45,7 @@
</and> </and>
</edit> </edit>
</match> </match>
<!--
So far we determined the scale factor. Now, check and if
scaling is NOT desirable, just reset the scale factor to 1.0.
-->
<match target="font"> <match target="font">
<test name="scalable" compare="eq">
<bool>false</bool>
</test>
<test name="pixelsize" target="pattern" compare="less">
<double>64</double>
</test>
<test name="hinting" compare="eq">
<bool>true</bool>
</test>
<test name="scalingnotneeded" compare="eq"> <test name="scalingnotneeded" compare="eq">
<bool>true</bool> <bool>true</bool>
</test> </test>
@ -55,7 +57,7 @@
If we *are* going to scale, go ahead and do it. If we *are* going to scale, go ahead and do it.
--> -->
<match target="font"> <match target="font">
<test name="scalable" compare="eq"> <test name="outline" compare="eq">
<bool>false</bool> <bool>false</bool>
</test> </test>
<test name="pixelsizefixupfactor" compare="not_eq"> <test name="pixelsizefixupfactor" compare="not_eq">