hal/shader/slug-harfbuzz.lisp
hb_direction_t uses these stable public values so directions compose as bit flags in HarfBuzz's C ABI.
Shape string with HarfBuzz, returning glyph IDs and font-unit placements.
direction may be :LTR, :RTL, :TTB, or :BTT. With no direction HarfBuzz
guesses the segment properties from the Unicode text. #4G7064
HB_MEMORY_MODE_DUPLICATE copies the bytes before this dynamic pointer leaves scope.
(name)(handle)Logically invalidate HANDLE immediately. Native teardown may be deferred until submitted work which captured HANDLE has completed.
(pathname)Test whether two compatible scalars are equal.
(direction)(buffer)(string font-pathname &key direction)Shape STRING with HarfBuzz, returning glyph IDs and font-unit placements. DIRECTION may be :LTR, :RTL, :TTB, or :BTT. With no direction HarfBuzz guesses the segment properties from the Unicode text. #4G7064
Text shaping and outline rendering meet at a deliberately narrow seam. shape-slug-text gives HarfBuzz the UTF-8 run and font bytes, then returns dense records containing glyph IDs, byte clusters, advances, and offsets in font units. It does not ask HarfBuzz to rasterize. The Slug side uses each glyph ID with…
HarfBuzz owns text-to-glyph shaping; Slug owns the resulting outlines.