Behdad Esfahbod
0ddecabc6d
[main] Minor improvement to output
11 years ago
Behdad Esfahbod
6faff8e413
Add static storage classifier to inline functions
...
Before we were just relying on the compiler inlining them and not
leaving a trace in our public API. Try to fix. Hopefully not
breaking anyone's build.
11 years ago
Behdad Esfahbod
9c9411839b
[tibetan] Reorder PADMA sign to occur after other below marks
...
Based on suggestion from Andrew Glass.
Test: U+0F40,0FC6,0F83
11 years ago
Behdad Esfahbod
b082ef373c
Typo
11 years ago
Behdad Esfahbod
828e109c7a
[indic] Fix-up zero-context matching
...
commit b5a0f69e47
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Thu Oct 17 18:04:23 2013 +0200
[indic] Pass zero-context=false to would_substitute for newer scripts
For scripts without an old/new spec distinction, use zero-context=false.
This changes behavior in Sinhala / Khmer, but doesn't seem to regress.
This will be useful and used in Javanese.
The *intention* was to change zero-context from true to false for scripts that
don't have old-vs-new specs. However, checking the code, looks like we
essentially change zero-context to always be true; ie. we only changed things
for old-spec, and we broke them. That's what causes this bug:
https://bugs.freedesktop.org/show_bug.cgi?id=76705
The root of the bug is here:
/* Use zero-context would_substitute() matching for new-spec of the main
* Indic scripts, but not for old-spec or scripts with one spec only. */
bool zero_context = indic_plan->config->has_old_spec || !indic_plan->is_old_spec;
Note that is_old_spec itself is:
indic_plan->is_old_spec = indic_plan->config->has_old_spec && ((plan->map.chosen_script[0] & 0x000000FF) != '2');
It's easy to show that zero_context is now always true. What we really meant was:
bool zero_context = indic_plan->config->has_old_spec && !indic_plan->is_old_spec;
Ie, "&&" instead of "||". We made this change supposedly to make Javanese
work. But apparently we got it working regardless! So I'm going to fix this
to only change the logic for old-spec and not touch other cases.
11 years ago
Behdad Esfahbod
66c6a48b6c
Add HB_NO_MERGE_CLUSTERS
...
Disables any cluster-merging. Added for testing purposes while
we investigate what kind of API to add for this.
11 years ago
Behdad Esfahbod
5fd996c4a4
Further adjust check-defs and check-symbols for mipsel
...
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=74491
11 years ago
Behdad Esfahbod
75ec6d0bc5
Tighten up check-static-inits.sh check
...
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=74490
11 years ago
Behdad Esfahbod
110ec0714a
Typo
11 years ago
Behdad Esfahbod
0682ddd05c
[indic] Support U+17DD KHMER SIGN ATTHACAN
...
As requested by Martin Hosken on the list.
11 years ago
Primiano Tucci
05870ed62e
Use __aarch64__ for 64-bit ARM detection, not __arm64__
...
Many GCC versions don't define __arm64__
11 years ago
Behdad Esfahbod
04d894e897
Minor
11 years ago
Behdad Esfahbod
903648437c
Start fleshing out builtin font functions
11 years ago
Behdad Esfahbod
343a0e4e74
Add "make built-sources"
11 years ago
Konstantin Ritt
b96af03c20
Fix build with --coretext on iOS
...
On iOS CoreText and CoreGraphics are stand-alone frameworks
11 years ago
Behdad Esfahbod
09732cc669
Remove dead warning
11 years ago
Behdad Esfahbod
a949cd329e
Don't use "register" storage class specifier
...
Fixes warnings.
https://bugzilla.mozilla.org/show_bug.cgi?id=984081
11 years ago
jfkthame
0082dbeae6
wrap definition of free_langs() with HAVE_ATEXIT
...
...to avoid an unused function warning; see mozilla bug https://bugzilla.mozilla.org/show_bug.cgi?id=984081 .
11 years ago
Behdad Esfahbod
a9e25e90a4
[coretext] Add hb_coretext_face_create()
...
Not tested.
11 years ago
Behdad Esfahbod
c79865f90f
[coretext] Add coretext_aat shaper
...
This is a higher-priority shaper than default shaper ("ot"), but
only picks up fonts that have AAT "morx"/"mort" table.
Note that for this to work the font face's get_table() implementation
should know how to return the full font blob.
Based on patch from Konstantin Ritt.
11 years ago
Behdad Esfahbod
af1aa362ca
If HAVE_ICU_BUILTIN is defined, use hb-icu Unicode callbacks
...
Useful for Android / Chrome / etc when ICU is built in the same
library as harfbuzz itself.
11 years ago
Behdad Esfahbod
853daf857f
Remove old cruft
11 years ago
Behdad Esfahbod
bb8ffb581b
Use AM_MISSING_PROG for ragel and git
11 years ago
Behdad Esfahbod
a82165248c
Only do fallback Hebrew composition if no GPOS 'mark' available
...
Apparently some modern fonts have proper GPOS mark positioning
tables, but undesirable precomposed forms! See thread
"Hebrew composition to presentation forms" and:
http://tex.stackexchange.com/questions/156775/having-trouble-with-vowel-positioning-in-ezra-sil-xelatex
Test case: U+fb1d,05d9,05b4
11 years ago
Werner Lemberg
db068d81cd
typo in ucdn's Makefile.am
11 years ago
Behdad Esfahbod
fbb2847f54
Improve MemoryBarrier() implementation
...
See thread "[HarfBuzz] compilation error of 0.9.26 with MinGW"
started by Werner.
11 years ago
Jonathan Kew
7691a154e5
Ensure hb_script_t can safely hold any hb_tag_t value it's given.
...
Fixes https://github.com/behdad/harfbuzz/pull/21
11 years ago
Behdad Esfahbod
c29993a181
[coretext] Handle surrogate pairs when generating notdef glyphs
...
Fixes github.com/behdad/harfbuzz/pull/19
11 years ago
Behdad Esfahbod
748b2782e4
[coretext] Minor optimization
11 years ago
Konstantin Ritt
24e6b11f12
Fix double destruction in case of OOM
11 years ago
Konstantin Ritt
083225916a
Micro optimizations
11 years ago
Konstantin Ritt
c9522de233
Make it possible to disable the fallback shaper at configure time
...
The OT shaper supersedes the fallback shaper in every case
and the latter become an extra weight for 99.9% of users.
11 years ago
Behdad Esfahbod
6775da3a7c
Fix clang warning 'private field 'xxx' is not used
...
Fixes https://github.com/behdad/harfbuzz/pull/16
11 years ago
Behdad Esfahbod
62299826f4
Fix typo in _hb_buffer_serialize_glyphs_text()
...
Fixes https://github.com/behdad/harfbuzz/pull/17
11 years ago
Behdad Esfahbod
ae23c24c32
[arabic] Disable 'cswh' by default
...
I believe Windows 8 disables it, and spec update dated
Jan 2014 also clearly says it's disabled by default:
http://www.microsoft.com/typography/OpenTypeDev/arabic/intro.htm#features
11 years ago
Behdad Esfahbod
08cf5d75ef
[ot] Don't try to compose if normalization is off
11 years ago
Jonathan Kew
62cb28dfc6
fixup for 64-bit windows build
11 years ago
Jonathan Kew
83d7e7915a
[hangul] Fix ordering of dotted circle with Hangul tone mark (reported by Dohyun Kim).
11 years ago
Jonathan Kew
deef186265
[hangul] Don't force zero-width for marks - this is not wanted for the Jamo Filler glyphs.
11 years ago
Jonathan Kew
391934db0a
[unicode] Exclude the Jamo Filler characters from Default_Ignorable, as some fonts want these to be visible/spacing glyphs.
11 years ago
Jonathan Kew
7244b3fc3b
[hangul] Reorder Hangul tone mark to beginning of syllable, unless font implements it using a zero-width glyph.
11 years ago
Jonathan Kew
103436838d
[hangul] Apply the appropriate *jmo features to decomposed syllables, including Old Hangul sequences that don't have Unicode compositions. Merge clusters in decomposed syllables.
11 years ago
Behdad Esfahbod
8fc1f7fe74
[ot/hangul] Don't decompose Hangul even when combining marks present
...
As discussed on
https://github.com/behdad/harfbuzz/pull/10#issuecomment-31442030
11 years ago
Behdad Esfahbod
64426ec73a
[ot] Simplify composing
...
Not tested. Ouch.
11 years ago
Behdad Esfahbod
8de20b1e8a
Add font->has_glyph()
11 years ago
Behdad Esfahbod
f6298e55ae
[fallback] Minor
11 years ago
Behdad Esfahbod
29ea403d67
[hangul] Fix decomposition logic
...
Seems to be working now.
11 years ago
Behdad Esfahbod
bdb20dafc3
[hangul] Fix decomposition
...
Part of https://github.com/behdad/harfbuzz/pull/10
11 years ago
Behdad Esfahbod
32478656ce
[hangul] Tighten up character categories
...
I had tried to expand to fill the blocks, but that sounds wrong in
retrospect.
11 years ago
Behdad Esfahbod
f14bb7de63
[ot] Separate out hebrew and tibetan shapers from default
...
Now default shaper is truly no-op.
11 years ago