25 Commits

Author SHA1 Message Date
Behdad Esfahbod
0ba7aa7ab5 Make __cmp__() functions stable 2013-10-28 12:07:15 +01:00
Roozbeh Pournader
51a17826be Add support for cmap format 13. 2013-10-09 15:55:07 -07:00
Behdad Esfahbod
96b321c8ae Fix comparison to arbitrary objects 2013-08-19 14:17:11 -04:00
Behdad Esfahbod
8da8242d61 Port cmap table from numpy to array module 2013-08-19 14:17:10 -04:00
pabs3
17012aabbb Fix some broken assertions in the cmap format 1 code.
Shame on Gentoo for not forwarding the patch upstream.

git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@577 4cde692c-a291-49d1-8350-778aa11640f8
2009-11-08 15:55:53 +00:00
jvr
0cb8a08d89 cmap format 1 support, contributed by rroberts
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@554 4cde692c-a291-49d1-8350-778aa11640f8
2008-05-16 15:07:09 +00:00
jvr
1b7d54fedc converted usage of Numeric to numpy
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@537 4cde692c-a291-49d1-8350-778aa11640f8
2008-03-04 15:25:27 +00:00
jvr
9be387c94f Use sys.byteorder, getting rid of ttLib.endian
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@527 4cde692c-a291-49d1-8350-778aa11640f8
2008-03-01 11:43:01 +00:00
jvr
2db352c748 - skip subtables of length zero
- minor tweak in cmap 4 logic
contributed by rroberts


git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@523 4cde692c-a291-49d1-8350-778aa11640f8
2008-02-29 14:43:49 +00:00
jvr
d299b55d14 patches from rroberts:
# 1) Switched to using Numeric module arrays rather than array modules arrays,
#  because of a memory leak in array.array when handling elements > 1 byte.
# 2) speed optimizations:
# -  For loops are collapsed when possible
# - the data for a subtable is parsed only if a mapping value is requested
# - if two subtables share the same data offset, then on
decompilation, they will
# share the same cmap dict, and not get decompiled twice. Same for compiling.
# - as before, two tables with the same contents will get compiled to a single
# data block in the font.
# 3) added  (self.platformID, self.platEncID) == (3, 10) to the list
of subtables that
# get Unicode comments.
# 4) allow item reference by GID as well as by name. I did this when
experimenting to see if using GID references only would speed the
compile; it didn't but it seemed useful enough to leave in.
# 5) Fixed compile to/from XML: for cmap type unknown ( aka cmap
format 10, in practice.)


git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@510 4cde692c-a291-49d1-8350-778aa11640f8
2006-10-21 13:54:30 +00:00
jvr
427f9802bc make sure that a cmap subtable instance always has a language attr, so __cmp__ can't fail
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@473 4cde692c-a291-49d1-8350-778aa11640f8
2004-09-26 18:32:50 +00:00
jvr
a84b28d934 - Refactored XML writing, removed lots of code duplicaiton
- Only output unicode names as comments if we're in fact dealing with
  a unicode cmap subtable (and this is -- in theory -- independent of
  cmap format)


git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@468 4cde692c-a291-49d1-8350-778aa11640f8
2004-09-25 09:06:58 +00:00
jvr
0cd79a5642 Patch #845571 from Anthony Fok:
- better exception msg in loca table
- renamed "version" to "language" in cmap
- made cmap 12 work (untested by me)


git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@463 4cde692c-a291-49d1-8350-778aa11640f8
2004-09-25 07:30:47 +00:00
jvr
3430abf7ab whitespace nits
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@435 4cde692c-a291-49d1-8350-778aa11640f8
2003-08-28 18:14:33 +00:00
jvr
bafa66e665 Another patch from rroberts. He writes:
"""It adds full support for cmap format 2, which is what
the Adobe CJK fonts use for the Mac cmap subtable."""


git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@434 4cde692c-a291-49d1-8350-778aa11640f8
2003-08-28 18:04:23 +00:00
jvr
924e4e274e cmap format 12 support, donated by rroberts: thanks!
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@390 4cde692c-a291-49d1-8350-778aa11640f8
2003-02-08 10:45:23 +00:00
jvr
1f8a4bb02a clarified cmap4 optimization strategy
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@286 4cde692c-a291-49d1-8350-778aa11640f8
2002-07-23 07:51:23 +00:00
jvr
542b9510e6 Optimized cmap format 4 compile function: now creates more compact binary. The code is horrible, but then again cmap format 4 is beyond horrible...
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@281 4cde692c-a291-49d1-8350-778aa11640f8
2002-07-20 21:57:26 +00:00
jvr
ea9dfa9fb2 renamed several items to use camelCase
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@220 4cde692c-a291-49d1-8350-778aa11640f8
2002-05-12 17:14:50 +00:00
jvr
22dcb9e6f9 a few cosmetic/style changes
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@206 4cde692c-a291-49d1-8350-778aa11640f8
2002-05-10 19:03:34 +00:00
Just
ae180248fd workaround for currupt (?) cmap subtable
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@128 4cde692c-a291-49d1-8350-778aa11640f8
2001-01-13 13:48:30 +00:00
Just
43fa4be948 added workaround for Py 1.5.1 compatibility
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@121 4cde692c-a291-49d1-8350-778aa11640f8
2000-10-11 18:04:03 +00:00
Just
f6b1563e0d removed an assert that was too strict
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@116 4cde692c-a291-49d1-8350-778aa11640f8
2000-08-23 12:33:14 +00:00
Just
1b850986ef Fixed cmap optimizer bug: needs more testing!
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@109 4cde692c-a291-49d1-8350-778aa11640f8
2000-06-07 18:25:44 +00:00
Just
7842e56b97 Created a new library directory called "FreeLib". All OpenSource RFMKII components will reside there, fontTools being the flagship.
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@2 4cde692c-a291-49d1-8350-778aa11640f8
1999-12-16 21:34:53 +00:00