From 01400f7425f7aec852f39ebee17aa502a74025fb Mon Sep 17 00:00:00 2001 From: Nathan Willis Date: Sat, 20 Oct 2018 17:21:49 +0100 Subject: [PATCH] Usermanual; minor wording changes. --- docs/usermanual-getting-started.xml | 14 ++++++------- docs/usermanual-install-harfbuzz.xml | 10 ++++++++- docs/usermanual-what-is-harfbuzz.xml | 31 +++++++++------------------- 3 files changed, 26 insertions(+), 29 deletions(-) diff --git a/docs/usermanual-getting-started.xml b/docs/usermanual-getting-started.xml index 07593f56e..f8f525c65 100644 --- a/docs/usermanual-getting-started.xml +++ b/docs/usermanual-getting-started.xml @@ -18,9 +18,7 @@ properties that affect shaping. The most important are the text-flow direction (e.g., left-to-right, right-to-left, top-to-bottom, or bottom-to-top), the script tag, and the - language tag. HarfBuzz can attempt to guess the correct values - for the buffer based on its contents if you do not set them - explicitly. + language tag. @@ -29,7 +27,8 @@ indicate whether or not to visibly render Unicode Default Ignorable codepoints, and to modify the cluster-merging behavior for the buffer. For shaped output buffers, the - individual X and Y offsets and widths of each glyph are + individual X and Y offsets and advances + (the logical dimensions) of each glyph are accessible. HarfBuzz also flags glyphs as UNSAFE_TO_BREAK if breaking the string at that glyph (e.g., in a line-breaking or hyphenation process) @@ -61,9 +60,10 @@ - HarfBuzz provides glue code to integrate with FreeType, GObject, - Uniscribe, and CoreText. Support for integrating with - DirectWrite is experimental at present. + HarfBuzz provides glue code to integrate with various other + libraries, including FreeType, GObject, and CoreText. Support + for integrating with Uniscribe and DirectWrite is experimental + at present. diff --git a/docs/usermanual-install-harfbuzz.xml b/docs/usermanual-install-harfbuzz.xml index cd1e2e134..54b5fc954 100644 --- a/docs/usermanual-install-harfbuzz.xml +++ b/docs/usermanual-install-harfbuzz.xml @@ -279,7 +279,11 @@ graphics-rendering library. The default setting is to check for the presence of Cairo and, if it is found, build with Cairo support. - + + + Note: Cairo is used only by the HarfBuzz + command-line utilities, and not by the HarfBuzz library. + @@ -296,6 +300,10 @@ is to check for the presence of Fontconfig and, if it is found, build with Fontconfig support. + + Note: Fontconfig is used only by the HarfBuzz + command-line utilities, and not by the HarfBuzz library. + diff --git a/docs/usermanual-what-is-harfbuzz.xml b/docs/usermanual-what-is-harfbuzz.xml index 0c01adae2..4719dd4ff 100644 --- a/docs/usermanual-what-is-harfbuzz.xml +++ b/docs/usermanual-what-is-harfbuzz.xml @@ -296,10 +296,7 @@ In addition to OpenType shaping, HarfBuzz supports the latest version of Graphite shaping. HarfBuzz currently supports AAT - shaping only on macOS and iOS systems, and in a pass-through - fashion: HarfBuzz hands off AAT support to the system CoreText - library. However, full, built-in AAT support within HarfBuzz is - under development. + shaping only on macOS and iOS systems. @@ -321,13 +318,9 @@ all color-font formats (CBDT, sbix, COLR/CPAL, and SVG-OT) and OpenType variable fonts. HarfBuzz - also includes a font-subsetting feature. - - - - HarfBuzz can perform some low-level math-shaping operations, - although it does not currently perform full shaping for - mathematical typesetting. + also includes a font-subsetting feature. HarfBuzz can perform + some low-level math-shaping operations, although it does not + currently perform full shaping for mathematical typesetting. @@ -355,9 +348,10 @@ HarfBuzz won't help you with bidirectionality. If you want to lay out text that includes a mix of Hebrew and English, you - will need to ensure that each buffer provided to HarfBuzz has its - characters in the correct layout order. This will be different - from the logical order in which the Unicode text is stored. In + will need to ensure that each buffer provided to HarfBuzz + has all of its characters in the same order and that the + directionality of the buffer is set correctly. This may mean + segmenting the text before it is placed into HarfBuzz buffers. In other words, the user will hit the keys in the following sequence: @@ -374,7 +368,7 @@ This reordering is called bidi processing ("bidi" is short for bidirectional), and there's an algorithm as an annex to the Unicode Standard which tells you how - to reorder a string from logical order into presentation order. + to process a string of mixed directionality. Before sending your string to HarfBuzz, you may need to apply the bidi algorithm to it. Libraries such as ICU and