Guillaume Ayoub
2a1f09dbb2
Don’t calculate whole sets of unicode codepoints
...
_getUnicodeRangeSets used to calculate sets containing lots of numbers, only to
get intersections between a set and ranges. Creating and manipulating a lot of
big sets requires a lot of memory.
The function has been replaced by _getUnicodeRanges, returning a list of range
starts boundaries and a list of range stops + corresponding bits.
Tests on intersectUnicodeRanges save about 130 MB (!) of RAM, with no
significant speed penalty.
2020-06-05 11:28:18 +02:00
Nikolaus Waxweiler
01328213c7
Remove __future__ imports
2019-08-09 12:20:13 +01:00
schriftgestalt
47f8d06d9a
fix sign of fsType
2019-05-23 17:40:01 +02:00
Cosimo Lupo
28bb992c1f
replace int(round(...)) with round(...)
...
We don't need to cast to int when using the round function from py23,
as this is a backport of python3's built-in round and thus it returns
an int when called with a single argument.
2017-10-22 12:03:52 +01:00
Behdad Esfahbod
dc1a3bdb1d
[OS/2] Don't fail if font does not have cmap table
2017-01-09 01:09:21 -08:00
Masaya Nakamura
08a0d550db
Fix "Private Use (plane 15)" range
...
https://twitter.com/ken_lunde/status/796564061206913024
https://www.microsoft.com/typography/otspec/errata.htm
2016-11-21 11:26:57 +09:00
moyogo
acfb137881
OS2/2: fix checking fsSelection bits matching head.macStyle bits
2016-11-03 11:37:00 +00:00
moyogo
49ac9ba5cb
OS/2: fsSelection bits 0 and 5 should match head.macStyle bits 1 and 0
2016-10-24 10:03:50 +01:00
moyogo
b5002eb5d4
OS/2: if fsSelection bit 6 is on bits then 0 and 5 must be clear
2016-10-22 13:06:30 +01:00
moyogo
c46423df3a
OS/2: warn when fsSelection bits defined in version 4 are on but version < 4
2016-10-22 13:06:30 +01:00
Cosimo Lupo
afd3f6618c
OS/2: 'global' is not needed
...
as no assignment is done, only append.
2016-04-10 23:13:59 +01:00
Behdad Esfahbod
b6a78d5664
Simplify fix for https://github.com/behdad/fonttools/pull/498
2016-02-02 11:52:24 +08:00
Cosimo Lupo
ed29a07670
[O_S_2f_2] skip updateFirstAndLastCharIndex if cmap table class is DefaultTable
...
Fixes https://github.com/behdad/fonttools/issues/497
2016-02-01 18:04:39 +00:00
Cosimo Lupo
e46be4d7d6
[O_S_2f_2] replace print with logger
2016-01-27 19:02:48 +00:00
Cosimo Lupo
20d7849697
[OS/2] add Unicode ranges data from OT spec, plus methods to get/set bits manually, or recalc/prune automatically
2016-01-27 18:37:29 +00:00
Cosimo Lupo
5052950f81
[OS/2] fix misspelled attributes, and keep them using property decorators
2015-06-13 23:19:18 +01:00
Cosimo Lupo
1fbdbca41a
[OS/2] update fsFirstCharIndex and fsLastCharIndex upon compile;
...
add comment to XML output;
use all unicode cmap subtables, but set 0xFFFF as max value for USHORT
2015-05-09 10:17:12 +01:00
Behdad Esfahbod
b30e12ae00
More whitespace
2015-04-26 02:01:01 -04:00
Behdad Esfahbod
bd67253118
Some more whitespace fixes from pep8 tool
2015-04-26 01:59:01 -04:00
Behdad Esfahbod
1ae29591ef
from __future__ import absolute_import
...
Such that our Python 2 is closer to Python 3.
Part of https://github.com/behdad/fonttools/issues/77
2014-01-14 15:07:50 +08:00
Behdad Esfahbod
e388db566b
py23 Use new-style classes
...
Such that we get the same semantics in both Python 2 and 3.
2013-11-28 18:53:30 -05:00
Behdad Esfahbod
32c10eecff
py23 from __future__ import division and adjust divisions
2013-11-28 17:32:42 -05:00
Behdad Esfahbod
30e691edd0
py23 from __future__ import print_function
2013-11-27 17:27:45 -05:00
Behdad Esfahbod
7ed91eca1e
py23 import in all nontrivial source files and unused import cleanup
2013-11-27 15:25:00 -05:00
Behdad Esfahbod
b774f9f684
2to3 --fix=types manual additions
...
Don't know why the tool didn't catch these.
2013-11-27 14:01:44 -05:00
Behdad Esfahbod
ac1b435946
2to3 --fix=idioms
2013-11-27 04:15:34 -05:00
Behdad Esfahbod
ecbe4c87b5
2to3 --fix=numliterals with manual cleanup
2013-11-27 03:37:29 -05:00
Behdad Esfahbod
3a9fd30180
2to3 equivalent to --fix=tuple_params
...
I hope I got this all right...
2013-11-27 03:30:21 -05:00
Behdad Esfahbod
cd5aad92f2
2to3 --fix=raise
2013-11-27 02:42:28 -05:00
Behdad Esfahbod
180ace6a5f
2to3 --fix=ne
2013-11-27 02:40:30 -05:00
Behdad Esfahbod
2b06aaa2a6
2to3 --fix=import
2013-11-27 02:34:11 -05:00
Behdad Esfahbod
862b14722f
Improve OS/2 format 5 compile
2013-11-26 19:33:49 -05:00
Behdad Esfahbod
f1e8c3e8a0
Minor
2013-11-25 08:09:48 -05:00
Behdad Esfahbod
b3c860477c
Remove workaround for buggy OS/2 tables
...
Those fonts should all be gone by now...
2013-11-25 07:27:43 -05:00
Behdad Esfahbod
88a1fabd06
Assert on size of OS/2 version 5
...
As to reject new bogus fonts.
2013-11-25 07:23:51 -05:00
Behdad Esfahbod
170fc9d40f
Use true point sizes in new OS/2 version 5 fields
2013-11-25 07:21:10 -05:00
Olivier Berten
aa37c0aa7d
Support for OS/2 table version 5 as proposed by Microsoft
...
https://github.com/fontforge/fontforge/issues/956
2013-11-19 00:44:38 +01:00
Behdad Esfahbod
8413c108d2
Move sstruct under fontTools.misc
...
Our footprint in the Python module namespace is all under
fontTools now. User code importing sstruct should be updated
to say "from fontTools.misc import sstruct".
2013-09-17 16:59:39 -04:00
pabs3
df16db5bb8
Be more thorough when working around font bugs in the OS/2 table
...
https://bugs.launchpad.net/ubuntu/+source/fonttools/+bug/223884
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@584 4cde692c-a291-49d1-8350-778aa11640f8
2011-02-13 06:25:21 +00:00
jvr
4acb76de2e
added 'support' for OS/2 version 4: can anyone verify this is correct? I can't seem to find an OS/2 v4 spec...
...
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@513 4cde692c-a291-49d1-8350-778aa11640f8
2007-10-22 09:31:02 +00:00
fcoiffie
04985bfdde
Unsigned long data field must be packed with "L" instead of "l" (sometimes an OverflowError can occur)
...
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@501 4cde692c-a291-49d1-8350-778aa11640f8
2006-01-12 14:04:40 +00:00
jvr
7718d95951
whoops, forgot one part os OS/2 version 3 support
...
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@462 4cde692c-a291-49d1-8350-778aa11640f8
2004-09-25 07:19:27 +00:00
jvr
30bcb12dcb
added support for OS/2 table #3
...
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@461 4cde692c-a291-49d1-8350-778aa11640f8
2004-09-24 18:33:19 +00:00
jvr
4170cfd5e9
allow OS/2 tables containing too much data
...
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@378 4cde692c-a291-49d1-8350-778aa11640f8
2003-01-03 20:52:42 +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
jvr
6146b084c2
spec changed: three fields are now unsigned instead of signed,
...
and due to the the wonderful <snort> hungarian notation the field
names changed as well... (So this change is not b/w compatible)
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@167 4cde692c-a291-49d1-8350-778aa11640f8
2001-08-15 07:01:44 +00:00
Just
481fb09495
added workaround for buggy Apple fonts
...
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@122 4cde692c-a291-49d1-8350-778aa11640f8
2000-10-13 13:51:33 +00:00
Just
859967e521
formatting
...
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@111 4cde692c-a291-49d1-8350-778aa11640f8
2000-06-08 18:38:43 +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