• Home
Name Date Size #Lines LOC

..--

.ci/03-May-2024-158125

.circleci/03-May-2024-202179

.github/workflows/03-May-2024-266215

docs/03-May-2024-5,9035,523

m4/03-May-2024-1,8091,492

perf/03-May-2024-15,62614,661

src/03-May-2024-125,94288,347

subprojects/03-May-2024-11297

test/03-May-2024-40,10834,342

util/03-May-2024-5,6034,220

.clang-formatD03-May-20241 KiB3936

.codecov.ymlD03-May-202499 97

.editorconfigD03-May-2024376 2418

AUTHORSD03-May-2024201 1514

Android.bpD03-May-20246 KiB194186

BUILD.mdD03-May-20241.2 KiB2817

CMakeLists.txtD03-May-202425 KiB755637

CONFIG.mdD03-May-20246.9 KiB151110

COPYINGD03-May-20241.8 KiB3932

METADATAD03-May-2024647 1514

MODULE_LICENSE_MITD03-May-20240

Makefile.amD03-May-20242.4 KiB9774

NEWSD03-May-202478.5 KiB2,6011,990

NOTICED03-May-20241.7 KiB3730

OWNERSD03-May-202473 54

READMED03-May-2024518 168

README.androidD03-May-2024717 1815

README.mdD03-May-20241.7 KiB3421

README.mingw.mdD03-May-20242.1 KiB4836

README.python.mdD03-May-2024961 3222

README.versionD03-May-2024125 43

RELEASING.mdD03-May-20241.7 KiB3823

TESTING.mdD03-May-20241 KiB5640

TEST_MAPPINGD03-May-202467 87

THANKSD03-May-2024129 87

TODOD03-May-2024436 2915

autogen.shD03-May-20241.1 KiB4933

configure.acD03-May-202414.3 KiB485422

git.mkD03-May-202412.3 KiB401293

harfbuzz.doapD03-May-2024775 2521

meson.buildD03-May-202412.4 KiB406346

meson_options.txtD03-May-20242.1 KiB4340

mingw-configure.shD03-May-2024757 2924

replace-enum-strings.cmakeD03-May-2024352 2117

README

1This is HarfBuzz, a text shaping library.
2
3For bug reports, mailing list, and other information please visit:
4
5  http://harfbuzz.org/
6
7For license information, see https://github.com/harfbuzz/harfbuzz/blob/main/COPYING
8
9For build information, see https://github.com/harfbuzz/harfbuzz/blob/main/BUILD.md
10
11For custom configurations, see https://github.com/harfbuzz/harfbuzz/blob/main/CONFIG.md
12
13For test execution, see https://github.com/harfbuzz/harfbuzz/blob/main/TESTING.md
14
15Documentation: https://harfbuzz.github.io
16

README.android

1Harfbuzz
2
3HOW TO UPDATE
4* Check out external/harfbuzz to <checkout_dir>
5  ex: git clone https://android.googlesource.com/platform/external/harfbuzz_ng
6* Locate the commit you'd like to move.
7  ex: for 1.7.4: https://github.com/harfbuzz/harfbuzz/commit/007a2a4317227b8fb4c764c590203c85fc3da5fd
8* In <checkout_dir>, run git merge <commit_sha>
9  i.e. git merge 007a2a4317227b8fb4c764c590203c85fc3da5fd
10* Upload the changes.
11  ex: git push origin HEAD:refs/for/master
12* Gerrit will run the text related tests.
13
14NOTE:
15 Since Chromium updates Harfbuzz more frequently, you can check the following URL for their changes
16 and latest merges.
17 https://chromium.googlesource.com/chromium/src/+log/master/third_party/harfbuzz-ng
18

README.md

1[![Linux CI Status](https://github.com/harfbuzz/harfbuzz/workflows/linux-ci/badge.svg)](https://github.com/harfbuzz/harfbuzz/workflows/linux-ci/badge.svg)
2[![CircleCI Build Status](https://circleci.com/gh/harfbuzz/harfbuzz/tree/main.svg?style=svg)](https://circleci.com/gh/harfbuzz/harfbuzz/tree/main)
3[![OSS-Fuzz Status](https://oss-fuzz-build-logs.storage.googleapis.com/badges/harfbuzz.svg)](https://oss-fuzz-build-logs.storage.googleapis.com/index.html)
4[![Coverity Code Health](https://img.shields.io/coverity/scan/5450.svg)](https://scan.coverity.com/projects/behdad-harfbuzz)
5[![Codacy Code Health](https://api.codacy.com/project/badge/Grade/f17f1708783c447488bc8dd317150eaa)](https://app.codacy.com/app/behdad/harfbuzz)
6[![Codecov Code Coverage](https://codecov.io/gh/harfbuzz/harfbuzz/branch/main/graph/badge.svg)](https://codecov.io/gh/harfbuzz/harfbuzz)
7[![Coverals Code Coverage](https://img.shields.io/coveralls/harfbuzz/harfbuzz.svg)](https://coveralls.io/r/harfbuzz/harfbuzz)
8[![Packaging status](https://repology.org/badge/tiny-repos/harfbuzz.svg)](https://repology.org/project/harfbuzz/versions)
9[ABI Tracker](http://abi-laboratory.pro/tracker/timeline/harfbuzz/)
10
11This is HarfBuzz, a text shaping library.
12
13For bug reports, mailing list, and other information please visit:
14
15  http://harfbuzz.org/
16
17For license information, see [COPYING](COPYING).
18
19For build information, see [BUILD.md](BUILD.md).
20
21For custom configurations, see [CONFIG.md](CONFIG.md).
22
23For test execution, see [TESTING.md](TESTING.md).
24
25Documentation: https://harfbuzz.github.io
26
27
28<details>
29  <summary>Packaging status of HarfBuzz</summary>
30
31[![Packaging status](https://repology.org/badge/vertical-allrepos/harfbuzz.svg?header=harfbuzz)](https://repology.org/project/harfbuzz/versions)
32
33</details>
34

README.mingw.md

1For the development of HarfBuzz, the Microsoft shaping technology, Uniscribe,
2as a widely used and tested shaper is used as more-or-less OpenType reference
3implementation and that specially is important where OpenType specification
4is or wasn't that clear. For having access to Uniscribe on Linux/macOS these
5steps are recommended:
6
7You want to follow the 32bit instructions. The 64bit equivalents are included
8for reference.
9
101. Install Wine.
11   - Fedora: `dnf install wine`.
12
132. Install `mingw-w64` compiler.
14   - Fedora, 32bit: `dnf install mingw32-gcc-c++`
15   - Fedora, 64bit: `dnf install mingw64-gcc-c++`
16   - Debian: `apt install g++-mingw-w64`
17   - Mac: `brew install mingw-w64`
18
193. If you have drank the `meson` koolaid, look at `.ci/build-win32.sh` to see how to
20   invoke `meson` now, or just run that script.  Otherwise, here's how to use the
21   old trusty autotools instead:
22
23   a) Install dependencies.
24      - Fedora, 32bit: `dnf install mingw32-glib2 mingw32-cairo mingw32-freetype`
25      - Fedora, 64bit: `dnf install mingw64-glib2 mingw64-cairo mingw64-freetype`
26
27   b) Configure:
28     - `NOCONFIGURE=1 ./autogen.sh && mkdir winbuild && cd winbuild`
29     - 32bit: `../mingw-configure.sh i686`
30     - 64bit: `../mingw-configure.sh x86_64`
31
32Now you can use `hb-shape` by `(cd win32build/util && wine hb-shape.exe)`
33but if you like to shape with the Microsoft Uniscribe:
34
354. Bring a 32bit version of `usp10.dll` for yourself from `C:\Windows\SysWOW64\usp10.dll` of your
36   Windows installation (assuming you have a 64-bit installation, otherwise
37   `C:\Windows\System32\usp10.dll`) that it is not a DirectWrite proxy
38   ([for more info](https://en.wikipedia.org/wiki/Uniscribe)).
39   Rule of thumb, your `usp10.dll` should have a size more than 500kb, otherwise
40   it is designed to work with DirectWrite which Wine can't work with its original one.
41   You want a Uniscribe from Windows 7 or older.
42
43   Put the DLL in the folder you are going to run the next command,
44
455. `WINEDLLOVERRIDES="usp10=n" wine hb-shape.exe fontname.ttf -u 0061,0062,0063 --shaper=uniscribe`
46
47(`0061,0062,0063` means `abc`, use test/shaping/hb-unicode-decode to generate ones you need)
48

README.python.md

1To enable HarfBuzz bindings for Python among other languages, make sure
2you have latest version of gobject-introspection available.  On Ubuntu,
3you can install that this way:
4
5```bash
6sudo apt-get install libgirepository1.0-dev
7```
8
9And then run `meson setup` and make sure that `Introspection` is reported
10enabled in output.
11
12Compile and install.
13
14Make sure you have the installation lib dir in `LD_LIBRARY_PATH`, as needed
15for the linker to find the library.
16
17Then make sure you also have `GI_TYPELIB_PATH` pointing to the resulting
18`$prefix/lib/girepository-*` directory.
19
20Make sure you have pygobject installed.  Then check that the following
21import works in your Python interpreter:
22
23```python
24from gi.repository import HarfBuzz
25```
26
27If it does, you are ready to call HarfBuzz from Python!  Congratulations.
28See [`src/sample.py`](src/sample.py).
29
30The Python API will change.  Let us know on the mailing list if you are
31using it, and send lots of feedback.
32

README.version

1URL: https://github.com/harfbuzz/harfbuzz/commit/cd5c6cd0419ac5e4de975d6c476fb760bf06d2ce
2Version: 3.1.1
3BugComponent: 25699
4