Commit Graph

77 Commits

Author SHA1 Message Date
Behdad Esfahbod
8fe4c7405b [hb-old] Add HarfBuzz.old shaper
Choose using shaper name "old".
2012-07-25 11:11:22 -04:00
Behdad Esfahbod
1512a73575 [hb-old] Start adding HarfBuzz-old as a new backend 2012-07-25 11:11:16 -04:00
Jonathan Kew
aa6d849838 [CoreText] Add basic Core Text backend for comparison with our native shaping
Does not attempt to handle clusters in a Uniscribe- or HarfBuzz-compatible way;
just returns the original string indexes that CT maintains. These may even be
out-of-order in the case of reordrant glyphs.
2012-07-24 15:52:32 -04:00
Behdad Esfahbod
11c4ad439e Add -Wcast-align 2012-07-13 11:29:31 -04:00
Behdad Esfahbod
ec5f5f0f8a Don't export inline methods 2012-07-13 10:00:42 -04:00
Behdad Esfahbod
12f5c0a222 Fix check for Intel atomic ops 2012-06-26 11:16:13 -04:00
Behdad Esfahbod
8c0ea7bcb4 Disable introspection again
Until I figure out the build issues.  Sigh...
2012-06-24 13:20:56 -04:00
Behdad Esfahbod
8c5f5e6f5e Minor 2012-06-17 14:58:59 -04:00
Behdad Esfahbod
84d781e54c Flesh out gobject-introspection stuff a bit 2012-06-16 15:21:41 -04:00
Behdad Esfahbod
4282d2f377 Enabled ICU again 2012-06-06 03:42:36 -04:00
Behdad Esfahbod
a00a63b5ef Add macros to check that types are POD 2012-06-06 03:07:01 -04:00
Behdad Esfahbod
04bc1eebe7 Add configure tests for Intel atomic intrinsics 2012-06-05 20:16:56 -04:00
Behdad Esfahbod
68c75b4697 Shuffle 2012-06-05 20:15:30 -04:00
Behdad Esfahbod
cdafe3a7d8 Add gcc intrinsics implementations for atomic and mutex 2012-06-05 16:40:23 -04:00
Behdad Esfahbod
7037291aac Check for atexit() 2012-06-05 14:06:04 -04:00
Behdad Esfahbod
c87b317f0e [util] Add hb-ot-shape-closure tool
Computes all the glyphs that may be generated given a font and
set of Unicode characters.

The order of the Unicode characters is irrelevant.

Sample output:

behdad:util 0$ ./hb-ot-shape-closure Doulos\ SIL\ Regular.ttf f
f f_f

behdad:util 0$ ./hb-ot-shape-closure Doulos\ SIL\ Regular.ttf i
i

behdad:util 0$ ./hb-ot-shape-closure Doulos\ SIL\ Regular.ttf fi
f f_i f_f_i f_f i

behdad:util 0$ ./hb-ot-shape-closure DroidNaskh-Regular.ttf ب
uni0628 uni0628.init uni0628.medi uni0628.fina

behdad:util 0$ ./hb-ot-shape-closure DroidNaskh-Regular.ttf ا
uni0627 uni0627.fina

behdad:util 0$ ./hb-ot-shape-closure DroidNaskh-Regular.ttf با
uni0627 uni0627.fina uni0628 uni0628.init uni0628.medi uni0628.fina

behdad:util 0$ ./hb-ot-shape-closure DroidNaskh-Regular.ttf با --no-glyph-names
5 6 133 134 135 136
2012-05-15 23:53:18 -04:00
Behdad Esfahbod
50f630c17c Remove ioctl checks
Ended up not using terminal size after all.
2012-05-13 13:03:44 +02:00
Behdad Esfahbod
52e7b1424a [util] Make hb-view print out Unicode art if stdout is a terminal 2012-05-13 07:55:00 +02:00
Behdad Esfahbod
f7e8dcfd4f [Indic] Unbreak Devanagari
And this, concludes the HarfBuzz Massala Hackfest.

I like to specially thank Jonathan Kew for doing all the decription and
letting me get commit points.
2012-05-11 22:01:33 +02:00
Behdad Esfahbod
6bd9b479b8 Hide backend-specific shape functions
Also remove shaper_options argument to hb_shape_full().  That was
unused and for "future".  Let it go.

More shaper API coming in preparation for plan/planned API.
2012-04-12 14:53:53 -04:00
Behdad Esfahbod
c62e41b6aa Minor 2012-01-27 02:20:58 -05:00
Behdad Esfahbod
d4de562adf Start adding new shaping test suite together 2012-01-19 15:21:04 -05:00
Behdad Esfahbod
4d6dafd47f Rename test/ to test/api/ 2012-01-19 14:52:02 -05:00
Behdad Esfahbod
3d0ddd1280 Require glib >= 2.16 for the gobject option 2012-01-15 15:55:52 -05:00
Behdad Esfahbod
95ab82a992 Disable gtk-doc macro
We don't have any docs yet.
2012-01-15 14:56:56 -05:00
Behdad Esfahbod
880c1f0e4e Rewrite ICU detection code with in-house macros
At least works for cross-compiling now...
2011-09-19 23:10:22 -04:00
Behdad Esfahbod
8b8b19056d [util] Add hb-shape utility
Like hb-view, but prints out buffer contents.

The output format is kinda cryptic.  Suggestions welcome.
2011-09-19 16:41:17 -04:00
Behdad Esfahbod
0fe2960197 Fix Linux build when io.h is available
Bug 40953 - fail compile git: make[2]: *** [hb_view-options.o] Error 1
2011-09-17 09:59:58 -04:00
Behdad Esfahbod
4451168e5d Fix binary stdin/stdout io in Windows
Make --font-file accept "-" to mean stdin, and have it work
in Windows too!
2011-09-16 00:41:08 -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
46377396ac [configure] Fix graphite bits 2011-08-24 02:12:05 +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
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
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
c214cff55c Start adding gobject-introspection support 2011-08-14 15:17:51 +02:00
Behdad Esfahbod
511a136f0c Move hb-view into util/ 2011-08-09 15:03:00 +02:00
Behdad Esfahbod
02aeca985b [API] Changes to main shape API
hb_shape() now accepts a shaper_options and a shaper_list argument.
Both can be set to NULL to emulate previous API.  And in most situations
they are expected to be set to NULL.

hb_shape() also returns a boolean for now.  If shaper_list is NULL, the
return value can be ignored.

shaper_options is ignored for now, but otherwise it should be a
NULL-terminated list of strings.

shaper_list is a NULL-terminated list of strings.  Currently recognized
strings are "ot" for native OpenType Layout implementation, "uniscribe"
for the Uniscribe backend, and "fallback" for the non-complex backend
(that will be implemented shortly).  The fallback backend never fails.

The env var HB_SHAPER_LIST is also parsed and honored.  It's a
colon-separated list of shaper names.  The fallback shaper is invoked if
none of the env-listed shapers succeed.

New API hb_buffer_guess_properties() added.
2011-08-04 22:38:09 -04:00
Behdad Esfahbod
ecd3b6e4ad More build fixes 2011-08-04 01:57:40 -04:00
Behdad Esfahbod
ddbf4edc5d Minor 2011-08-04 01:38:37 -04:00
Behdad Esfahbod
0fbb2dc831 Add draft experimental Uniscribe backend
Not complete yet, font selection doesn't work.  But hey it shapes!

This is not supposed to be a production backend, more like a testing
backend.
2011-08-03 19:55:04 -04:00
Behdad Esfahbod
0d7d4824b2 Minor 2011-08-03 17:39:24 -04:00
Behdad Esfahbod
e9c2341b13 Don't use icu-config when cross-compiling 2011-08-02 11:40:44 -04:00
Behdad Esfahbod
390dab49b6 Unbreak icu-config results a bit 2011-08-02 11:29:55 -04:00
Behdad Esfahbod
b301478a69 Bug 39763 - autogen.sh should check pkg-config availability
(and revert change have_icu change I mistakenly pushed out)
2011-08-02 11:25:13 -04:00
Behdad Esfahbod
f60271c0c2 Add mingw32 support
With these changes, on Ubuntu I can do:

./configure --host=i586-mingw32msvc  && make
2011-08-02 10:00:55 -04:00
Behdad Esfahbod
595dc63eee Bump version to 0.7.0 to open up for development 2011-05-27 04:14:42 -04:00
Behdad Esfahbod
f245576042 Release 0.6.0. First official tarball release!
There are no API guarantees just yet, but I *expect* that no
incompatible API changes to happen before 1.0.0.

Update NEWS.
2011-05-27 03:48:27 -04:00
Behdad Esfahbod
329c15714b Add libtool versioning
The versioning is automatic.  For now, soname-major is 0.  With
the 1.0.0 release it will jump to 1 and stay there forever.
2011-05-25 16:07:07 -04:00
Behdad Esfahbod
5b21eff8c4 Update README, etc 2011-05-25 15:40:49 -04:00
Behdad Esfahbod
5be7d047f6 Check for mmap()
Apparently there exist systems with mprotect(), but not mmap()?
2011-05-17 15:56:31 -04:00