]> git.wh0rd.org Git - fontconfig.git/commitdiff
Add config file for Persian fonts from Sharif FarsiWeb, Inc.
authorPatrick Lam <plam@MIT.EDU>
Thu, 1 Dec 2005 06:27:07 +0000 (06:27 +0000)
committerPatrick Lam <plam@MIT.EDU>
Thu, 1 Dec 2005 06:27:07 +0000 (06:27 +0000)
reviewed by: plam

ChangeLog
conf.d/10-fonts-persian.conf [new file with mode: 0644]
conf.d/Makefile.am

index 45c762e5a41381d90f4e0dd025f6ab4f8996ce51..9028cb15a10f8268476d279930137cada8218400 100644 (file)
--- 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 (file)
index 0000000..a3f54ef
--- /dev/null
@@ -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>
index c9cb012520f5af7401353ea605347c8713ffb814..a857a0a44667309dfcaee929253e9a3f2f01c65c 100644 (file)
@@ -22,6 +22,7 @@
 #  PERFORMANCE OF THIS SOFTWARE.
 
 CONF_FILES = \
+       10-fonts-persian.conf \
        autohint.conf \
        no-bitmaps.conf \
        no-sub-pixel.conf \