summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/luatexdir/font/subfont.txt
diff options
context:
space:
mode:
authorTaco Hoekwater <taco@elvenkind.com>2010-04-04 13:55:46 +0000
committerTaco Hoekwater <taco@elvenkind.com>2010-04-04 13:55:46 +0000
commitf372862c42d234710b6057449b46818e63181c90 (patch)
treea9ebec66dd31ac37aed442502ebd1b9fe76245ec /Build/source/texk/web2c/luatexdir/font/subfont.txt
parent2dad291ab056f30816e0aea61970f38033c2f6a5 (diff)
import luatex 0.60.0 (with small local changes, see luatexdir/ChangeLog)
and do an autoreconf git-svn-id: svn://tug.org/texlive/trunk@17680 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/web2c/luatexdir/font/subfont.txt')
-rw-r--r--Build/source/texk/web2c/luatexdir/font/subfont.txt103
1 files changed, 36 insertions, 67 deletions
diff --git a/Build/source/texk/web2c/luatexdir/font/subfont.txt b/Build/source/texk/web2c/luatexdir/font/subfont.txt
index 9fe053cbb9c..eaefae02813 100644
--- a/Build/source/texk/web2c/luatexdir/font/subfont.txt
+++ b/Build/source/texk/web2c/luatexdir/font/subfont.txt
@@ -1,74 +1,43 @@
-map entry:
+map entry:cyberb @ Unicode @ <cyberbit.ttf PidEid = 3, 1 means cyberb < INFIX > = >look at Unicode.sfd = >find the mapping = >charcode = >PidEid = 3, 1 = >glyphs eg cyberb01 = >subfont 01 in Unicode.sfd = >charcodes Infix can be anything, thus the question:given a tfm name, how to find out
+ whether this is a subfont ?
+ It is safe to limit the infix to be composed from hexadecimal digits only ?
+ If so, one possibility is : (1)
+ while last
+ -char -of - tfmname is a hexdigit
+ do
+ remove the last char from tfmname
+ do
+ a lookup for the tfmname
+ if found an entry with subfont flag then break enddo(2)
+ Or, when a map entry with subfont flag is scanned,
+ let pdftex create all the relevant entries.
+ Which may be a safer and faster solution(but wastes more memory)
-cyberb@Unicode@ <cyberbit.ttf PidEid=3,1
-means
-
-cyberb<INFIX> => look at Unicode.sfd => find the mapping => charcode
- => PidEid=3,1 => glyphs
-
-eg cyberb01 => subfont 01 in Unicode.sfd => charcodes
-
-Infix can be anything, thus the question: given a tfm name, how to find out
-whether this is a subfont?
-
-It is safe to limit the infix to be composed from hexadecimal digits only?
-
-If so, one possibility is:
-
-(1)
-while last-char-of-tfmname is a hexdigit do
- remove the last char from tfmname
- do a lookup for the tfmname
- if found an entry with subfont flag then
- break
-enddo
-
-(2)
-Or, when a map entry with subfont flag is scanned, let pdftex create all
-the relevant entries. Which may be a safer and faster solution (but wastes more
-memory)
-
-
-Let's do (2), as infix can be any word.
+ Let 's do (2), as infix can be any word.
Implementation:
-- let's have a map entry:
-
-cyberb@Unicode@ <cyberbit.ttf PidEid=3,1
-
-- actions:
- - read Unicode.sfd
- - create corresponding sfd mapping like ("01", "Unicode") => long[256]
- - added those subfont to an AVL tree
- - create map entries for cyberb01--cyberbff, each has a pointer to the
- corresponding sfd mapping entry
-
-- extended attributes for map entry:
- - Pid
- - Eid
- - sfd_map
-
-- sfd_mapping:
- - name: sfd name, eg "Unicode"
- - infix, eg "01"
- - mapping: long[256]
-
-- how to find out whether a sfd has been loaded:
- - lookup for any entry with the given sfd name
-
-- functions:
- - load_sfd
- - lookup_subfont
- - extend reading map entries
-
-- when writting ttf:
- - if re-encoded --> process like in case of type1 fonts
- - if PidEid is being used:
- - read cmap tables: store (ttfname, pid, eid)
- - search for used chars
- - use sfd to find the charcodes
- - look into cmap to
+- let' s have a map entry : cyberb @ Unicode @ <cyberbit.ttf PidEid = 3, 1 - actions:
+ -read Unicode.sfd
+ - create corresponding sfd mapping like("01", "Unicode") =
+ >long[256]
+ - added those subfont to an AVL tree -
+ create map entries for cyberb01-- cyberbff,
+ each has a pointer to the corresponding sfd mapping entry -
+ extended attributes for map entry:-Pid - Eid - sfd_map -
+ sfd_mapping:-name:sfd name, eg "Unicode" - infix,
+ eg "01" - mapping:long[256]
+
+-how to find out whether a sfd has been loaded:
+ -lookup for any entry with the given sfd
+ name - functions:-load_sfd -
+ lookup_subfont -
+ extend reading map entries -
+ when writting ttf:-if re - encoded-- >
+ process like in case of type1 fonts -
+ if PidEid is being used:-read cmap
+ tables:store(ttfname, pid, eid)
+ -search for used chars - use sfd to find the charcodes - look into cmap to