Commit Graph

2037 Commits

Author SHA1 Message Date
Behdad Esfahbod
f7e2ef74f8 [hb-view] Make print to stdout work in Windows
Apparently there's no equivalent to "/dev/stdout", so write using
stdio to be able to output to stdout.
2011-09-15 18:01:24 -04:00
Behdad Esfahbod
36b10f58cc Minor 2011-09-15 16:29:51 -04:00
Behdad Esfahbod
c4611cb66f Fix test 2011-09-15 00:32:39 -04:00
Behdad Esfahbod
b9b10ad78b [util] Refactor hb-view completely
Now we can use the same code to do other utils...
2011-09-15 00:30:41 -04:00
Behdad Esfahbod
bc4b07b05e More reshuffling 2011-09-08 17:11:01 -04:00
Behdad Esfahbod
516857eb51 [util] Simplify more 2011-09-08 16:50:24 -04:00
Behdad Esfahbod
4f4b114a55 [util] Move code around 2011-09-08 16:49:02 -04:00
Behdad Esfahbod
46d86a73a1 Minor
We now support using -1 for NUL-terminated strings.
2011-09-08 16:43:15 -04:00
Behdad Esfahbod
90e312cb85 [util] Move code around 2011-09-08 16:42:37 -04:00
Behdad Esfahbod
109cb38289 [util] Further refactor option parsing 2011-09-08 16:00:04 -04:00
Behdad Esfahbod
bc187e5ac7 Refine Indic scripts, following Martin Hosken's recommendation 2011-09-08 13:35:17 -04:00
Behdad Esfahbod
738d096a06 Pass through unknown ISO 639-3 language tags to OpenType engine
In hb_ot_tag_from_language(), if first component of an unknown
language is three letters long, use it directly as OpenType language
tag (after case conversion and padding).
2011-09-02 13:31:19 -04:00
Behdad Esfahbod
ea02cbf03c [graphite] Don't preload glyphs
Doesn't seem to be slower.
2011-09-02 12:39:20 -04:00
Behdad Esfahbod
210a06f3d7 Minor 2011-08-26 13:39:49 +02:00
Behdad Esfahbod
4a8d2e379a [graphite2] Chop a few more lines 2011-08-26 09:40:54 +02:00
Behdad Esfahbod
81ec289da7 Minor 2011-08-26 09:33:06 +02:00
Behdad Esfahbod
3380de5abb [graphite] Use buffer->replace_glyphs() 2011-08-26 09:30:49 +02:00
Behdad Esfahbod
9ebe8c0286 Add buffer->replace_glyphs() 2011-08-26 09:29:42 +02:00
Behdad Esfahbod
a5edb1031c Minor 2011-08-26 09:27:13 +02:00
Behdad Esfahbod
290e3ee517 [graphite] Only pass the first part language tag to graphite
Still not sure about:

1) Case.  We pass lowercase for now.  Would be nice if graphite was
uppercase 3letter like OpenType,

2) Padding.  IMO, tag padding is always with spaces, but Martin was
talking about NUL bytes.
2011-08-26 09:25:04 +02:00
Behdad Esfahbod
4c9fe88d30 [API] Make all _from_string() functions take a len parameter
Can be -1 for NUL-terminated string.  This is useful for passing parts
of a larger string to a function without having to copy or modify the
string first.

Affected functions:

	hb_tag_t hb_tag_from_string()
	hb_direction_from_string()
	hb_language_from_string()
	hb_script_from_string()
2011-08-26 09:22:12 +02:00
Behdad Esfahbod
a499bdea5c [graphite2] Bail if grface is NULL 2011-08-25 22:46:21 +02:00
Behdad Esfahbod
3007ffa9e5 Reorder combining-class to better suit Arabic shadda mark-mark positioning
As reported by Khaled on the list:

"After the introduction of canonical reordering of combining marks
(commit 34c22f8), I'm no longer able to do mark/mark substitution or
positioning for mark sequences that involve shadda as a first mark (or
most interesting sequences at least).

"After some digging, it turned out that shadda have a ccc=33 while most
Arabic marks that combine with it have a lower ccc value, which results
in the shadda being reordered after the other mark which,
unsurprisingly, breaks my contextual substitution and mkmk anchors."

See:

http://unicode.org/faq/normalization.html#8
http://unicode.org/faq/normalization.html#9
2011-08-25 09:08:53 +02:00
Behdad Esfahbod
74ef81a0b0 Fix make distcheck 2011-08-24 19:36:50 +02:00
Behdad Esfahbod
24bcdbcc06 Add hb-ot-hmtx-table.hh
Oops!
2011-08-24 19:13:15 +02:00
Behdad Esfahbod
a3bd8a0e18 [graphite] Rewrite properly 2011-08-24 03:25:57 +02:00
Behdad Esfahbod
5072934c35 Minor 2011-08-24 02:24:27 +02:00
Behdad Esfahbod
46377396ac [configure] Fix graphite bits 2011-08-24 02:12:05 +02:00
Behdad Esfahbod
71388b3ee7 [uniscribe] Minor 2011-08-24 02:09:04 +02:00
Behdad Esfahbod
cd2b901027 [graphite] Minor 2011-08-24 01:48:03 +02:00
Behdad Esfahbod
834af3b48a [graphite] Remove hb_graphite2_feature_check()
I don't see how this function can be useful.
2011-08-24 01:45:47 +02:00
Behdad Esfahbod
1f49cf32c9 Add graphite2 integration from Martin Hosken
To be modified, a lot.
2011-08-24 01:32:41 +02:00
Behdad Esfahbod
0e6d36d8a3 Minor 2011-08-24 01:31:29 +02:00
Behdad Esfahbod
efde811325 Add a constructor for hb_prealloced_array_t
Fixes build with MSVC.
2011-08-23 00:04:57 +02:00
Behdad Esfahbod
d75333f166 Add gobject enum support, but disabled for now
need to figure out the naming.  The generated code doesn't have the
right name.
2011-08-19 19:59:24 +02:00
Behdad Esfahbod
7d235d272f Flesh out tt funcs a bit 2011-08-19 19:23:28 +02:00
Behdad Esfahbod
b9415e76d7 [API] Add hb_font_set_funcs_data() 2011-08-19 19:20:30 +02:00
Behdad Esfahbod
e6c09cdf43 Remove the pre_allocate argument from hb_buffer_create()
For two reasons:

1. User can always call hb_buffer_pre_allocate() themselves, and

2. Now we do a pre_alloc in add_utfX anyway, so the total number of
reallocs is limited to a small number (~3) anyway.  This just makes the
API cleaner.
2011-08-19 19:20:26 +02:00
Behdad Esfahbod
187bdeaa6c Do (nothing for) hmtx sanitize 2011-08-17 19:03:06 +02:00
Behdad Esfahbod
d6016e4910 Fix name-table sanitize 2011-08-17 15:00:18 +02:00
Behdad Esfahbod
ae9877dea6 Add hhea-table support 2011-08-17 15:00:10 +02:00
Behdad Esfahbod
7a750ac33e Rename table files from eg maxp-private.hh to maxp-table.hh 2011-08-17 14:19:59 +02:00
Behdad Esfahbod
0b7e4d9f20 [ft] FT_Get_Advance() for advance-width callbacks
Using graphite2's comparerenderer suggests that this makes hb-ft 15
times faster.  No caching layer needed anymore.
2011-08-15 20:41:59 +02:00
Behdad Esfahbod
97796453aa Fix falloffs of the GOption conversion 2011-08-15 19:03:43 +02:00
Behdad Esfahbod
4e9ff1dd6e Pre-allocate buffers when adding string
We do a conservative estimate of the number of characters, but still,
this limits the number of buffer reallocs to a small constant.
2011-08-15 16:21:22 +02:00
Behdad Esfahbod
553bc3de82 Minor 2011-08-15 16:21:06 +02:00
Behdad Esfahbod
254142bb67 [ft] FT_Select_Charmap() when we create face 2011-08-15 16:15:44 +02:00
Behdad Esfahbod
a4cbd03dd1 Apply 'locl' with 'ccmp' in Arabic shaper
According to Peter Constable this is indeed what Uniscribe has been
doing for years.

Mozilla Bug 667166 - wrong shape of letter when it comes at the end of
word in the arabic version of Firefox 5.0
2011-08-15 09:52:05 +02:00
Behdad Esfahbod
c214cff55c Start adding gobject-introspection support 2011-08-14 15:17:51 +02:00
Behdad Esfahbod
9527fb200f Fix missing return 2011-08-13 19:03:48 +02:00