Commit Graph

62 Commits

Author SHA1 Message Date
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
Behdad Esfahbod 0c2ec1d78b [test] Always initialize gthread such that our mutex() stuff is tested
Now the test/object test deadlocks as expected.  Fix coming.
2011-05-10 19:11:52 -04:00
Behdad Esfahbod 71cef14ac3 Add -Bsymbolic-functions to linker flags 2011-05-06 19:30:59 -04:00
Behdad Esfahbod c78f448558 [API] Add version macros and functions
Step version up to 0.5.0.

Also, fix to pass "make distcheck"
2011-05-05 21:31:04 -04:00
Behdad Esfahbod 9ff819f657 Add disable-static libtool flag
No one who builds harfbuzz static uses the autotools build system to do it.
2011-05-05 19:47:59 -04:00
Behdad Esfahbod 7ca7571ef9 Remove win32-dll libtool flag
Since we're not win32-dll clean the way libtool docs define it.
2011-05-05 19:47:12 -04:00
Behdad Esfahbod 174e3fe89b Add AC_CANONICAL_HOST 2011-05-05 19:37:53 -04:00
Behdad Esfahbod e6a5b88c01 Fix build with older glib 2011-05-05 16:24:42 -04:00
Behdad Esfahbod 5b7f38979f GNOME Bug 612402 - (hb-arm) HarfBuzz compilation fix for arm
With gcc on arm, request 8-bit structure alignment.
2011-04-27 15:10:12 -04:00
Behdad Esfahbod bbdeff5964 Add test directory 2011-04-07 16:05:07 -04:00
Behdad Esfahbod 5353bf439c Add initial hb-view tool
Currently doesn't handle script or direction.
2011-02-22 18:06:19 -05:00
Behdad Esfahbod a07874300a Don't use the m4/ dir
We just require people to have libtool, pkg-config, etc installed
when running autogen.sh
2011-01-10 02:27:49 -05:00
Javier Jardón 2abe1264a5 Bug 31174 - Update autotools configuration 2011-01-09 22:18:53 -05:00
Behdad Esfahbod 76691f0240 Fix ICU detection 2011-01-06 14:16:59 -05:00
Behdad Esfahbod 756f794a1f Remove Graphite backend
It was unmaintained and the code has to be replaced to use the new
grphite-ng code base.
2010-12-26 20:52:40 -05:00
Behdad Esfahbod d1f1707adc Bug 31965 - some GNU/Linux distributions lack icu.pc but have icu-config
Patch from suzuki toshiya.
2010-11-30 00:57:15 -05:00