summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Lam <plam@MIT.EDU>2005-12-01 06:27:07 +0000
committerPatrick Lam <plam@MIT.EDU>2005-12-01 06:27:07 +0000
commit2c6fead73fd6608fd50eb97c69a556fdac1b5c55 (patch)
tree8716da8010115f4864ec039e1fed3c0e5e0951ca
parentcb6d97eb1baba6795bb8abdede69902b2440f371 (diff)
Add config file for Persian fonts from Sharif FarsiWeb, Inc.
reviewed by: plam
-rw-r--r--ChangeLog10
-rw-r--r--conf.d/10-fonts-persian.conf545
-rw-r--r--conf.d/Makefile.am1
3 files changed, 555 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 45c762e..9028cb1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,12 @@
-2005-11-30 Behdad Befahbod <behdad@cs.toronto.edu>
+2005-12-01 Behdad Esfahbod <behdad@cs.toronto.edu>
+ reviewed by: plam
+
+ * conf.d/10-fonts.persian.conf:
+ * conf.d/Makefile.am:
+
+ Add config file for Persian fonts from Sharif FarsiWeb, Inc.
+
+2005-11-30 Behdad Esfahbod <behdad@cs.toronto.edu>
reviewed by: plam
* src/fcxml.c (FcConfigParseAndLoad):
diff --git a/conf.d/10-fonts-persian.conf b/conf.d/10-fonts-persian.conf
new file mode 100644
index 0000000..a3f54ef
--- /dev/null
+++ b/conf.d/10-fonts-persian.conf
@@ -0,0 +1,545 @@
+<?xml version="1.0"?>
+<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!-- /etc/fonts/conf.d/10-fonts-persian.conf -->
+<!--
+ fonts-persian.conf
+ To configure Persian fonts from The FarsiWeb Project.
+
+ Copyright (C) 2005 Sharif FarsiWeb, Inc. <license@farsiweb.info>
+
+ Permission to use, copy, modify, distribute, and sell this software and its
+ documentation for any purpose is hereby granted without fee, provided that
+ the above copyright notice appear in all copies and that both that
+ copyright notice and this permission notice appear in supporting
+ documentation, and that the name of Sharif FarsiWeb, Inc. not be used in
+ advertising or publicity pertaining to distribution of the software without
+ specific, written prior permission. Sharif FarsiWeb, Inc. makes no
+ representations about the suitability of this software for any purpose. It
+ is provided "as is" without express or implied warranty.
+
+ SHARIF FARSIWEB, INC. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ PERFORMANCE OF THIS SOFTWARE.
+
+ ChangeLog:
+ 2005-04-03 Behdad Esfahbod: Initial revision.
+ 2005-10-09 Behdad Esfahbod: Turned off back-slant and Tahoma sections.
+ 2005-11-30 Behdad Esfahbod: Set Titr susbtitution size to 24 points.
+
+ Todo:
+ Add generic font "fantasy". Add some fonts into that category.
+ Maybe add a "cursive" generic font.
+ -->
+<fontconfig>
+
+
+<!--
+ We don't want weak bindings. So got to use the syntactical expansion
+ of alias tag to do binding=same :(. Please support that in alias.
+ -->
+
+
+<!-- Deprecated fonts are discouraged -->
+
+ <!-- Nesf[2] is officially deprecated and has problematic tables -->
+ <match>
+ <test name="family">
+ <string>Nesf</string>
+ </test>
+ <edit name="family" mode="assign" binding="same">
+ <string>Nesf2</string>
+ </edit>
+ </match>
+ <match>
+ <test name="family">
+ <string>Nesf2</string>
+ </test>
+ <edit name="family" mode="assign" binding="same">
+ <string>Persian_sansserif_default</string>
+ </edit>
+ </match>
+
+ <!-- Tahoma looks awful (TURNED-OFF) -->
+ <!--match>
+ <test name="family">
+ <string>Tahoma</string>
+ </test>
+ <edit name="family" mode="prepend" binding="same">
+ <string>Persian_sansserif_default</string>
+ </edit>
+ </match-->
+
+<!-- Name changes and spelling variant aliases -->
+
+ <!-- Changed due to trademark problems -->
+ <match>
+ <test name="family">
+ <string>Nazanin</string>
+ </test>
+ <edit name="family" mode="assign" binding="same">
+ <string>Nazli</string>
+ </edit>
+ </match>
+ <match>
+ <test name="family">
+ <string>Lotus</string>
+ </test>
+ <edit name="family" mode="assign" binding="same">
+ <string>Lotoos</string>
+ </edit>
+ </match>
+
+ <!-- Changed due to transcription orthography -->
+ <match>
+ <test name="family">
+ <string>Yaqut</string>
+ </test>
+ <edit name="family" mode="assign" binding="same">
+ <string>Yaghoot</string>
+ </edit>
+ </match>
+ <match>
+ <test name="family">
+ <string>Yagut</string>
+ </test>
+ <edit name="family" mode="assign" binding="same">
+ <string>Yaghoot</string>
+ </edit>
+ </match>
+ <match>
+ <test name="family">
+ <string>Yaghut</string>
+ </test>
+ <edit name="family" mode="assign" binding="same">
+ <string>Yaghoot</string>
+ </edit>
+ </match>
+ <match>
+ <test name="family">
+ <string>Traffic</string>
+ </test>
+ <edit name="family" mode="assign" binding="same">
+ <string>Terafik</string>
+ </edit>
+ </match>
+ <match>
+ <test name="family">
+ <string>Ferdowsi</string>
+ </test>
+ <edit name="family" mode="assign" binding="same">
+ <string>Ferdosi</string>
+ </edit>
+ </match>
+ <match>
+ <test name="family">
+ <string>Fantezy</string>
+ </test>
+ <edit name="family" mode="assign" binding="same">
+ <string>Fantezi</string>
+ </edit>
+ </match>
+
+
+<!-- Classify fonts. -->
+
+ <!-- Persian_title class -->
+ <match>
+ <test name="family">
+ <string>Jadid</string>
+ </test>
+ <edit name="family" mode="append" binding="same">
+ <string>Persian_title</string>
+ </edit>
+ </match>
+ <match>
+ <test name="family">
+ <string>Titr</string>
+ </test>
+ <edit name="family" mode="append" binding="same">
+ <string>Persian_title</string>
+ </edit>
+ </match>
+
+ <!-- Persian_fantasy class -->
+ <match>
+ <test name="family">
+ <string>Kamran</string>
+ </test>
+ <edit name="family" mode="append" binding="same">
+ <string>Homa</string>
+ </edit>
+ <edit name="family" mode="append" binding="same">
+ <string>Persian_fantasy</string>
+ </edit>
+ </match>
+ <match>
+ <test name="family">
+ <string>Homa</string>
+ </test>
+ <edit name="family" mode="append" binding="same">
+ <string>Kamran</string>
+ </edit>
+ <edit name="family" mode="append" binding="same">
+ <string>Persian_fantasy</string>
+ </edit>
+ </match>
+ <match>
+ <test name="family">
+ <string>Fantezi</string>
+ </test>
+ <edit name="family" mode="append" binding="same">
+ <string>Persian_fantasy</string>
+ </edit>
+ </match>
+ <match>
+ <test name="family">
+ <string>Tabassom</string>
+ </test>
+ <edit name="family" mode="append" binding="same">
+ <string>Persian_fantasy</string>
+ </edit>
+ </match>
+
+ <!-- Persian_square class -->
+ <match>
+ <test name="family">
+ <string>Arshia</string>
+ </test>
+ <edit name="family" mode="append" binding="same">
+ <string>Persian_square</string>
+ </edit>
+ </match>
+ <match>
+ <test name="family">
+ <string>Nasim</string>
+ </test>
+ <edit name="family" mode="append" binding="same">
+ <string>Persian_square</string>
+ </edit>
+ </match>
+ <match>
+ <test name="family">
+ <string>Elham</string>
+ </test>
+ <edit name="family" mode="append" binding="same">
+ <string>Farnaz</string>
+ </edit>
+ <edit name="family" mode="append" binding="same">
+ <string>Persian_square</string>
+ </edit>
+ </match>
+ <match>
+ <test name="family">
+ <string>Farnaz</string>
+ </test>
+ <edit name="family" mode="append" binding="same">
+ <string>Elham</string>
+ </edit>
+ <edit name="family" mode="append" binding="same">
+ <string>Persian_square</string>
+ </edit>
+ </match>
+ <match>
+ <test name="family">
+ <string>Sina</string>
+ </test>
+ <edit name="family" mode="append" binding="same">
+ <string>Persian_square</string>
+ </edit>
+ </match>
+
+<!-- Font ordering per class -->
+
+ <!-- Persian_title class -->
+ <match>
+ <test name="family">
+ <string>Persian_title</string>
+ </test>
+ <edit name="family" mode="append" binding="same">
+ <string>Persian_serif</string>
+ </edit>
+ <edit name="family" mode="append" binding="same">
+ <string>Jadid</string>
+ </edit>
+ <edit name="family" mode="append" binding="same">
+ <string>Titr</string>
+ </edit>
+ </match>
+
+ <!-- Persian_fantasy class -->
+ <match>
+ <test name="family">
+ <string>Persian_fantasy</string>
+ </test>
+ <edit name="family" mode="append" binding="same">
+ <string>Persian_square</string>
+ </edit>
+ <edit name="family" mode="append" binding="same">
+ <string>Tabassom</string>
+ </edit>
+ <edit name="family" mode="append" binding="same">
+ <string>Fantezi</string>
+ </edit>
+ <edit name="family" mode="append" binding="same">
+ <string>Kamran</string>
+ </edit>
+ <edit name="family" mode="append" binding="same">
+ <string>Homa</string>
+ </edit>
+ </match>
+
+ <!-- Persian_square class -->
+ <match>
+ <test name="family">
+ <string>Persian_square</string>
+ </test>
+ <edit name="family" mode="append" binding="same">
+ <string>Persian_serif</string>
+ </edit>
+ <edit name="family" mode="append" binding="same">
+ <string>Sina</string>
+ </edit>
+ <edit name="family" mode="append" binding="same">
+ <string>Nasim</string>
+ </edit>
+ <edit name="family" mode="append" binding="same">
+ <string>Farnaz</string>
+ </edit>
+ <edit name="family" mode="append" binding="same">
+ <string>Elham</string>
+ </edit>
+ <edit name="family" mode="append" binding="same">
+ <string>Arshia</string>
+ </edit>
+ </match>
+
+<!-- Register the fonts that we actually do have -->
+
+ <match target="font">
+ <test name="family">
+ <string>Elham</string>
+ </test>
+ <edit name="foundry">
+ <string>farsiweb</string>
+ </edit>
+ </match>
+
+ <match target="font">
+ <test name="family">
+ <string>Homa</string>
+ </test>
+ <edit name="foundry">
+ <string>farsiweb</string>
+ </edit>
+ <edit name="embolden">
+ <bool>true</bool>
+ </edit>
+ </match>
+
+ <match target="font">
+ <test name="family">
+ <string>Koodak</string>
+ </test>
+ <edit name="foundry">
+ <string>farsiweb</string>
+ </edit>
+ <edit name="embolden">
+ <bool>true</bool>
+ </edit>
+ </match>
+
+ <match target="font">
+ <test name="family">
+ <string>Nazli</string>
+ </test>
+ <edit name="foundry">
+ <string>farsiweb</string>
+ </edit>
+ </match>
+
+ <match target="font">
+ <test name="family">
+ <string>Roya</string>
+ </test>
+ <edit name="foundry">
+ <string>farsiweb</string>
+ </edit>
+ </match>
+
+ <match target="font">
+ <test name="family">
+ <string>Terafik</string>
+ </test>
+ <edit name="foundry">
+ <string>farsiweb</string>
+ </edit>
+ </match>
+
+ <match target="font">
+ <test name="family">
+ <string>Titr</string>
+ </test>
+ <edit name="foundry">
+ <string>farsiweb</string>
+ </edit>
+ </match>
+
+
+<!-- Our fonts should oblique to the other side (TURNED-OFF) -->
+
+ <match target="font">
+ <test name="foundry">
+ <!--string>farsiweb</string-->
+ <string>TURNED-OFF</string>
+ </test>
+ <test name="foundry">
+ <string>farsiweb</string>
+ </test>
+ <!-- check to see if the font is roman -->
+ <test name="slant">
+ <const>roman</const>
+ </test>
+ <!-- check to see if the pattern requested non-roman -->
+ <test target="pattern" name="slant" compare="not_eq">
+ <const>roman</const>
+ </test>
+ <!-- multiply the matrix to slant the font -->
+ <edit name="matrix" mode="assign">
+ <times>
+ <name>matrix</name>
+ <matrix><double>1</double><double>-0.2</double>
+ <double>0</double><double>1</double>
+ </matrix>
+ </times>
+ </edit>
+ <!-- pretend the font is oblique now -->
+ <edit name="slant" mode="assign">
+ <const>oblique</const>
+ </edit>
+ </match>
+
+
+<!--
+ We can't hint our fonts well, so turn off hinting.
+ Moreover, the bitmaps we have designed (well, they
+ have designed), suck, so disable them too.
+ -->
+
+ <match target="font">
+ <test name="foundry">
+ <string>farsiweb</string>
+ </test>
+ <edit name="autohint">
+ <bool>false</bool>
+ </edit>
+ <edit name="hinting">
+ <bool>false</bool>
+ </edit>
+ <edit name="rh_prefer_bitmaps">
+ <bool>false</bool>
+ </edit>
+ </match>
+
+
+<!-- Alias our fonts to common families -->
+
+ <!-- Persian serif fonts -->
+ <alias>
+ <family>serif</family>
+ <accept>
+ <family>Nazli</family>
+ <family>Lotoos</family>
+ <family>Mitra</family>
+ <family>Ferdosi</family>
+ <family>Badr</family>
+ <family>Zar</family>
+ </accept>
+ </alias>
+
+ <!-- Persian sans-serif fonts -->
+ <alias>
+ <family>sans-serif</family>
+ <accept>
+ <family>Roya</family>
+ <family>Koodak</family>
+ <family>Terafik</family>
+ </accept>
+ </alias>
+
+ <!-- Persian monospace fonts -->
+ <alias>
+ <family>monospace</family>
+ <accept>
+ <!-- Not really monospace -->
+ <family>Terafik</family>
+ </accept>
+ </alias>
+
+
+<!-- Use Titr in titles -->
+
+ <!-- Both serif... -->
+ <match>
+ <test name="family">
+ <string>serif</string>
+ </test>
+ <test name="weight" compare="more_eq">
+ <int>200</int>
+ </test>
+ <test name="size" compare="more_eq">
+ <double>24</double>
+ </test>
+ <edit name="family" mode="prepend">
+ <string>Titr</string>
+ </edit>
+ </match>
+
+ <!-- and sans-serif. -->
+ <match>
+ <test name="family">
+ <string>sans-serif</string>
+ </test>
+ <test name="weight" compare="more_eq">
+ <int>200</int>
+ </test>
+ <test name="size" compare="more_eq">
+ <double>24</double>
+ </test>
+ <edit name="family" mode="prepend">
+ <string>Titr</string>
+ </edit>
+ </match>
+
+ <!-- and more. -->
+ <match>
+ <test name="family">
+ <string>Persian_sansserif_default</string>
+ </test>
+ <test name="weight" compare="more_eq">
+ <int>200</int>
+ </test>
+ <test name="size" compare="more_eq">
+ <double>24</double>
+ </test>
+ <edit name="family" mode="prepend" binding="same">
+ <string>Titr</string>
+ </edit>
+ </match>
+
+
+<!-- Default substituted for deprecated sans-serif fonts -->
+
+ <match>
+ <test name="family">
+ <string>Persian_sansserif_default</string>
+ </test>
+ <edit name="family" mode="assign" binding="same">
+ <string>Roya</string>
+ </edit>
+ </match>
+
+</fontconfig>
diff --git a/conf.d/Makefile.am b/conf.d/Makefile.am
index c9cb012..a857a0a 100644
--- a/conf.d/Makefile.am
+++ b/conf.d/Makefile.am
@@ -22,6 +22,7 @@
# PERFORMANCE OF THIS SOFTWARE.
CONF_FILES = \
+ 10-fonts-persian.conf \
autohint.conf \
no-bitmaps.conf \
no-sub-pixel.conf \