Commit Graph

530 Commits

Author SHA1 Message Date
Evgeniy Reizner b79ceac3c6 Prefer UINT_MAX instead of uint overflow.
Also, prefer HB_FEATURE_GLOBAL_START and HB_FEATURE_GLOBAL_END.
2019-12-15 11:46:05 -08:00
Ebrahim Byagowi 6f76c325e5
[test] Update 10.15 results
Turned out only SFNS, which wasn't available in 10.14 anyway, needed an update
See https://crbug.com/1005969#c37 also
2019-12-10 21:43:11 +03:30
Ebrahim Byagowi 2241a676ba
[test] Add macOS 10.15 related fonts
breaks the test and 10.15 bot, will add the fix in next commit, also adds a broken test for f47cbade1
2019-12-10 19:50:34 +03:30
Behdad Esfahbod b1167d19e9 Fix! 2019-12-05 15:46:58 +00:00
Behdad Esfahbod 5ff410b493 Add files, oops 2019-12-05 15:37:56 +00:00
Behdad Esfahbod 2dc20e632e Implement fallback vertical shaping from Firefox
Fixes https://github.com/harfbuzz/harfbuzz/issues/355
2019-12-05 15:28:42 +00:00
Ebrahim Byagowi d59d89b281
[test] Rebase 10.14 trak related test 2019-08-20 13:07:17 +04:30
Ebrahim Byagowi 37de38adea
Merge branch 'master' into remove-coretext-96dpi-assumption 2019-08-20 12:59:33 +04:30
Khaled Hosny da5118da77 [ot-shape] Enable abvm/blwm features by default
Core Text seems to apply them to Latin text, but Uniscribe doesn’t.

See https://github.com/harfbuzz/harfbuzz/pull/1908#issuecomment-521819343
2019-08-16 02:17:32 +02:00
Khaled Hosny 2164bd6f29
[ot-shape] Enable dist feature by default (#1908)
Fixes https://github.com/harfbuzz/harfbuzz/issues/1907
2019-08-16 00:28:41 +02:00
Khaled Hosny c9796d15e1 Fix sbix glyph extents
* The ‘height’ needs to be negated since the API returns “distance from
  top to bottom side”.
* Similarly, the ‘y_offset‘ needs to be added to the height to get the
  ‘y_bearing’, since sbix’s offset is “the point in the glyph relative
  to its lower-left corner which corresponds to the origin” while
  ‘y_bearing’ is the “top side of glyph from origin”.

With these changes the sbix glyph metrics return values similar to other
tables, as they were otherwise unusable.
2019-07-22 05:42:34 +02:00
David Corbett d64fb9db52 [use] Allow U+1A60 TAI THAM SIGN SAKOT after vowel 2019-05-27 13:14:03 -04:00
David Corbett 125c45ed36 Convert Consonant_Initial_Postfixed to CONS_MED 2019-05-15 14:34:25 -07:00
David Corbett 99ca956c13 Fix record-test.sh on machines without sha1sum 2019-05-15 14:34:25 -07:00
Behdad Esfahbod 21bb80ebf2 [indic] Add back medial-consonant to grammar
Fixes https://github.com/harfbuzz/harfbuzz/issues/1592
2019-03-28 20:50:04 -07:00
Behdad Esfahbod 5ab6de7a6f [khmer] Add trailing Coeng to syllable grammar
Fixes https://github.com/harfbuzz/harfbuzz/issues/1541
2019-03-28 20:23:12 -07:00
Ebrahim Byagowi 8b6eb6cf46
Add a macOS 10.14.3 fonts tests (#1608) 2019-03-08 01:33:41 +03:30
Behdad Esfahbod a9321cb5f8 Fix mac test 2019-01-25 16:11:45 +01:00
Behdad Esfahbod 06358ae974 [AAT] Add test for recent Ligature stack fix, using Zapfino on Mac 2019-01-25 15:11:47 +01:00
Behdad Esfahbod 00f06d1aa6 Fix test 2019-01-24 16:11:05 +01:00
Behdad Esfahbod 9f31417733 Form cluster for Emoji sub-region tag sequences
Fixes https://github.com/harfbuzz/harfbuzz/issues/1556
2019-01-24 16:08:33 +01:00
Behdad Esfahbod 5034f8f2ab Fix macos tests with previous commit 2019-01-24 12:50:38 +01:00
Behdad Esfahbod 3ecda71041 Adjust mark offsets when zeroing from fallback mark positioning code
Adjust tests.

Fixes https://github.com/harfbuzz/harfbuzz/issues/1532
2019-01-24 12:28:24 +01:00
Behdad Esfahbod cbe0ed117a [AAT] Re-enable tests MORX-31 and MORX-41 2019-01-23 20:45:18 +01:00
Behdad Esfahbod 410731d3fb [test/text-rendering-tests] Update from upstream 2019-01-23 20:31:06 +01:00
Tor Arne Vestbø f401f85a5a Remove assumption about Core Text working in 96 DPI
Core Text doesn't actually have a concept of DPI internally, as it
doesn't rasterize anything by itself, it just generates vector paths
that get passed along to Core Graphics.

In practice this means Core Text operates in the classical macOS
logical DPI of 72, with one typographic point corresponding to one
point in the Core Graphics coordinate system, which for a normal
bitmap context then corresponds to one pixel -- or two pixels for
a "retina" context with a 2x scale transform.

Scaling the font point sizes given to HarfBuzz to an assumed DPI
of 96 is problematic with this in mind, as fonts with optical
features such as 'trak' tables for tracking, or color glyphs,
will then base the metrics off of the wrong point size compared
to what the client asked for.

This in turn causes mismatches between the metrics of the shaped
text and the actual rasterization, which doesn't include the 72
to 96 DPI scaling.

If a 96 DPI is needed, such as on the Web, the scaling should be
done outside of HarfBuzz, allowing the client to keep the DPI of
the shaping in sync with the rasterization.

The recommended way to do that is by scaling the font point size,
not by applying a transform to the target Core Graphics context,
to let Core Text choose the right optical features of the target
point size, as described in WWDC 2015 session 804:

  https://developer.apple.com/videos/play/wwdc2015/804/
2019-01-15 13:26:35 +01:00
Behdad Esfahbod 9844c880e2 Minor 2018-12-11 17:28:04 -05:00
David Corbett b225593d6b Correct REPLACEMENT CHARACTER's code point to FFFD (#1471) 2018-12-11 13:19:17 -05:00
Ebrahim Byagowi bf738ba3ba
[test][aat] Remove extra --shaper ot
As run-tests.py already adds it
2018-11-30 00:06:40 +03:30
Behdad Esfahbod 1a182e97ee [test/text-rendering-tests] Update from upstream 2018-11-29 12:39:52 -05:00
Ebrahim Byagowi e0307de818
[test][aat.kern] More (#1427) 2018-11-29 11:36:05 +03:30
Ebrahim Byagowi 7b78d2233d
[test][aat] Update expectency
It is not visually noticeable but apparently affected by kern format2 correct implementation.
I should've checked CoreText result which can't as CircleCI outage.
2018-11-29 00:55:05 +03:30
Ebrahim Byagowi 5155067e10
[test] Add test for format2 kern (#1423) 2018-11-29 00:07:00 +03:30
Ebrahim Byagowi 19863c8059
[test][aat] Add a test and make macOS runners faster (#1422) 2018-11-28 20:28:42 +03:30
Ebrahim Byagowi 97eaedca5d
[test][aat] Enable Tamil MN test (#1414) 2018-11-26 16:58:58 +03:30
Ebrahim Byagowi 0e3a48e542
[test][aat] fix 10.13.6 Helvetica expectation 2018-11-25 13:37:23 +03:30
Ebrahim Byagowi cbc541b426
[aat] Add m grave test (#1412) 2018-11-25 12:50:30 +03:30
Ebrahim Byagowi fa26ad0f48
[aat] Fix macos expectation 2018-11-25 11:25:17 +03:30
Behdad Esfahbod 264c4a539c [test] Reorder test suites
aots is less interesting.  Run text-rendering-tests before aots.
2018-11-25 01:16:01 -05:00
Behdad Esfahbod 248ce22857 [tests] Minor 2018-11-24 22:01:06 -05:00
Ebrahim Byagowi e6877e28cd [test] Add the missed aots fonts 2018-11-25 02:14:41 +03:30
Ebrahim Byagowi 825ea5a460 [test] Merge 10.12.6 and 10.13.6 tests, update to Apple Chancery fix 2018-11-25 02:14:41 +03:30
Ebrahim Byagowi b518e5af9f
Add 10.13.6 aat fonts tests and bot (#1409) 2018-11-25 01:39:00 +03:30
Behdad Esfahbod b7f7950e8f [aat] Add test for recent regression 2018-11-24 15:56:17 -05:00
Behdad Esfahbod ea9512e61a [tests] Redo test runner logging a bit 2018-11-24 15:49:33 -05:00
Behdad Esfahbod 5020affc38 [tests] Minor 2018-11-24 15:42:11 -05:00
Behdad Esfahbod ee3a3e10d4 [tests/shaping] Allow comments in test files
Line should start with "# ".
2018-11-24 15:40:50 -05:00
Behdad Esfahbod ed900ee9af [tests] Rename 2018-11-24 15:22:09 -05:00
Ebrahim Byagowi 3cc14e78ae
[test] Enable more of aots tests (#1408)
The ones commented out in this change should've be passed :/
a closer look is needed.
2018-11-24 20:49:21 +03:30
Ebrahim Byagowi 24887d1115
Add Adobe AOTS tests (#1395)
Annotated OpenType Specification or aots, https://github.com/adobe-type-tools/aots
provides a set of tests for OpenType specification, this change add those tests in addition
to modified version of their HarfBuzz test runner for generating harfbuzz project specific tests.
2018-11-24 20:07:24 +03:30