Commit Graph

14830 Commits

Author SHA1 Message Date
Garret Rieger 1840b02e6a [subset] Don't gate access to the table repacker.
Any table with an object graph should repack correctly.
2022-12-19 17:57:33 -07:00
Behdad Esfahbod 03a1685693 [VarC] Change representation of scale from 4.12 to 6.10
Fixes https://github.com/harfbuzz/boring-expansion-spec/issues/76
2022-12-19 17:12:09 -07:00
Garret Rieger 1a51f71afd [subset] don't segfault when --help-all is specified w/ instancing options. 2022-12-19 16:02:05 -07:00
Matthias Clasen c292e577ff Fix a typo 2022-12-19 20:04:36 +02:00
Matthias Clasen b795246fff [draw] Clarify the docs
Disambiguate the origin of draw_data and user_data,
this had me confused a few times.

Fixes: https://github.com/harfbuzz/harfbuzz/issues/3955
2022-12-19 20:04:36 +02:00
Matthias Clasen eddb408f9c [draw] Small doc fix 2022-12-19 20:03:57 +02:00
Khaled Hosny bc4c290b75 [doc] Workaround gtk-doc limitation with HB_DEPRECATED_FOR
See https://github.com/harfbuzz/harfbuzz/issues/3957#issuecomment-1356890525
2022-12-19 00:59:50 +02:00
Khaled Hosny 734e5f7cf4 [doc] Add HB_DEPRECATED_FOR to --ignore-decorators
Does not make a difference, though.
2022-12-19 00:15:04 +02:00
Khaled Hosny f9e1192d58 [ot-tag] Document two deprecated symbols
See https://github.com/harfbuzz/harfbuzz/issues/3957
2022-12-18 23:58:36 +02:00
Khaled Hosny 947e01a7c1 [subset] Suppress gtk-doc warning 2022-12-18 23:40:01 +02:00
Khaled Hosny 9ca8e7564b Revert "[circleci] Make dist tarball with meson"
This reverts commit 80157cc60b.

That was a thinko, meson generated dist tarballs are not usable for
autotools build as they will miss generated autotools files.
2022-12-18 17:44:41 +02:00
Nirbheek Chauhan c7dd63d1a0 meson: Provide binaries when built as a subproject 2022-12-18 08:28:55 +02:00
Nirbheek Chauhan 7be06f6377 meson: Override dependencies to improve usage as a subproject
With this change, harfbuzz can be consumed as a subproject without
making any changes to the build files of a project. All you need to do
is provide a wrap file with a `[provide]` section:

https://mesonbuild.com/Wrap-dependency-system-manual.html#provide-section

This is also necessary because otherwise projects need to hard-code
the subproject name, which might be `harfbuzz` when using `wrap-git` or
`harfbuzz-6.0.0` when using `wrap-file` (to build from a release
tarball). This can cause conflicts between different subprojects that
consume harfbuzz differently.

Other projects like glib, cairo, pango, etc already do this.
2022-12-18 08:28:55 +02:00
Behdad Esfahbod 206957aee4 [COLR] Change recursion limit back to 128 2022-12-17 08:57:56 -07:00
Khaled Hosny 31ba950b71 [circleci] Don’t run tests in dist 2022-12-17 16:24:20 +02:00
Khaled Hosny f22e42d737 [circleci] Remove cruft 2022-12-17 16:24:20 +02:00
Khaled Hosny 21e866b8b5 [circleci] Unify meson commands a bit 2022-12-17 16:24:20 +02:00
Khaled Hosny 80157cc60b [circleci] Make dist tarball with meson 2022-12-17 16:24:20 +02:00
Khaled Hosny afcae83a06 6.0.0 2022-12-16 23:35:26 +02:00
Khaled Hosny 27ff90d7b8 [meson] Update freetype2 wrap
Use the one from WrapDB and add zlib wrap because current FreeType
tarball misses it.
2022-12-16 22:29:10 +02:00
Matthias Clasen a98c6fdd92 Mark an argument as unused 2022-12-16 13:23:01 -07:00
Matthias Clasen 601d3806c9 COLRv1: Revamp extents variation
Try to do this a cleaner way.
2022-12-16 13:23:01 -07:00
Khaled Hosny 318df8a706 [meson] Update google-benchmark wrap
Use the one from WrapDB.
2022-12-16 22:00:08 +02:00
Khaled Hosny bd7c458028 [meson] Update glib wrap
Use the one from WrapDB.
2022-12-16 22:00:08 +02:00
Behdad Esfahbod 51a17201a7 [open-type] In to_float() take offset as float 2022-12-16 12:28:50 -07:00
Khaled Hosny 9e3bfd9aa1 [ci] Build Windows binaries without cairo-ft 2022-12-16 21:10:15 +02:00
Khaled Hosny 6add69a6ec [hb-view] Allow building without cairo-ft
Fixes https://github.com/harfbuzz/harfbuzz/issues/3925
2022-12-16 21:10:15 +02:00
Behdad Esfahbod f252cf80e1 [open-type] Allow passing an offset to to_float() 2022-12-16 12:03:51 -07:00
Behdad Esfahbod 6ae35365f8 Fix build 2022-12-16 11:43:38 -07:00
Behdad Esfahbod e957391efe [colr] Add NoVariable::varIdxBase 2022-12-16 11:33:04 -07:00
Behdad Esfahbod e06de98c36 [var-common] Make VarInstancer take an offset 2022-12-16 11:31:00 -07:00
Behdad Esfahbod 251f9f6213 [open-type] Add VarIdx::add() 2022-12-16 11:29:51 -07:00
Behdad Esfahbod bf2ae3f0ca [open-type] Add static_assert for NO_VARIATION 2022-12-16 11:26:24 -07:00
Matthias Clasen d4496e6405 COLRv1: Apply variations correctly
The variations are for xMin, yMin, xMAx, yMax.
Apply them before converting to extents..
2022-12-16 11:14:42 -07:00
Matthias Clasen 193e0e3e8e Cosmetic: typo fix 2022-12-14 22:34:06 -07:00
Garret Rieger b5acde43ed [subset] check pending/subsetted tag sets for alloc failure. 2022-12-13 15:31:40 -07:00
Jordan Petridis 79285a9983
VarC: cast ints (#3934)
msvc is rightfully complaining that the types on the sides of
the ternary are not matching:

```
C:\pango\subprojects\harfbuzz\src\OT\glyf\VarCompositeGlyph.hh(317): error C2446: ':': no conversion from 'const OT::HBUINT16' to 'const OT::HBUINT8'
```
2022-12-13 11:14:20 -07:00
Behdad Esfahbod 300d82ce2e Fix compiler warning 2022-12-13 11:01:03 -07:00
Behdad Esfahbod 199345eb29
Merge pull request #3928 from harfbuzz/colrv1-extents
COLRv1: use ClipBoxes for extents
2022-12-12 18:37:10 -07:00
Behdad Esfahbod bd7cb384cf [VarC] Remove unused variable 2022-12-12 14:10:48 -07:00
Behdad Esfahbod 51d3ce39ba
Merge pull request #3933 from googlefonts/cff
[subset] Fix infinite loop when instancing CFF fonts
2022-12-12 14:07:44 -07:00
Behdad Esfahbod 1b278c7658 [VarC] Update for new format
https://github.com/harfbuzz/boring-expansion-spec/issues/71
2022-12-12 13:57:05 -07:00
Garret Rieger 64cbe8b962 [subset] Also note that only full instancing works. 2022-12-12 20:41:40 +00:00
Garret Rieger 0da59f86a8 [subset] note that CFF/CFF2 instancing is not yet supported. 2022-12-12 20:26:11 +00:00
Garret Rieger 9fbe52b88d [subset] enable instancing tests by default. 2022-12-12 20:24:24 +00:00
Garret Rieger 38a9628885 [subset] simplify handling of table subsetting depedencies.
Allow the dependency checker to see all tables that will be subset. Use this to fix the HMTX/VMTX dep check against glyf. Don't delay hmtx/vmtx subsetting if no glyf table is present.
2022-12-12 20:13:17 +00:00
Garret Rieger 0853e5d9d7 [subset] if table dependencies can't be resolved fail the subset.
Avoids getting stuck in an infinite loop.
2022-12-12 19:43:31 +00:00
Behdad Esfahbod 6bb478eeeb [VarC] Clamp after addition 2022-12-12 11:39:06 -07:00
Behdad Esfahbod 80a5011eb6 [VarC] Fix coord setting
Those are additive.
2022-12-12 11:37:59 -07:00
Behdad Esfahbod 4e9a6cfb49 [COLR] Use VarStoreInstancer 2022-12-12 10:20:51 -07:00