harfbuzz.global

Undocumented in source.

Members

Functions

aatLayoutFeatureTypeGetNameId
harfbuzz.types.OtNameId aatLayoutFeatureTypeGetNameId(harfbuzz.face.Face face, harfbuzz.types.AatLayoutFeatureType featureType)

Fetches the name identifier of the specified feature type in the face's name table.

aatLayoutFeatureTypeGetSelectorInfos
uint aatLayoutFeatureTypeGetSelectorInfos(harfbuzz.face.Face face, harfbuzz.types.AatLayoutFeatureType featureType, uint startOffset, harfbuzz.types.AatLayoutFeatureSelectorInfo[] selectors, uint defaultIndex)

Fetches a list of the selectors available for the specified feature in the given face.

aatLayoutGetFeatureTypes
uint aatLayoutGetFeatureTypes(harfbuzz.face.Face face, uint startOffset, harfbuzz.types.AatLayoutFeatureType[] features)

Fetches a list of the AAT feature types included in the specified face.

aatLayoutHasPositioning
harfbuzz.types.Bool aatLayoutHasPositioning(harfbuzz.face.Face face)

Tests whether the specified face includes any positioning information in the kerx table.

aatLayoutHasSubstitution
harfbuzz.types.Bool aatLayoutHasSubstitution(harfbuzz.face.Face face)

Tests whether the specified face includes any substitutions in the morx or mort tables.

aatLayoutHasTracking
harfbuzz.types.Bool aatLayoutHasTracking(harfbuzz.face.Face face)

Tests whether the specified face includes any tracking information in the trak table.

blobCopyWritableOrFail
harfbuzz.blob.Blob blobCopyWritableOrFail(harfbuzz.blob.Blob blob)

Makes a writable copy of blob.

blobCreateFromFile
harfbuzz.blob.Blob blobCreateFromFile(string fileName)

Creates a new blob containing the data from the specified binary font file.

blobCreateFromFileOrFail
harfbuzz.blob.Blob blobCreateFromFileOrFail(string fileName)

Creates a new blob containing the data from the specified binary font file.

blobCreateSubBlob
harfbuzz.blob.Blob blobCreateSubBlob(harfbuzz.blob.Blob parent, uint offset, uint length)

Returns a blob that represents a range of bytes in parent. The new blob is always created with #HB_MEMORY_MODE_READONLY, meaning that it will never modify data in the parent blob. The parent data is not expected to be modified, and will result in undefined behavior if it is.

blobGetData
string blobGetData(harfbuzz.blob.Blob blob)

Fetches the data from a blob.

blobGetDataWritable
string blobGetDataWritable(harfbuzz.blob.Blob blob)

Tries to make blob data writable (possibly copying it) and return pointer to data.

blobGetEmpty
harfbuzz.blob.Blob blobGetEmpty()

Returns the singleton empty blob.

blobGetLength
uint blobGetLength(harfbuzz.blob.Blob blob)

Fetches the length of a blob's data.

blobIsImmutable
harfbuzz.types.Bool blobIsImmutable(harfbuzz.blob.Blob blob)

Tests whether a blob is immutable.

blobMakeImmutable
void blobMakeImmutable(harfbuzz.blob.Blob blob)

Makes a blob immutable.

bufferAdd
void bufferAdd(harfbuzz.buffer.Buffer buffer, harfbuzz.types.Codepoint codepoint, uint cluster)

Appends a character with the Unicode value of codepoint to buffer, and gives it the initial cluster value of cluster. Clusters can be any thing the client wants, they are usually used to refer to the index of the character in the input text stream and are output in #hb_glyph_info_t.cluster field.

bufferAddCodepoints
void bufferAddCodepoints(harfbuzz.buffer.Buffer buffer, harfbuzz.types.Codepoint[] text, uint itemOffset, int itemLength)

Appends characters from text array to buffer. The item_offset is the position of the first character from text that will be appended, and item_length is the number of character. When shaping part of a larger text (e.g. a run of text from a paragraph), instead of passing just the substring corresponding to the run, it is preferable to pass the whole paragraph and specify the run start and length as item_offset and item_length, respectively, to give HarfBuzz the full context to be able, for example, to do cross-run Arabic shaping or properly handle combining marks at stat of run.

bufferAddLatin1
void bufferAddLatin1(harfbuzz.buffer.Buffer buffer, ubyte[] text, uint itemOffset, int itemLength)

Similar to harfbuzz.global.bufferAddCodepoints, but allows only access to first 256 Unicode code points that can fit in 8-bit strings.

bufferAddUtf16
void bufferAddUtf16(harfbuzz.buffer.Buffer buffer, ushort[] text, uint itemOffset, int itemLength)

See harfbuzz.global.bufferAddCodepoints.

bufferAddUtf32
void bufferAddUtf32(harfbuzz.buffer.Buffer buffer, uint[] text, uint itemOffset, int itemLength)

See harfbuzz.global.bufferAddCodepoints.

bufferAddUtf8
void bufferAddUtf8(harfbuzz.buffer.Buffer buffer, ubyte[] text, uint itemOffset, int itemLength)

See harfbuzz.global.bufferAddCodepoints.

bufferAllocationSuccessful
harfbuzz.types.Bool bufferAllocationSuccessful(harfbuzz.buffer.Buffer buffer)

Check if allocating memory for the buffer succeeded.

bufferAppend
void bufferAppend(harfbuzz.buffer.Buffer buffer, harfbuzz.buffer.Buffer source, uint start, uint end)

Append (part of) contents of another buffer to this buffer.

bufferClearContents
void bufferClearContents(harfbuzz.buffer.Buffer buffer)

Similar to harfbuzz.global.bufferReset, but does not clear the Unicode functions and the replacement code point.

bufferCreate
harfbuzz.buffer.Buffer bufferCreate()

Creates a new #hb_buffer_t with all properties to defaults.

bufferCreateSimilar
harfbuzz.buffer.Buffer bufferCreateSimilar(harfbuzz.buffer.Buffer src)

Creates a new #hb_buffer_t, similar to harfbuzz.global.bufferCreate. The only difference is that the buffer is configured similarly to src.

bufferDeserializeGlyphs
harfbuzz.types.Bool bufferDeserializeGlyphs(harfbuzz.buffer.Buffer buffer, string buf, string endPtr, harfbuzz.font.Font font, harfbuzz.types.BufferSerializeFormat format)

Deserializes glyphs buffer from textual representation in the format produced by harfbuzz.global.bufferSerializeGlyphs.

bufferDeserializeUnicode
harfbuzz.types.Bool bufferDeserializeUnicode(harfbuzz.buffer.Buffer buffer, string buf, string endPtr, harfbuzz.types.BufferSerializeFormat format)

Deserializes Unicode buffer from textual representation in the format produced by harfbuzz.global.bufferSerializeUnicode.

bufferDiff
harfbuzz.types.BufferDiffFlags bufferDiff(harfbuzz.buffer.Buffer buffer, harfbuzz.buffer.Buffer reference, harfbuzz.types.Codepoint dottedcircleGlyph, uint positionFuzz)

If dottedcircle_glyph is (hb_codepoint_t) -1 then #HB_BUFFER_DIFF_FLAG_DOTTED_CIRCLE_PRESENT and #HB_BUFFER_DIFF_FLAG_NOTDEF_PRESENT are never returned. This should be used by most callers if just comparing two buffers is needed.

bufferGetClusterLevel
harfbuzz.types.BufferClusterLevel bufferGetClusterLevel(harfbuzz.buffer.Buffer buffer)

Fetches the cluster level of a buffer. The #hb_buffer_cluster_level_t dictates one aspect of how HarfBuzz will treat non-base characters during shaping.

bufferGetContentType
harfbuzz.types.BufferContentType bufferGetContentType(harfbuzz.buffer.Buffer buffer)

Fetches the type of buffer contents. Buffers are either empty, contain characters (before shaping), or contain glyphs (the result of shaping).

bufferGetDirection
harfbuzz.types.Direction bufferGetDirection(harfbuzz.buffer.Buffer buffer)

See harfbuzz.global.bufferSetDirection

bufferGetEmpty
harfbuzz.buffer.Buffer bufferGetEmpty()

Fetches an empty #hb_buffer_t.

bufferGetFlags
harfbuzz.types.BufferFlags bufferGetFlags(harfbuzz.buffer.Buffer buffer)

Fetches the #hb_buffer_flags_t of buffer.

bufferGetGlyphInfos
harfbuzz.glyph_info.GlyphInfo[] bufferGetGlyphInfos(harfbuzz.buffer.Buffer buffer)

Returns buffer glyph information array. Returned pointer is valid as long as buffer contents are not modified.

bufferGetGlyphPositions
harfbuzz.glyph_position.GlyphPosition[] bufferGetGlyphPositions(harfbuzz.buffer.Buffer buffer)

Returns buffer glyph position array. Returned pointer is valid as long as buffer contents are not modified.

bufferGetInvisibleGlyph
harfbuzz.types.Codepoint bufferGetInvisibleGlyph(harfbuzz.buffer.Buffer buffer)

See harfbuzz.global.bufferSetInvisibleGlyph.

bufferGetLanguage
harfbuzz.types.Language bufferGetLanguage(harfbuzz.buffer.Buffer buffer)

See harfbuzz.global.bufferSetLanguage.

bufferGetLength
uint bufferGetLength(harfbuzz.buffer.Buffer buffer)

Returns the number of items in the buffer.

bufferGetNotFoundGlyph
harfbuzz.types.Codepoint bufferGetNotFoundGlyph(harfbuzz.buffer.Buffer buffer)

See harfbuzz.global.bufferSetNotFoundGlyph.

bufferGetReplacementCodepoint
harfbuzz.types.Codepoint bufferGetReplacementCodepoint(harfbuzz.buffer.Buffer buffer)

Fetches the #hb_codepoint_t that replaces invalid entries for a given encoding when adding text to buffer.

bufferGetScript
harfbuzz.types.Script bufferGetScript(harfbuzz.buffer.Buffer buffer)

Fetches the script of buffer.

bufferGetSegmentProperties
void bufferGetSegmentProperties(harfbuzz.buffer.Buffer buffer, harfbuzz.segment_properties.SegmentProperties props)

Sets props to the #hb_segment_properties_t of buffer.

bufferGetUnicodeFuncs
harfbuzz.unicode_funcs.UnicodeFuncs bufferGetUnicodeFuncs(harfbuzz.buffer.Buffer buffer)

Fetches the Unicode-functions structure of a buffer.

bufferGuessSegmentProperties
void bufferGuessSegmentProperties(harfbuzz.buffer.Buffer buffer)

Sets unset buffer segment properties based on buffer Unicode contents. If buffer is not empty, it must have content type #HB_BUFFER_CONTENT_TYPE_UNICODE.

bufferHasPositions
harfbuzz.types.Bool bufferHasPositions(harfbuzz.buffer.Buffer buffer)

Returns whether buffer has glyph position data. A buffer gains position data when harfbuzz.global.bufferGetGlyphPositions is called on it, and cleared of position data when harfbuzz.global.bufferClearContents is called.

bufferNormalizeGlyphs
void bufferNormalizeGlyphs(harfbuzz.buffer.Buffer buffer)

Reorders a glyph buffer to have canonical in-cluster glyph order / position. The resulting clusters should behave identical to pre-reordering clusters.

bufferPreAllocate
harfbuzz.types.Bool bufferPreAllocate(harfbuzz.buffer.Buffer buffer, uint size)

Pre allocates memory for buffer to fit at least size number of items.

bufferReset
void bufferReset(harfbuzz.buffer.Buffer buffer)

Resets the buffer to its initial status, as if it was just newly created with harfbuzz.global.bufferCreate.

bufferReverse
void bufferReverse(harfbuzz.buffer.Buffer buffer)

Reverses buffer contents.

bufferReverseClusters
void bufferReverseClusters(harfbuzz.buffer.Buffer buffer)

Reverses buffer clusters. That is, the buffer contents are reversed, then each cluster (consecutive items having the same cluster number) are reversed again.

bufferReverseRange
void bufferReverseRange(harfbuzz.buffer.Buffer buffer, uint start, uint end)

Reverses buffer contents between start and end.

bufferSerializeFormatFromString
harfbuzz.types.BufferSerializeFormat bufferSerializeFormatFromString(ubyte[] str)

Parses a string into an #hb_buffer_serialize_format_t. Does not check if str is a valid buffer serialization format, use harfbuzz.global.bufferSerializeListFormats to get the list of supported formats.

bufferSerializeFormatToString
string bufferSerializeFormatToString(harfbuzz.types.BufferSerializeFormat format)

Converts format to the string corresponding it, or NULL if it is not a valid #hb_buffer_serialize_format_t.

bufferSerializeListFormats
string[] bufferSerializeListFormats()

Returns a list of supported buffer serialization formats.

bufferSetClusterLevel
void bufferSetClusterLevel(harfbuzz.buffer.Buffer buffer, harfbuzz.types.BufferClusterLevel clusterLevel)

Sets the cluster level of a buffer. The #hb_buffer_cluster_level_t dictates one aspect of how HarfBuzz will treat non-base characters during shaping.

bufferSetContentType
void bufferSetContentType(harfbuzz.buffer.Buffer buffer, harfbuzz.types.BufferContentType contentType)

Sets the type of buffer contents. Buffers are either empty, contain characters (before shaping), or contain glyphs (the result of shaping).

bufferSetDirection
void bufferSetDirection(harfbuzz.buffer.Buffer buffer, harfbuzz.types.Direction direction)

Set the text flow direction of the buffer. No shaping can happen without setting buffer direction, and it controls the visual direction for the output glyphs; for RTL direction the glyphs will be reversed. Many layout features depend on the proper setting of the direction, for example, reversing RTL text before shaping, then shaping with LTR direction is not the same as keeping the text in logical order and shaping with RTL direction.

bufferSetFlags
void bufferSetFlags(harfbuzz.buffer.Buffer buffer, harfbuzz.types.BufferFlags flags)

Sets buffer flags to flags. See #hb_buffer_flags_t.

bufferSetInvisibleGlyph
void bufferSetInvisibleGlyph(harfbuzz.buffer.Buffer buffer, harfbuzz.types.Codepoint invisible)

Sets the #hb_codepoint_t that replaces invisible characters in the shaping result. If set to zero (default), the glyph for the U+0020 SPACE character is used. Otherwise, this value is used verbatim.

bufferSetLanguage
void bufferSetLanguage(harfbuzz.buffer.Buffer buffer, harfbuzz.types.Language language)

Sets the language of buffer to language.

bufferSetLength
harfbuzz.types.Bool bufferSetLength(harfbuzz.buffer.Buffer buffer, uint length)

Similar to harfbuzz.global.bufferPreAllocate, but clears any new items added at the end.

bufferSetMessageFunc
void bufferSetMessageFunc(harfbuzz.buffer.Buffer buffer, harfbuzz.types.BufferMessageFunc func)

Sets the implementation function for #hb_buffer_message_func_t.

bufferSetNotFoundGlyph
void bufferSetNotFoundGlyph(harfbuzz.buffer.Buffer buffer, harfbuzz.types.Codepoint notFound)

Sets the #hb_codepoint_t that replaces characters not found in the font during shaping.

bufferSetReplacementCodepoint
void bufferSetReplacementCodepoint(harfbuzz.buffer.Buffer buffer, harfbuzz.types.Codepoint replacement)

Sets the #hb_codepoint_t that replaces invalid entries for a given encoding when adding text to buffer.

bufferSetScript
void bufferSetScript(harfbuzz.buffer.Buffer buffer, harfbuzz.types.Script script)

Sets the script of buffer to script.

bufferSetSegmentProperties
void bufferSetSegmentProperties(harfbuzz.buffer.Buffer buffer, harfbuzz.segment_properties.SegmentProperties props)

Sets the segment properties of the buffer, a shortcut for calling harfbuzz.global.bufferSetDirection, harfbuzz.global.bufferSetScript and harfbuzz.global.bufferSetLanguage individually.

bufferSetUnicodeFuncs
void bufferSetUnicodeFuncs(harfbuzz.buffer.Buffer buffer, harfbuzz.unicode_funcs.UnicodeFuncs unicodeFuncs)

Sets the Unicode-functions structure of a buffer to unicode_funcs.

colorGetAlpha
ubyte colorGetAlpha(harfbuzz.types.Color color)

Fetches the alpha channel of the given color.

colorGetBlue
ubyte colorGetBlue(harfbuzz.types.Color color)

Fetches the blue channel of the given color.

colorGetGreen
ubyte colorGetGreen(harfbuzz.types.Color color)

Fetches the green channel of the given color.

colorGetRed
ubyte colorGetRed(harfbuzz.types.Color color)

Fetches the red channel of the given color.

colorLineGetColorStops
uint colorLineGetColorStops(harfbuzz.color_line.ColorLine colorLine, uint start, harfbuzz.color_stop.ColorStop[] colorStops)

Fetches a list of color stops from the given color line object.

colorLineGetExtend
harfbuzz.types.PaintExtend colorLineGetExtend(harfbuzz.color_line.ColorLine colorLine)

Fetches the extend mode of the color line object.

directionFromString
harfbuzz.types.Direction directionFromString(ubyte[] str)

Converts a string to an #hb_direction_t.

directionToString
string directionToString(harfbuzz.types.Direction direction)

Converts an #hb_direction_t to a string.

drawClosePath
void drawClosePath(harfbuzz.draw_funcs.DrawFuncs dfuncs, void* drawData, harfbuzz.draw_state.DrawState st)

Perform a "close-path" draw operation.

drawCubicTo
void drawCubicTo(harfbuzz.draw_funcs.DrawFuncs dfuncs, void* drawData, harfbuzz.draw_state.DrawState st, float control1X, float control1Y, float control2X, float control2Y, float toX, float toY)

Perform a "cubic-to" draw operation.

drawFuncsCreate
harfbuzz.draw_funcs.DrawFuncs drawFuncsCreate()

Creates a new draw callbacks object.

drawFuncsGetEmpty
harfbuzz.draw_funcs.DrawFuncs drawFuncsGetEmpty()

Fetches the singleton empty draw-functions structure.

drawFuncsIsImmutable
harfbuzz.types.Bool drawFuncsIsImmutable(harfbuzz.draw_funcs.DrawFuncs dfuncs)

Checks whether dfuncs is immutable.

drawFuncsMakeImmutable
void drawFuncsMakeImmutable(harfbuzz.draw_funcs.DrawFuncs dfuncs)

Makes dfuncs object immutable.

drawFuncsSetClosePathFunc
void drawFuncsSetClosePathFunc(harfbuzz.draw_funcs.DrawFuncs dfuncs, harfbuzz.types.DrawClosePathFunc func)

Sets close-path callback to the draw functions object.

drawFuncsSetCubicToFunc
void drawFuncsSetCubicToFunc(harfbuzz.draw_funcs.DrawFuncs dfuncs, harfbuzz.types.DrawCubicToFunc func)

Sets cubic-to callback to the draw functions object.

drawFuncsSetLineToFunc
void drawFuncsSetLineToFunc(harfbuzz.draw_funcs.DrawFuncs dfuncs, harfbuzz.types.DrawLineToFunc func)

Sets line-to callback to the draw functions object.

drawFuncsSetMoveToFunc
void drawFuncsSetMoveToFunc(harfbuzz.draw_funcs.DrawFuncs dfuncs, harfbuzz.types.DrawMoveToFunc func)

Sets move-to callback to the draw functions object.

drawFuncsSetQuadraticToFunc
void drawFuncsSetQuadraticToFunc(harfbuzz.draw_funcs.DrawFuncs dfuncs, harfbuzz.types.DrawQuadraticToFunc func)

Sets quadratic-to callback to the draw functions object.

drawLineTo
void drawLineTo(harfbuzz.draw_funcs.DrawFuncs dfuncs, void* drawData, harfbuzz.draw_state.DrawState st, float toX, float toY)

Perform a "line-to" draw operation.

drawMoveTo
void drawMoveTo(harfbuzz.draw_funcs.DrawFuncs dfuncs, void* drawData, harfbuzz.draw_state.DrawState st, float toX, float toY)

Perform a "move-to" draw operation.

drawQuadraticTo
void drawQuadraticTo(harfbuzz.draw_funcs.DrawFuncs dfuncs, void* drawData, harfbuzz.draw_state.DrawState st, float controlX, float controlY, float toX, float toY)

Perform a "quadratic-to" draw operation.

faceBuilderAddTable
harfbuzz.types.Bool faceBuilderAddTable(harfbuzz.face.Face face, harfbuzz.types.Tag tag, harfbuzz.blob.Blob blob)

Add table for tag with data provided by blob to the face. face must be created using harfbuzz.global.faceBuilderCreate.

faceBuilderCreate
harfbuzz.face.Face faceBuilderCreate()

Creates a #hb_face_t that can be used with harfbuzz.global.faceBuilderAddTable. After tables are added to the face, it can be compiled to a binary font file by calling harfbuzz.global.faceReferenceBlob.

faceBuilderSortTables
void faceBuilderSortTables(harfbuzz.face.Face face, harfbuzz.types.Tag[] tags)

Set the ordering of tables for serialization. Any tables not specified in the tags list will be ordered after the tables in tags, ordered by the default sort ordering.

faceCount
uint faceCount(harfbuzz.blob.Blob blob)

Fetches the number of faces in a blob.

faceCreate
harfbuzz.face.Face faceCreate(harfbuzz.blob.Blob blob, uint index)

Constructs a new face object from the specified blob and a face index into that blob.

faceCreateForTables
harfbuzz.face.Face faceCreateForTables(harfbuzz.types.ReferenceTableFunc referenceTableFunc)

Variant of harfbuzz.global.faceCreate, built for those cases where it is more convenient to provide data for individual tables instead of the whole font data. With the caveat that harfbuzz.global.faceGetTableTags does not currently work with faces created this way.

faceGetEmpty
harfbuzz.face.Face faceGetEmpty()

Fetches the singleton empty face object.

faceGetGlyphCount
uint faceGetGlyphCount(harfbuzz.face.Face face)

Fetches the glyph-count value of the specified face object.

faceGetIndex
uint faceGetIndex(harfbuzz.face.Face face)

Fetches the face-index corresponding to the given face.

faceGetTableTags
uint faceGetTableTags(harfbuzz.face.Face face, uint startOffset, harfbuzz.types.Tag[] tableTags)

Fetches a list of all table tags for a face, if possible. The list returned will begin at the offset provided

faceGetUpem
uint faceGetUpem(harfbuzz.face.Face face)

Fetches the units-per-em (UPEM) value of the specified face object.

faceIsImmutable
harfbuzz.types.Bool faceIsImmutable(harfbuzz.face.Face face)

Tests whether the given face object is immutable.

faceMakeImmutable
void faceMakeImmutable(harfbuzz.face.Face face)

Makes the given face object immutable.

faceReferenceBlob
harfbuzz.blob.Blob faceReferenceBlob(harfbuzz.face.Face face)

Fetches a pointer to the binary blob that contains the specified face. Returns an empty blob if referencing face data is not possible.

faceReferenceTable
harfbuzz.blob.Blob faceReferenceTable(harfbuzz.face.Face face, harfbuzz.types.Tag tag)

Fetches a reference to the specified table within the specified face.

faceSetGlyphCount
void faceSetGlyphCount(harfbuzz.face.Face face, uint glyphCount)

Sets the glyph count for a face object to the specified value.

faceSetIndex
void faceSetIndex(harfbuzz.face.Face face, uint index)

Assigns the specified face-index to face. Fails if the face is immutable.

faceSetUpem
void faceSetUpem(harfbuzz.face.Face face, uint upem)

Sets the units-per-em (upem) for a face object to the specified value.

featureFromString
harfbuzz.types.Bool featureFromString(ubyte[] str, harfbuzz.feature.Feature feature)

Parses a string into a #hb_feature_t.

fontAddGlyphOriginForDirection
void fontAddGlyphOriginForDirection(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.Direction direction, harfbuzz.types.Position x, harfbuzz.types.Position y)

Adds the origin coordinates to an (X,Y) point coordinate, in the specified glyph ID in the specified font.

fontChanged
void fontChanged(harfbuzz.font.Font font)

Notifies the font that underlying font data has changed. This has the effect of increasing the serial as returned by harfbuzz.global.fontGetSerial, which invalidates internal caches.

fontCreate
harfbuzz.font.Font fontCreate(harfbuzz.face.Face face)

Constructs a new font object from the specified face.

fontCreateSubFont
harfbuzz.font.Font fontCreateSubFont(harfbuzz.font.Font parent)

Constructs a sub-font font object from the specified parent font, replicating the parent's properties.

fontDrawGlyph
void fontDrawGlyph(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.draw_funcs.DrawFuncs dfuncs, void* drawData)

Draws the outline that corresponds to a glyph in the specified font.

fontFuncsCreate
harfbuzz.font_funcs.FontFuncs fontFuncsCreate()

Creates a new #hb_font_funcs_t structure of font functions.

fontFuncsGetEmpty
harfbuzz.font_funcs.FontFuncs fontFuncsGetEmpty()

Fetches an empty font-functions structure.

fontFuncsIsImmutable
harfbuzz.types.Bool fontFuncsIsImmutable(harfbuzz.font_funcs.FontFuncs ffuncs)

Tests whether a font-functions structure is immutable.

fontFuncsMakeImmutable
void fontFuncsMakeImmutable(harfbuzz.font_funcs.FontFuncs ffuncs)

Makes a font-functions structure immutable.

fontFuncsSetDrawGlyphFunc
void fontFuncsSetDrawGlyphFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontDrawGlyphFunc func)

Sets the implementation function for #hb_font_draw_glyph_func_t.

fontFuncsSetFontHExtentsFunc
void fontFuncsSetFontHExtentsFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetFontHExtentsFunc func)

Sets the implementation function for #hb_font_get_font_h_extents_func_t.

fontFuncsSetFontVExtentsFunc
void fontFuncsSetFontVExtentsFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetFontVExtentsFunc func)

Sets the implementation function for #hb_font_get_font_v_extents_func_t.

fontFuncsSetGlyphContourPointFunc
void fontFuncsSetGlyphContourPointFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphContourPointFunc func)

Sets the implementation function for #hb_font_get_glyph_contour_point_func_t.

fontFuncsSetGlyphExtentsFunc
void fontFuncsSetGlyphExtentsFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphExtentsFunc func)

Sets the implementation function for #hb_font_get_glyph_extents_func_t.

fontFuncsSetGlyphFromNameFunc
void fontFuncsSetGlyphFromNameFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphFromNameFunc func)

Sets the implementation function for #hb_font_get_glyph_from_name_func_t.

fontFuncsSetGlyphFunc
void fontFuncsSetGlyphFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphFunc func)

Deprecated. Use harfbuzz.global.fontFuncsSetNominalGlyphFunc and harfbuzz.global.fontFuncsSetVariationGlyphFunc instead.

fontFuncsSetGlyphHAdvanceFunc
void fontFuncsSetGlyphHAdvanceFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphHAdvanceFunc func)

Sets the implementation function for #hb_font_get_glyph_h_advance_func_t.

fontFuncsSetGlyphHKerningFunc
void fontFuncsSetGlyphHKerningFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphHKerningFunc func)

Sets the implementation function for #hb_font_get_glyph_h_kerning_func_t.

fontFuncsSetGlyphHOriginFunc
void fontFuncsSetGlyphHOriginFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphHOriginFunc func)

Sets the implementation function for #hb_font_get_glyph_h_origin_func_t.

fontFuncsSetGlyphNameFunc
void fontFuncsSetGlyphNameFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphNameFunc func)

Sets the implementation function for #hb_font_get_glyph_name_func_t.

fontFuncsSetGlyphShapeFunc
void fontFuncsSetGlyphShapeFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphShapeFunc func)

Sets the implementation function for #hb_font_get_glyph_shape_func_t, which is the same as #hb_font_draw_glyph_func_t.

fontFuncsSetGlyphVAdvanceFunc
void fontFuncsSetGlyphVAdvanceFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphVAdvanceFunc func)

Sets the implementation function for #hb_font_get_glyph_v_advance_func_t.

fontFuncsSetGlyphVKerningFunc
void fontFuncsSetGlyphVKerningFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphVKerningFunc func)

Sets the implementation function for #hb_font_get_glyph_v_kerning_func_t.

fontFuncsSetGlyphVOriginFunc
void fontFuncsSetGlyphVOriginFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphVOriginFunc func)

Sets the implementation function for #hb_font_get_glyph_v_origin_func_t.

fontFuncsSetNominalGlyphFunc
void fontFuncsSetNominalGlyphFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetNominalGlyphFunc func)

Sets the implementation function for #hb_font_get_nominal_glyph_func_t.

fontFuncsSetPaintGlyphFunc
void fontFuncsSetPaintGlyphFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontPaintGlyphFunc func)

Sets the implementation function for #hb_font_paint_glyph_func_t.

fontFuncsSetVariationGlyphFunc
void fontFuncsSetVariationGlyphFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetVariationGlyphFunc func)

Sets the implementation function for #hb_font_get_variation_glyph_func_t.

fontGetEmpty
harfbuzz.font.Font fontGetEmpty()

Fetches the empty font object.

fontGetExtentsForDirection
void fontGetExtentsForDirection(harfbuzz.font.Font font, harfbuzz.types.Direction direction, harfbuzz.types.FontExtents extents)

Fetches the extents for a font in a text segment of the specified direction.

fontGetFace
harfbuzz.face.Face fontGetFace(harfbuzz.font.Font font)

Fetches the face associated with the specified font object.

fontGetGlyph
harfbuzz.types.Bool fontGetGlyph(harfbuzz.font.Font font, harfbuzz.types.Codepoint unicode, harfbuzz.types.Codepoint variationSelector, harfbuzz.types.Codepoint glyph)

Fetches the glyph ID for a Unicode code point in the specified font, with an optional variation selector.

fontGetGlyphAdvanceForDirection
void fontGetGlyphAdvanceForDirection(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.Direction direction, harfbuzz.types.Position x, harfbuzz.types.Position y)

Fetches the advance for a glyph ID from the specified font, in a text segment of the specified direction.

fontGetGlyphContourPoint
harfbuzz.types.Bool fontGetGlyphContourPoint(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, uint pointIndex, harfbuzz.types.Position x, harfbuzz.types.Position y)

Fetches the (x,y) coordinates of a specified contour-point index in the specified glyph, within the specified font.

fontGetGlyphContourPointForOrigin
harfbuzz.types.Bool fontGetGlyphContourPointForOrigin(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, uint pointIndex, harfbuzz.types.Direction direction, harfbuzz.types.Position x, harfbuzz.types.Position y)

Fetches the (X,Y) coordinates of a specified contour-point index in the specified glyph ID in the specified font, with respect to the origin in a text segment in the specified direction.

fontGetGlyphExtents
harfbuzz.types.Bool fontGetGlyphExtents(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.GlyphExtents extents)

Fetches the #hb_glyph_extents_t data for a glyph ID in the specified font.

fontGetGlyphExtentsForOrigin
harfbuzz.types.Bool fontGetGlyphExtentsForOrigin(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.Direction direction, harfbuzz.types.GlyphExtents extents)

Fetches the #hb_glyph_extents_t data for a glyph ID in the specified font, with respect to the origin in a text segment in the specified direction.

fontGetGlyphFromName
harfbuzz.types.Bool fontGetGlyphFromName(harfbuzz.font.Font font, string name, harfbuzz.types.Codepoint glyph)

Fetches the glyph ID that corresponds to a name string in the specified font.

fontGetGlyphHAdvance
harfbuzz.types.Position fontGetGlyphHAdvance(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph)

Fetches the advance for a glyph ID in the specified font, for horizontal text segments.

fontGetGlyphHKerning
harfbuzz.types.Position fontGetGlyphHKerning(harfbuzz.font.Font font, harfbuzz.types.Codepoint leftGlyph, harfbuzz.types.Codepoint rightGlyph)

Fetches the kerning-adjustment value for a glyph-pair in the specified font, for horizontal text segments.

fontGetGlyphHOrigin
harfbuzz.types.Bool fontGetGlyphHOrigin(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.Position x, harfbuzz.types.Position y)

Fetches the (X,Y) coordinates of the origin for a glyph ID in the specified font, for horizontal text segments.

fontGetGlyphKerningForDirection
void fontGetGlyphKerningForDirection(harfbuzz.font.Font font, harfbuzz.types.Codepoint firstGlyph, harfbuzz.types.Codepoint secondGlyph, harfbuzz.types.Direction direction, harfbuzz.types.Position x, harfbuzz.types.Position y)

Fetches the kerning-adjustment value for a glyph-pair in the specified font.

fontGetGlyphOriginForDirection
void fontGetGlyphOriginForDirection(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.Direction direction, harfbuzz.types.Position x, harfbuzz.types.Position y)

Fetches the (X,Y) coordinates of the origin for a glyph in the specified font.

fontGetGlyphShape
void fontGetGlyphShape(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.draw_funcs.DrawFuncs dfuncs, void* drawData)

Fetches the glyph shape that corresponds to a glyph in the specified font. The shape is returned by way of calls to the callbacks of the dfuncs objects, with draw_data passed to them.

fontGetGlyphVAdvance
harfbuzz.types.Position fontGetGlyphVAdvance(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph)

Fetches the advance for a glyph ID in the specified font, for vertical text segments.

fontGetGlyphVKerning
harfbuzz.types.Position fontGetGlyphVKerning(harfbuzz.font.Font font, harfbuzz.types.Codepoint topGlyph, harfbuzz.types.Codepoint bottomGlyph)

Fetches the kerning-adjustment value for a glyph-pair in the specified font, for vertical text segments.

fontGetGlyphVOrigin
harfbuzz.types.Bool fontGetGlyphVOrigin(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.Position x, harfbuzz.types.Position y)

Fetches the (X,Y) coordinates of the origin for a glyph ID in the specified font, for vertical text segments.

fontGetHExtents
harfbuzz.types.Bool fontGetHExtents(harfbuzz.font.Font font, harfbuzz.types.FontExtents extents)

Fetches the extents for a specified font, for horizontal text segments.

fontGetNominalGlyph
harfbuzz.types.Bool fontGetNominalGlyph(harfbuzz.font.Font font, harfbuzz.types.Codepoint unicode, harfbuzz.types.Codepoint glyph)

Fetches the nominal glyph ID for a Unicode code point in the specified font.

fontGetParent
harfbuzz.font.Font fontGetParent(harfbuzz.font.Font font)

Fetches the parent font of font.

fontGetPpem
void fontGetPpem(harfbuzz.font.Font font, uint xPpem, uint yPpem)

Fetches the horizontal and vertical points-per-em (ppem) of a font.

fontGetPtem
float fontGetPtem(harfbuzz.font.Font font)

Fetches the "point size" of a font. Used in CoreText to implement optical sizing.

fontGetScale
void fontGetScale(harfbuzz.font.Font font, int xScale, int yScale)

Fetches the horizontal and vertical scale of a font.

fontGetSerial
uint fontGetSerial(harfbuzz.font.Font font)

Returns the internal serial number of the font. The serial number is increased every time a setting on the font is changed, using a setter function.

fontGetSyntheticBold
void fontGetSyntheticBold(harfbuzz.font.Font font, float xEmbolden, float yEmbolden, harfbuzz.types.Bool inPlace)

Fetches the "synthetic boldness" parameters of a font.

fontGetSyntheticSlant
float fontGetSyntheticSlant(harfbuzz.font.Font font)

Fetches the "synthetic slant" of a font.

fontGetVExtents
harfbuzz.types.Bool fontGetVExtents(harfbuzz.font.Font font, harfbuzz.types.FontExtents extents)

Fetches the extents for a specified font, for vertical text segments.

fontGetVarCoordsDesign
float[] fontGetVarCoordsDesign(harfbuzz.font.Font font)

Fetches the list of variation coordinates (in design-space units) currently set on a font.

fontGetVarCoordsNormalized
int[] fontGetVarCoordsNormalized(harfbuzz.font.Font font)

Fetches the list of normalized variation coordinates currently set on a font.

fontGetVarNamedInstance
uint fontGetVarNamedInstance(harfbuzz.font.Font font)

Returns the currently-set named-instance index of the font.

fontGetVariationGlyph
harfbuzz.types.Bool fontGetVariationGlyph(harfbuzz.font.Font font, harfbuzz.types.Codepoint unicode, harfbuzz.types.Codepoint variationSelector, harfbuzz.types.Codepoint glyph)

Fetches the glyph ID for a Unicode code point when followed by by the specified variation-selector code point, in the specified font.

fontGlyphFromString
harfbuzz.types.Bool fontGlyphFromString(harfbuzz.font.Font font, ubyte[] s, harfbuzz.types.Codepoint glyph)

Fetches the glyph ID from font that matches the specified string. Strings of the format gidDDD or uniUUUU are parsed automatically.

fontIsImmutable
harfbuzz.types.Bool fontIsImmutable(harfbuzz.font.Font font)

Tests whether a font object is immutable.

fontMakeImmutable
void fontMakeImmutable(harfbuzz.font.Font font)

Makes font immutable.

fontPaintGlyph
void fontPaintGlyph(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.paint_funcs.PaintFuncs pfuncs, void* paintData, uint paletteIndex, harfbuzz.types.Color foreground)

Paints the glyph.

fontSetFace
void fontSetFace(harfbuzz.font.Font font, harfbuzz.face.Face face)

Sets face as the font-face value of font.

fontSetParent
void fontSetParent(harfbuzz.font.Font font, harfbuzz.font.Font parent)

Sets the parent font of font.

fontSetPpem
void fontSetPpem(harfbuzz.font.Font font, uint xPpem, uint yPpem)

Sets the horizontal and vertical pixels-per-em (PPEM) of a font.

fontSetPtem
void fontSetPtem(harfbuzz.font.Font font, float ptem)

Sets the "point size" of a font. Set to zero to unset. Used in CoreText to implement optical sizing.

fontSetScale
void fontSetScale(harfbuzz.font.Font font, int xScale, int yScale)

Sets the horizontal and vertical scale of a font.

fontSetSyntheticBold
void fontSetSyntheticBold(harfbuzz.font.Font font, float xEmbolden, float yEmbolden, harfbuzz.types.Bool inPlace)

Sets the "synthetic boldness" of a font.

fontSetSyntheticSlant
void fontSetSyntheticSlant(harfbuzz.font.Font font, float slant)

Sets the "synthetic slant" of a font. By default is zero. Synthetic slant is the graphical skew applied to the font at rendering time.

fontSetVarCoordsDesign
void fontSetVarCoordsDesign(harfbuzz.font.Font font, float[] coords)

Applies a list of variation coordinates (in design-space units) to a font.

fontSetVarCoordsNormalized
void fontSetVarCoordsNormalized(harfbuzz.font.Font font, int[] coords)

Applies a list of variation coordinates (in normalized units) to a font.

fontSetVarNamedInstance
void fontSetVarNamedInstance(harfbuzz.font.Font font, uint instanceIndex)

Sets design coords of a font from a named-instance index.

fontSetVariation
void fontSetVariation(harfbuzz.font.Font font, harfbuzz.types.Tag tag, float value)

Change the value of one variation axis on the font.

fontSubtractGlyphOriginForDirection
void fontSubtractGlyphOriginForDirection(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.Direction direction, harfbuzz.types.Position x, harfbuzz.types.Position y)

Subtracts the origin coordinates from an (X,Y) point coordinate, in the specified glyph ID in the specified font.

ftFaceCreateCached
harfbuzz.face.Face ftFaceCreateCached(freetype2.types.Face ftFace)

Creates an #hb_face_t face object from the specified FT_Face.

ftFaceCreateReferenced
harfbuzz.face.Face ftFaceCreateReferenced(freetype2.types.Face ftFace)

Creates an #hb_face_t face object from the specified FT_Face.

ftFontChanged
void ftFontChanged(harfbuzz.font.Font font)

Refreshes the state of font when the underlying FT_Face has changed. This function should be called after changing the size or variation-axis settings on the FT_Face.

ftFontCreateReferenced
harfbuzz.font.Font ftFontCreateReferenced(freetype2.types.Face ftFace)

Creates an #hb_font_t font object from the specified FT_Face.

ftFontGetLoadFlags
int ftFontGetLoadFlags(harfbuzz.font.Font font)

Fetches the FT_Load_Glyph load flags of the specified #hb_font_t.

ftFontSetFuncs
void ftFontSetFuncs(harfbuzz.font.Font font)

Configures the font-functions structure of the specified #hb_font_t font object to use FreeType font functions.

ftFontSetLoadFlags
void ftFontSetLoadFlags(harfbuzz.font.Font font, int loadFlags)

Sets the FT_Load_Glyph load flags for the specified #hb_font_t.

ftHbFontChanged
harfbuzz.types.Bool ftHbFontChanged(harfbuzz.font.Font font)

Refreshes the state of the underlying FT_Face of font when the hb_font_t font has changed. This function should be called after changing the size or variation-axis settings on the font. This call is fast if nothing has changed on font.

glibBlobCreate
harfbuzz.blob.Blob glibBlobCreate(glib.bytes.Bytes gbytes)

Creates an #hb_blob_t blob from the specified GBytes data structure.

glibGetUnicodeFuncs
harfbuzz.unicode_funcs.UnicodeFuncs glibGetUnicodeFuncs()

Fetches a Unicode-functions structure that is populated with the appropriate GLib function for each method.

glibScriptFromScript
glib.types.UnicodeScript glibScriptFromScript(harfbuzz.types.Script script)

Fetches the GUnicodeScript identifier that corresponds to the specified #hb_script_t script.

glibScriptToScript
harfbuzz.types.Script glibScriptToScript(glib.types.UnicodeScript script)

Fetches the #hb_script_t script that corresponds to the specified GUnicodeScript identifier.

glyphInfoGetGlyphFlags
harfbuzz.types.GlyphFlags glyphInfoGetGlyphFlags(harfbuzz.glyph_info.GlyphInfo info)

Returns glyph flags encoded within a #hb_glyph_info_t.

languageFromString
harfbuzz.types.Language languageFromString(ubyte[] str)

Converts str representing a BCP 47 language tag to the corresponding #hb_language_t.

languageGetDefault
harfbuzz.types.Language languageGetDefault()

Fetch the default language from current locale.

languageMatches
harfbuzz.types.Bool languageMatches(harfbuzz.types.Language language, harfbuzz.types.Language specific)

Check whether a second language tag is the same or a more specific version of the provided language tag. For example, "fa_IR.utf8" is a more specific tag for "fa" or for "fa_IR".

languageToString
string languageToString(harfbuzz.types.Language language)

Converts an #hb_language_t to a string.

mapAllocationSuccessful
harfbuzz.types.Bool mapAllocationSuccessful(harfbuzz.map.Map map)

Tests whether memory allocation for a set was successful.

mapClear
void mapClear(harfbuzz.map.Map map)

Clears out the contents of map.

mapCopy
harfbuzz.map.Map mapCopy(harfbuzz.map.Map map)

Allocate a copy of map.

mapCreate
harfbuzz.map.Map mapCreate()

Creates a new, initially empty map.

mapDel
void mapDel(harfbuzz.map.Map map, harfbuzz.types.Codepoint key)

Removes key and its stored value from map.

mapGet
harfbuzz.types.Codepoint mapGet(harfbuzz.map.Map map, harfbuzz.types.Codepoint key)

Fetches the value stored for key in map.

mapGetEmpty
harfbuzz.map.Map mapGetEmpty()

Fetches the singleton empty #hb_map_t.

mapGetPopulation
uint mapGetPopulation(harfbuzz.map.Map map)

Returns the number of key-value pairs in the map.

mapHas
harfbuzz.types.Bool mapHas(harfbuzz.map.Map map, harfbuzz.types.Codepoint key)

Tests whether key is an element of map.

mapHash
uint mapHash(harfbuzz.map.Map map)

Creates a hash representing map.

mapIsEmpty
harfbuzz.types.Bool mapIsEmpty(harfbuzz.map.Map map)

Tests whether map is empty (contains no elements).

mapIsEqual
harfbuzz.types.Bool mapIsEqual(harfbuzz.map.Map map, harfbuzz.map.Map other)

Tests whether map and other are equal (contain the same elements).

mapKeys
void mapKeys(harfbuzz.map.Map map, harfbuzz.set.Set keys)

Add the keys of map to keys.

mapNext
harfbuzz.types.Bool mapNext(harfbuzz.map.Map map, int idx, harfbuzz.types.Codepoint key, harfbuzz.types.Codepoint value)

Fetches the next key/value pair in map.

mapSet
void mapSet(harfbuzz.map.Map map, harfbuzz.types.Codepoint key, harfbuzz.types.Codepoint value)

Stores key:value in the map.

mapUpdate
void mapUpdate(harfbuzz.map.Map map, harfbuzz.map.Map other)

Add the contents of other to map.

mapValues
void mapValues(harfbuzz.map.Map map, harfbuzz.set.Set values)

Add the values of map to values.

otColorGlyphGetLayers
uint otColorGlyphGetLayers(harfbuzz.face.Face face, harfbuzz.types.Codepoint glyph, uint startOffset, harfbuzz.types.OtColorLayer[] layers)

Fetches a list of all color layers for the specified glyph index in the specified face. The list returned will begin at the offset provided.

otColorGlyphHasPaint
harfbuzz.types.Bool otColorGlyphHasPaint(harfbuzz.face.Face face, harfbuzz.types.Codepoint glyph)

Tests where a face includes COLRv1 paint data for glyph.

otColorGlyphReferencePng
harfbuzz.blob.Blob otColorGlyphReferencePng(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph)

Fetches the PNG image for a glyph. This function takes a font object, not a face object, as input. To get an optimally sized PNG blob, the PPEM values must be set on the font object. If PPEM is unset, the blob returned will be the largest PNG available.

otColorGlyphReferenceSvg
harfbuzz.blob.Blob otColorGlyphReferenceSvg(harfbuzz.face.Face face, harfbuzz.types.Codepoint glyph)

Fetches the SVG document for a glyph. The blob may be either plain text or gzip-encoded.

otColorHasLayers
harfbuzz.types.Bool otColorHasLayers(harfbuzz.face.Face face)

Tests whether a face includes a COLR table with data according to COLRv0.

otColorHasPaint
harfbuzz.types.Bool otColorHasPaint(harfbuzz.face.Face face)

Tests where a face includes a COLR table with data according to COLRv1.

otColorHasPalettes
harfbuzz.types.Bool otColorHasPalettes(harfbuzz.face.Face face)

Tests whether a face includes a CPAL color-palette table.

otColorHasPng
harfbuzz.types.Bool otColorHasPng(harfbuzz.face.Face face)

Tests whether a face has PNG glyph images (either in CBDT or sbix tables).

otColorHasSvg
harfbuzz.types.Bool otColorHasSvg(harfbuzz.face.Face face)

Tests whether a face includes any SVG glyph images.

otColorPaletteColorGetNameId
harfbuzz.types.OtNameId otColorPaletteColorGetNameId(harfbuzz.face.Face face, uint colorIndex)

Fetches the name table Name ID that provides display names for the specified color in a face's CPAL color palette.

otColorPaletteGetColors
uint otColorPaletteGetColors(harfbuzz.face.Face face, uint paletteIndex, uint startOffset, harfbuzz.types.Color[] colors)

Fetches a list of the colors in a color palette.

otColorPaletteGetCount
uint otColorPaletteGetCount(harfbuzz.face.Face face)

Fetches the number of color palettes in a face.

otColorPaletteGetFlags
harfbuzz.types.OtColorPaletteFlags otColorPaletteGetFlags(harfbuzz.face.Face face, uint paletteIndex)

Fetches the flags defined for a color palette.

otColorPaletteGetNameId
harfbuzz.types.OtNameId otColorPaletteGetNameId(harfbuzz.face.Face face, uint paletteIndex)

Fetches the name table Name ID that provides display names for a CPAL color palette.

otFontSetFuncs
void otFontSetFuncs(harfbuzz.font.Font font)

Sets the font functions to use when working with font.

otLayoutFeatureGetCharacters
uint otLayoutFeatureGetCharacters(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint featureIndex, uint startOffset, harfbuzz.types.Codepoint[] characters)

Fetches a list of the characters defined as having a variant under the specified "Character Variant" ("cvXX") feature tag.

otLayoutFeatureGetLookups
uint otLayoutFeatureGetLookups(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint featureIndex, uint startOffset, uint[] lookupIndexes)

Fetches a list of all lookups enumerated for the specified feature, in the specified face's GSUB table or GPOS table. The list returned will begin at the offset provided.

otLayoutFeatureGetNameIds
harfbuzz.types.Bool otLayoutFeatureGetNameIds(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint featureIndex, harfbuzz.types.OtNameId labelId, harfbuzz.types.OtNameId tooltipId, harfbuzz.types.OtNameId sampleId, uint numNamedParameters, harfbuzz.types.OtNameId firstParamId)

Fetches name indices from feature parameters for "Stylistic Set" ('ssXX') or "Character Variant" ('cvXX') features.

otLayoutFeatureWithVariationsGetLookups
uint otLayoutFeatureWithVariationsGetLookups(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint featureIndex, uint variationsIndex, uint startOffset, uint[] lookupIndexes)

Fetches a list of all lookups enumerated for the specified feature, in the specified face's GSUB table or GPOS table, enabled at the specified variations index. The list returned will begin at the offset provided.

otLayoutGetAttachPoints
uint otLayoutGetAttachPoints(harfbuzz.face.Face face, harfbuzz.types.Codepoint glyph, uint startOffset, uint[] pointArray)

Fetches a list of all attachment points for the specified glyph in the GDEF table of the face. The list returned will begin at the offset provided.

otLayoutGetBaseline
harfbuzz.types.Bool otLayoutGetBaseline(harfbuzz.font.Font font, harfbuzz.types.OtLayoutBaselineTag baselineTag, harfbuzz.types.Direction direction, harfbuzz.types.Tag scriptTag, harfbuzz.types.Tag languageTag, harfbuzz.types.Position coord)

Fetches a baseline value from the face.

otLayoutGetBaseline2
harfbuzz.types.Bool otLayoutGetBaseline2(harfbuzz.font.Font font, harfbuzz.types.OtLayoutBaselineTag baselineTag, harfbuzz.types.Direction direction, harfbuzz.types.Script script, harfbuzz.types.Language language, harfbuzz.types.Position coord)

Fetches a baseline value from the face.

otLayoutGetBaselineWithFallback
void otLayoutGetBaselineWithFallback(harfbuzz.font.Font font, harfbuzz.types.OtLayoutBaselineTag baselineTag, harfbuzz.types.Direction direction, harfbuzz.types.Tag scriptTag, harfbuzz.types.Tag languageTag, harfbuzz.types.Position coord)

Fetches a baseline value from the face, and synthesizes it if the font does not have it.

otLayoutGetBaselineWithFallback2
void otLayoutGetBaselineWithFallback2(harfbuzz.font.Font font, harfbuzz.types.OtLayoutBaselineTag baselineTag, harfbuzz.types.Direction direction, harfbuzz.types.Script script, harfbuzz.types.Language language, harfbuzz.types.Position coord)

Fetches a baseline value from the face, and synthesizes it if the font does not have it.

otLayoutGetFontExtents
harfbuzz.types.Bool otLayoutGetFontExtents(harfbuzz.font.Font font, harfbuzz.types.Direction direction, harfbuzz.types.Tag scriptTag, harfbuzz.types.Tag languageTag, harfbuzz.types.FontExtents extents)

Fetches script/language-specific font extents. These values are looked up in the BASE table's MinMax records.

otLayoutGetFontExtents2
harfbuzz.types.Bool otLayoutGetFontExtents2(harfbuzz.font.Font font, harfbuzz.types.Direction direction, harfbuzz.types.Script script, harfbuzz.types.Language language, harfbuzz.types.FontExtents extents)

Fetches script/language-specific font extents. These values are looked up in the BASE table's MinMax records.

otLayoutGetGlyphClass
harfbuzz.types.OtLayoutGlyphClass otLayoutGetGlyphClass(harfbuzz.face.Face face, harfbuzz.types.Codepoint glyph)

Fetches the GDEF class of the requested glyph in the specified face.

otLayoutGetHorizontalBaselineTagForScript
harfbuzz.types.OtLayoutBaselineTag otLayoutGetHorizontalBaselineTagForScript(harfbuzz.types.Script script)

Fetches the dominant horizontal baseline tag used by script.

otLayoutGetLigatureCarets
uint otLayoutGetLigatureCarets(harfbuzz.font.Font font, harfbuzz.types.Direction direction, harfbuzz.types.Codepoint glyph, uint startOffset, harfbuzz.types.Position[] caretArray)

Fetches a list of the caret positions defined for a ligature glyph in the GDEF table of the font. The list returned will begin at the offset provided.

otLayoutGetSizeParams
harfbuzz.types.Bool otLayoutGetSizeParams(harfbuzz.face.Face face, uint designSize, uint subfamilyId, harfbuzz.types.OtNameId subfamilyNameId, uint rangeStart, uint rangeEnd)

Fetches optical-size feature data (i.e., the size feature from GPOS). Note that the subfamily_id and the subfamily name string (accessible via the subfamily_name_id) as used here are defined as pertaining only to fonts within a font family that differ specifically in their respective size ranges; other ways to differentiate fonts within a subfamily are not covered by the size feature.

otLayoutHasGlyphClasses
harfbuzz.types.Bool otLayoutHasGlyphClasses(harfbuzz.face.Face face)

Tests whether a face has any glyph classes defined in its GDEF table.

otLayoutHasPositioning
harfbuzz.types.Bool otLayoutHasPositioning(harfbuzz.face.Face face)

Tests whether the specified face includes any GPOS positioning.

otLayoutHasSubstitution
harfbuzz.types.Bool otLayoutHasSubstitution(harfbuzz.face.Face face)

Tests whether the specified face includes any GSUB substitutions.

otLayoutLanguageFindFeature
harfbuzz.types.Bool otLayoutLanguageFindFeature(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint scriptIndex, uint languageIndex, harfbuzz.types.Tag featureTag, uint featureIndex)

Fetches the index of a given feature tag in the specified face's GSUB table or GPOS table, underneath the specified script and language.

otLayoutLanguageGetFeatureIndexes
uint otLayoutLanguageGetFeatureIndexes(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint scriptIndex, uint languageIndex, uint startOffset, uint[] featureIndexes)

Fetches a list of all features in the specified face's GSUB table or GPOS table, underneath the specified script and language. The list returned will begin at the offset provided.

otLayoutLanguageGetFeatureTags
uint otLayoutLanguageGetFeatureTags(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint scriptIndex, uint languageIndex, uint startOffset, harfbuzz.types.Tag[] featureTags)

Fetches a list of all features in the specified face's GSUB table or GPOS table, underneath the specified script and language. The list returned will begin at the offset provided.

otLayoutLanguageGetRequiredFeature
harfbuzz.types.Bool otLayoutLanguageGetRequiredFeature(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint scriptIndex, uint languageIndex, uint featureIndex, harfbuzz.types.Tag featureTag)

Fetches the tag of a requested feature index in the given face's GSUB or GPOS table, underneath the specified script and language.

otLayoutLanguageGetRequiredFeatureIndex
harfbuzz.types.Bool otLayoutLanguageGetRequiredFeatureIndex(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint scriptIndex, uint languageIndex, uint featureIndex)

Fetches the index of a requested feature in the given face's GSUB or GPOS table, underneath the specified script and language.

otLayoutLookupGetGlyphAlternates
uint otLayoutLookupGetGlyphAlternates(harfbuzz.face.Face face, uint lookupIndex, harfbuzz.types.Codepoint glyph, uint startOffset, harfbuzz.types.Codepoint[] alternateGlyphs)

Fetches alternates of a glyph from a given GSUB lookup index.

otLayoutLookupGetOpticalBound
harfbuzz.types.Position otLayoutLookupGetOpticalBound(harfbuzz.font.Font font, uint lookupIndex, harfbuzz.types.Direction direction, harfbuzz.types.Codepoint glyph)

Fetches the optical bound of a glyph positioned at the margin of text. The direction identifies which edge of the glyph to query.

otLayoutLookupWouldSubstitute
harfbuzz.types.Bool otLayoutLookupWouldSubstitute(harfbuzz.face.Face face, uint lookupIndex, harfbuzz.types.Codepoint[] glyphs, harfbuzz.types.Bool zeroContext)

Tests whether a specified lookup in the specified face would trigger a substitution on the given glyph sequence.

otLayoutScriptFindLanguage
harfbuzz.types.Bool otLayoutScriptFindLanguage(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint scriptIndex, harfbuzz.types.Tag languageTag, uint languageIndex)

Fetches the index of a given language tag in the specified face's GSUB table or GPOS table, underneath the specified script tag.

otLayoutScriptGetLanguageTags
uint otLayoutScriptGetLanguageTags(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint scriptIndex, uint startOffset, harfbuzz.types.Tag[] languageTags)

Fetches a list of language tags in the given face's GSUB or GPOS table, underneath the specified script index. The list returned will begin at the offset provided.

otLayoutScriptSelectLanguage
harfbuzz.types.Bool otLayoutScriptSelectLanguage(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint scriptIndex, harfbuzz.types.Tag[] languageTags, uint languageIndex)

Fetches the index of the first language tag fom language_tags that is present in the specified face's GSUB or GPOS table, underneath the specified script index.

otLayoutScriptSelectLanguage2
harfbuzz.types.Bool otLayoutScriptSelectLanguage2(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint scriptIndex, harfbuzz.types.Tag[] languageTags, uint languageIndex, harfbuzz.types.Tag chosenLanguage)

Fetches the index of the first language tag fom language_tags that is present in the specified face's GSUB or GPOS table, underneath the specified script index.

otLayoutTableFindFeatureVariations
harfbuzz.types.Bool otLayoutTableFindFeatureVariations(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, int[] coords, uint variationsIndex)

Fetches a list of feature variations in the specified face's GSUB table or GPOS table, at the specified variation coordinates.

otLayoutTableFindScript
harfbuzz.types.Bool otLayoutTableFindScript(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, harfbuzz.types.Tag scriptTag, uint scriptIndex)

Fetches the index if a given script tag in the specified face's GSUB table or GPOS table.

otLayoutTableGetFeatureTags
uint otLayoutTableGetFeatureTags(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint startOffset, harfbuzz.types.Tag[] featureTags)

Fetches a list of all feature tags in the given face's GSUB or GPOS table. Note that there might be duplicate feature tags, belonging to different script/language-system pairs of the table.

otLayoutTableGetLookupCount
uint otLayoutTableGetLookupCount(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag)

Fetches the total number of lookups enumerated in the specified face's GSUB table or GPOS table.

otLayoutTableGetScriptTags
uint otLayoutTableGetScriptTags(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint startOffset, harfbuzz.types.Tag[] scriptTags)

Fetches a list of all scripts enumerated in the specified face's GSUB table or GPOS table. The list returned will begin at the offset provided.

otLayoutTableSelectScript
harfbuzz.types.Bool otLayoutTableSelectScript(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, harfbuzz.types.Tag[] scriptTags, uint scriptIndex, harfbuzz.types.Tag chosenScript)

Selects an OpenType script for table_tag from the script_tags array.

otMathGetConstant
harfbuzz.types.Position otMathGetConstant(harfbuzz.font.Font font, harfbuzz.types.OtMathConstant constant)

Fetches the specified math constant. For most constants, the value returned is an #hb_position_t.

otMathGetGlyphAssembly
uint otMathGetGlyphAssembly(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.Direction direction, uint startOffset, harfbuzz.ot_math_glyph_part.OtMathGlyphPart[] parts, harfbuzz.types.Position italicsCorrection)

Fetches the GlyphAssembly for the specified font, glyph index, and direction. Returned are a list of #hb_ot_math_glyph_part_t glyph parts that can be used to draw the glyph and an italics-correction value (if one is defined in the font).

otMathGetGlyphItalicsCorrection
harfbuzz.types.Position otMathGetGlyphItalicsCorrection(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph)

Fetches an italics-correction value (if one exists) for the specified glyph index.

otMathGetGlyphKerning
harfbuzz.types.Position otMathGetGlyphKerning(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.OtMathKern kern, harfbuzz.types.Position correctionHeight)

Fetches the math kerning (cut-ins) value for the specified font, glyph index, and kern.

otMathGetGlyphKernings
uint otMathGetGlyphKernings(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.OtMathKern kern, uint startOffset, harfbuzz.types.OtMathKernEntry[] kernEntries)

Fetches the raw MathKern (cut-in) data for the specified font, glyph index, and kern. The corresponding list of kern values and correction heights is returned as a list of #hb_ot_math_kern_entry_t structs.

otMathGetGlyphTopAccentAttachment
harfbuzz.types.Position otMathGetGlyphTopAccentAttachment(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph)

Fetches a top-accent-attachment value (if one exists) for the specified glyph index.

otMathGetGlyphVariants
uint otMathGetGlyphVariants(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.Direction direction, uint startOffset, harfbuzz.ot_math_glyph_variant.OtMathGlyphVariant[] variants)

Fetches the MathGlyphConstruction for the specified font, glyph index, and direction. The corresponding list of size variants is returned as a list of #hb_ot_math_glyph_variant_t structs.

otMathGetMinConnectorOverlap
harfbuzz.types.Position otMathGetMinConnectorOverlap(harfbuzz.font.Font font, harfbuzz.types.Direction direction)

Fetches the MathVariants table for the specified font and returns the minimum overlap of connecting glyphs that are required to draw a glyph assembly in the specified direction.

otMathHasData
harfbuzz.types.Bool otMathHasData(harfbuzz.face.Face face)

Tests whether a face has a MATH table.

otMathIsGlyphExtendedShape
harfbuzz.types.Bool otMathIsGlyphExtendedShape(harfbuzz.face.Face face, harfbuzz.types.Codepoint glyph)

Tests whether the given glyph index is an extended shape in the face.

otMetaReferenceEntry
harfbuzz.blob.Blob otMetaReferenceEntry(harfbuzz.face.Face face, harfbuzz.types.OtMetaTag metaTag)

It fetches metadata entry of a given tag from a font.

otMetricsGetPosition
harfbuzz.types.Bool otMetricsGetPosition(harfbuzz.font.Font font, harfbuzz.types.OtMetricsTag metricsTag, harfbuzz.types.Position position)

Fetches metrics value corresponding to metrics_tag from font.

otMetricsGetPositionWithFallback
void otMetricsGetPositionWithFallback(harfbuzz.font.Font font, harfbuzz.types.OtMetricsTag metricsTag, harfbuzz.types.Position position)

Fetches metrics value corresponding to metrics_tag from font, and synthesizes a value if it the value is missing in the font.

otMetricsGetVariation
float otMetricsGetVariation(harfbuzz.font.Font font, harfbuzz.types.OtMetricsTag metricsTag)

Fetches metrics value corresponding to metrics_tag from font with the current font variation settings applied.

otMetricsGetXVariation
harfbuzz.types.Position otMetricsGetXVariation(harfbuzz.font.Font font, harfbuzz.types.OtMetricsTag metricsTag)

Fetches horizontal metrics value corresponding to metrics_tag from font with the current font variation settings applied.

otMetricsGetYVariation
harfbuzz.types.Position otMetricsGetYVariation(harfbuzz.font.Font font, harfbuzz.types.OtMetricsTag metricsTag)

Fetches vertical metrics value corresponding to metrics_tag from font with the current font variation settings applied.

otTagFromLanguage
harfbuzz.types.Tag otTagFromLanguage(harfbuzz.types.Language language)

Converts an #hb_language_t to an #hb_tag_t.

otTagToLanguage
harfbuzz.types.Language otTagToLanguage(harfbuzz.types.Tag tag)

Converts a language tag to an #hb_language_t.

otTagToScript
harfbuzz.types.Script otTagToScript(harfbuzz.types.Tag tag)

Converts a script tag to an #hb_script_t.

otTagsFromScript
void otTagsFromScript(harfbuzz.types.Script script, harfbuzz.types.Tag scriptTag1, harfbuzz.types.Tag scriptTag2)

Converts an #hb_script_t to script tags.

otTagsFromScriptAndLanguage
void otTagsFromScriptAndLanguage(harfbuzz.types.Script script, harfbuzz.types.Language language, uint scriptCount, harfbuzz.types.Tag scriptTags, uint languageCount, harfbuzz.types.Tag languageTags)

Converts an #hb_script_t and an #hb_language_t to script and language tags.

otTagsToScriptAndLanguage
void otTagsToScriptAndLanguage(harfbuzz.types.Tag scriptTag, harfbuzz.types.Tag languageTag, harfbuzz.types.Script script, harfbuzz.types.Language language)

Converts a script tag and a language tag to an #hb_script_t and an #hb_language_t.

otVarFindAxisInfo
harfbuzz.types.Bool otVarFindAxisInfo(harfbuzz.face.Face face, harfbuzz.types.Tag axisTag, harfbuzz.ot_var_axis_info.OtVarAxisInfo axisInfo)

Fetches the variation-axis information corresponding to the specified axis tag in the specified face.

otVarGetAxes
uint otVarGetAxes(harfbuzz.face.Face face, uint startOffset, harfbuzz.types.OtVarAxis[] axesArray)

Fetches a list of all variation axes in the specified face. The list returned will begin at the offset provided.

otVarGetAxisCount
uint otVarGetAxisCount(harfbuzz.face.Face face)

Fetches the number of OpenType variation axes included in the face.

otVarGetAxisInfos
uint otVarGetAxisInfos(harfbuzz.face.Face face, uint startOffset, harfbuzz.ot_var_axis_info.OtVarAxisInfo[] axesArray)

Fetches a list of all variation axes in the specified face. The list returned will begin at the offset provided.

otVarGetNamedInstanceCount
uint otVarGetNamedInstanceCount(harfbuzz.face.Face face)

Fetches the number of named instances included in the face.

otVarHasData
harfbuzz.types.Bool otVarHasData(harfbuzz.face.Face face)

Tests whether a face includes any OpenType variation data in the fvar table.

otVarNamedInstanceGetDesignCoords
uint otVarNamedInstanceGetDesignCoords(harfbuzz.face.Face face, uint instanceIndex, float[] coords)

Fetches the design-space coordinates corresponding to the given named instance in the face.

otVarNamedInstanceGetPostscriptNameId
harfbuzz.types.OtNameId otVarNamedInstanceGetPostscriptNameId(harfbuzz.face.Face face, uint instanceIndex)

Fetches the name table Name ID that provides display names for the "PostScript name" defined for the given named instance in the face.

otVarNamedInstanceGetSubfamilyNameId
harfbuzz.types.OtNameId otVarNamedInstanceGetSubfamilyNameId(harfbuzz.face.Face face, uint instanceIndex)

Fetches the name table Name ID that provides display names for the "Subfamily name" defined for the given named instance in the face.

otVarNormalizeCoords
void otVarNormalizeCoords(harfbuzz.face.Face face, float[] designCoords, int normalizedCoords)

Normalizes the given design-space coordinates. The minimum and maximum values for the axis are mapped to the interval [-1,1], with the default axis value mapped to 0.

paintColor
void paintColor(harfbuzz.paint_funcs.PaintFuncs funcs, void* paintData, harfbuzz.types.Bool isForeground, harfbuzz.types.Color color)

Perform a "color" paint operation.

paintColorGlyph
harfbuzz.types.Bool paintColorGlyph(harfbuzz.paint_funcs.PaintFuncs funcs, void* paintData, harfbuzz.types.Codepoint glyph, harfbuzz.font.Font font)

Perform a "color-glyph" paint operation.

paintCustomPaletteColor
harfbuzz.types.Bool paintCustomPaletteColor(harfbuzz.paint_funcs.PaintFuncs funcs, void* paintData, uint colorIndex, harfbuzz.types.Color color)

Gets the custom palette color for color_index.

paintFuncsCreate
harfbuzz.paint_funcs.PaintFuncs paintFuncsCreate()

Creates a new #hb_paint_funcs_t structure of paint functions.

paintFuncsGetEmpty
harfbuzz.paint_funcs.PaintFuncs paintFuncsGetEmpty()

Fetches the singleton empty paint-functions structure.

paintFuncsIsImmutable
harfbuzz.types.Bool paintFuncsIsImmutable(harfbuzz.paint_funcs.PaintFuncs funcs)

Tests whether a paint-functions structure is immutable.

paintFuncsMakeImmutable
void paintFuncsMakeImmutable(harfbuzz.paint_funcs.PaintFuncs funcs)

Makes a paint-functions structure immutable.

paintFuncsSetColorFunc
void paintFuncsSetColorFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintColorFunc func)

Sets the paint-color callback on the paint functions struct.

paintFuncsSetColorGlyphFunc
void paintFuncsSetColorGlyphFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintColorGlyphFunc func)

Sets the color-glyph callback on the paint functions struct.

paintFuncsSetCustomPaletteColorFunc
void paintFuncsSetCustomPaletteColorFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintCustomPaletteColorFunc func)

Sets the custom-palette-color callback on the paint functions struct.

paintFuncsSetImageFunc
void paintFuncsSetImageFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintImageFunc func)

Sets the paint-image callback on the paint functions struct.

paintFuncsSetLinearGradientFunc
void paintFuncsSetLinearGradientFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintLinearGradientFunc func)

Sets the linear-gradient callback on the paint functions struct.

paintFuncsSetPopClipFunc
void paintFuncsSetPopClipFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintPopClipFunc func)

Sets the pop-clip callback on the paint functions struct.

paintFuncsSetPopGroupFunc
void paintFuncsSetPopGroupFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintPopGroupFunc func)

Sets the pop-group callback on the paint functions struct.

paintFuncsSetPopTransformFunc
void paintFuncsSetPopTransformFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintPopTransformFunc func)

Sets the pop-transform callback on the paint functions struct.

paintFuncsSetPushClipGlyphFunc
void paintFuncsSetPushClipGlyphFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintPushClipGlyphFunc func)

Sets the push-clip-glyph callback on the paint functions struct.

paintFuncsSetPushClipRectangleFunc
void paintFuncsSetPushClipRectangleFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintPushClipRectangleFunc func)

Sets the push-clip-rect callback on the paint functions struct.

paintFuncsSetPushGroupFunc
void paintFuncsSetPushGroupFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintPushGroupFunc func)

Sets the push-group callback on the paint functions struct.

paintFuncsSetPushTransformFunc
void paintFuncsSetPushTransformFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintPushTransformFunc func)

Sets the push-transform callback on the paint functions struct.

paintFuncsSetRadialGradientFunc
void paintFuncsSetRadialGradientFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintRadialGradientFunc func)

Sets the radial-gradient callback on the paint functions struct.

paintFuncsSetSweepGradientFunc
void paintFuncsSetSweepGradientFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintSweepGradientFunc func)

Sets the sweep-gradient callback on the paint functions struct.

paintImage
void paintImage(harfbuzz.paint_funcs.PaintFuncs funcs, void* paintData, harfbuzz.blob.Blob image, uint width, uint height, harfbuzz.types.Tag format, float slant, harfbuzz.types.GlyphExtents extents)

Perform a "image" paint operation.

paintLinearGradient
void paintLinearGradient(harfbuzz.paint_funcs.PaintFuncs funcs, void* paintData, harfbuzz.color_line.ColorLine colorLine, float x0, float y0, float x1, float y1, float x2, float y2)

Perform a "linear-gradient" paint operation.

paintPopClip
void paintPopClip(harfbuzz.paint_funcs.PaintFuncs funcs, void* paintData)

Perform a "pop-clip" paint operation.

paintPopGroup
void paintPopGroup(harfbuzz.paint_funcs.PaintFuncs funcs, void* paintData, harfbuzz.types.PaintCompositeMode mode)

Perform a "pop-group" paint operation.

paintPopTransform
void paintPopTransform(harfbuzz.paint_funcs.PaintFuncs funcs, void* paintData)

Perform a "pop-transform" paint operation.

paintPushClipGlyph
void paintPushClipGlyph(harfbuzz.paint_funcs.PaintFuncs funcs, void* paintData, harfbuzz.types.Codepoint glyph, harfbuzz.font.Font font)

Perform a "push-clip-glyph" paint operation.

paintPushClipRectangle
void paintPushClipRectangle(harfbuzz.paint_funcs.PaintFuncs funcs, void* paintData, float xmin, float ymin, float xmax, float ymax)

Perform a "push-clip-rect" paint operation.

paintPushGroup
void paintPushGroup(harfbuzz.paint_funcs.PaintFuncs funcs, void* paintData)

Perform a "push-group" paint operation.

paintPushTransform
void paintPushTransform(harfbuzz.paint_funcs.PaintFuncs funcs, void* paintData, float xx, float yx, float xy, float yy, float dx, float dy)

Perform a "push-transform" paint operation.

paintRadialGradient
void paintRadialGradient(harfbuzz.paint_funcs.PaintFuncs funcs, void* paintData, harfbuzz.color_line.ColorLine colorLine, float x0, float y0, float r0, float x1, float y1, float r1)

Perform a "radial-gradient" paint operation.

paintSweepGradient
void paintSweepGradient(harfbuzz.paint_funcs.PaintFuncs funcs, void* paintData, harfbuzz.color_line.ColorLine colorLine, float x0, float y0, float startAngle, float endAngle)

Perform a "sweep-gradient" paint operation.

scriptFromIso15924Tag
harfbuzz.types.Script scriptFromIso15924Tag(harfbuzz.types.Tag tag)

Converts an ISO 15924 script tag to a corresponding #hb_script_t.

scriptFromString
harfbuzz.types.Script scriptFromString(ubyte[] str)

Converts a string str representing an ISO 15924 script tag to a corresponding #hb_script_t. Shorthand for harfbuzz.global.tagFromString then harfbuzz.global.scriptFromIso15924Tag.

scriptGetHorizontalDirection
harfbuzz.types.Direction scriptGetHorizontalDirection(harfbuzz.types.Script script)

Fetches the #hb_direction_t of a script when it is set horizontally. All right-to-left scripts will return #HB_DIRECTION_RTL. All left-to-right scripts will return #HB_DIRECTION_LTR. Scripts that can be written either horizontally or vertically will return #HB_DIRECTION_INVALID. Unknown scripts will return #HB_DIRECTION_LTR.

scriptToIso15924Tag
harfbuzz.types.Tag scriptToIso15924Tag(harfbuzz.types.Script script)

Converts an #hb_script_t to a corresponding ISO 15924 script tag.

segmentPropertiesEqual
harfbuzz.types.Bool segmentPropertiesEqual(harfbuzz.segment_properties.SegmentProperties a, harfbuzz.segment_properties.SegmentProperties b)

Checks the equality of two #hb_segment_properties_t's.

segmentPropertiesHash
uint segmentPropertiesHash(harfbuzz.segment_properties.SegmentProperties p)

Creates a hash representing p.

segmentPropertiesOverlay
void segmentPropertiesOverlay(harfbuzz.segment_properties.SegmentProperties p, harfbuzz.segment_properties.SegmentProperties src)

Fills in missing fields of p from src in a considered manner.

setAdd
void setAdd(harfbuzz.set.Set set, harfbuzz.types.Codepoint codepoint)

Adds codepoint to set.

setAddRange
void setAddRange(harfbuzz.set.Set set, harfbuzz.types.Codepoint first, harfbuzz.types.Codepoint last)

Adds all of the elements from first to last (inclusive) to set.

setAddSortedArray
void setAddSortedArray(harfbuzz.set.Set set, harfbuzz.types.Codepoint[] sortedCodepoints)

Adds num_codepoints codepoints to a set at once. The codepoints array must be in increasing order, with size at least num_codepoints.

setAllocationSuccessful
harfbuzz.types.Bool setAllocationSuccessful(harfbuzz.set.Set set)

Tests whether memory allocation for a set was successful.

setClear
void setClear(harfbuzz.set.Set set)

Clears out the contents of a set.

setCopy
harfbuzz.set.Set setCopy(harfbuzz.set.Set set)

Allocate a copy of set.

setCreate
harfbuzz.set.Set setCreate()

Creates a new, initially empty set.

setDel
void setDel(harfbuzz.set.Set set, harfbuzz.types.Codepoint codepoint)

Removes codepoint from set.

setDelRange
void setDelRange(harfbuzz.set.Set set, harfbuzz.types.Codepoint first, harfbuzz.types.Codepoint last)

Removes all of the elements from first to last (inclusive) from set.

setGetEmpty
harfbuzz.set.Set setGetEmpty()

Fetches the singleton empty #hb_set_t.

setGetMax
harfbuzz.types.Codepoint setGetMax(harfbuzz.set.Set set)

Finds the largest element in the set.

setGetMin
harfbuzz.types.Codepoint setGetMin(harfbuzz.set.Set set)

Finds the smallest element in the set.

setGetPopulation
uint setGetPopulation(harfbuzz.set.Set set)

Returns the number of elements in the set.

setHas
harfbuzz.types.Bool setHas(harfbuzz.set.Set set, harfbuzz.types.Codepoint codepoint)

Tests whether codepoint belongs to set.

setHash
uint setHash(harfbuzz.set.Set set)

Creates a hash representing set.

setIntersect
void setIntersect(harfbuzz.set.Set set, harfbuzz.set.Set other)

Makes set the intersection of set and other.

setInvert
void setInvert(harfbuzz.set.Set set)

Inverts the contents of set.

setIsEmpty
harfbuzz.types.Bool setIsEmpty(harfbuzz.set.Set set)

Tests whether a set is empty (contains no elements).

setIsEqual
harfbuzz.types.Bool setIsEqual(harfbuzz.set.Set set, harfbuzz.set.Set other)

Tests whether set and other are equal (contain the same elements).

setIsInverted
harfbuzz.types.Bool setIsInverted(harfbuzz.set.Set set)

Returns whether the set is inverted.

setIsSubset
harfbuzz.types.Bool setIsSubset(harfbuzz.set.Set set, harfbuzz.set.Set largerSet)

Tests whether set is a subset of larger_set.

setNext
harfbuzz.types.Bool setNext(harfbuzz.set.Set set, harfbuzz.types.Codepoint codepoint)

Fetches the next element in set that is greater than current value of codepoint.

setNextMany
uint setNextMany(harfbuzz.set.Set set, harfbuzz.types.Codepoint codepoint, harfbuzz.types.Codepoint[] out_)

Finds the next element in set that is greater than codepoint. Writes out codepoints to out, until either the set runs out of elements, or size codepoints are written, whichever comes first.

setNextRange
harfbuzz.types.Bool setNextRange(harfbuzz.set.Set set, harfbuzz.types.Codepoint first, harfbuzz.types.Codepoint last)

Fetches the next consecutive range of elements in set that are greater than current value of last.

setPrevious
harfbuzz.types.Bool setPrevious(harfbuzz.set.Set set, harfbuzz.types.Codepoint codepoint)

Fetches the previous element in set that is lower than current value of codepoint.

setPreviousRange
harfbuzz.types.Bool setPreviousRange(harfbuzz.set.Set set, harfbuzz.types.Codepoint first, harfbuzz.types.Codepoint last)

Fetches the previous consecutive range of elements in set that are greater than current value of last.

setSet
void setSet(harfbuzz.set.Set set, harfbuzz.set.Set other)

Makes the contents of set equal to the contents of other.

setSubtract
void setSubtract(harfbuzz.set.Set set, harfbuzz.set.Set other)

Subtracts the contents of other from set.

setSymmetricDifference
void setSymmetricDifference(harfbuzz.set.Set set, harfbuzz.set.Set other)

Makes set the symmetric difference of set and other.

setUnion
void setUnion(harfbuzz.set.Set set, harfbuzz.set.Set other)

Makes set the union of set and other.

shape
void shape(harfbuzz.font.Font font, harfbuzz.buffer.Buffer buffer, harfbuzz.feature.Feature[] features)

Shapes buffer using font turning its Unicode characters content to positioned glyphs. If features is not NULL, it will be used to control the features applied during shaping. If two features have the same tag but overlapping ranges the value of the feature with the higher index takes precedence.

shapeFull
harfbuzz.types.Bool shapeFull(harfbuzz.font.Font font, harfbuzz.buffer.Buffer buffer, harfbuzz.feature.Feature[] features, string[] shaperList)

See harfbuzz.global.shape for details. If shaper_list is not NULL, the specified shapers will be used in the given order, otherwise the default shapers list will be used.

shapeJustify
harfbuzz.types.Bool shapeJustify(harfbuzz.font.Font font, harfbuzz.buffer.Buffer buffer, harfbuzz.feature.Feature[] features, string[] shaperList, float minTargetAdvance, float maxTargetAdvance, float advance, harfbuzz.types.Tag varTag, float varValue)

See harfbuzz.global.shapeFull for basic details. If shaper_list is not NULL, the specified shapers will be used in the given order, otherwise the default shapers list will be used.

shapeListShapers
string[] shapeListShapers()

Retrieves the list of shapers supported by HarfBuzz.

shapePlanCreate
harfbuzz.shape_plan.ShapePlan shapePlanCreate(harfbuzz.face.Face face, harfbuzz.segment_properties.SegmentProperties props, harfbuzz.feature.Feature[] userFeatures, string[] shaperList)

Constructs a shaping plan for a combination of face, user_features, props, and shaper_list.

shapePlanCreate2
harfbuzz.shape_plan.ShapePlan shapePlanCreate2(harfbuzz.face.Face face, harfbuzz.segment_properties.SegmentProperties props, harfbuzz.feature.Feature[] userFeatures, int[] coords, string[] shaperList)

The variable-font version of #hb_shape_plan_create. Constructs a shaping plan for a combination of face, user_features, props, and shaper_list, plus the variation-space coordinates coords.

shapePlanCreateCached
harfbuzz.shape_plan.ShapePlan shapePlanCreateCached(harfbuzz.face.Face face, harfbuzz.segment_properties.SegmentProperties props, harfbuzz.feature.Feature[] userFeatures, string[] shaperList)

Creates a cached shaping plan suitable for reuse, for a combination of face, user_features, props, and shaper_list.

shapePlanCreateCached2
harfbuzz.shape_plan.ShapePlan shapePlanCreateCached2(harfbuzz.face.Face face, harfbuzz.segment_properties.SegmentProperties props, harfbuzz.feature.Feature[] userFeatures, int[] coords, string[] shaperList)

The variable-font version of #hb_shape_plan_create_cached. Creates a cached shaping plan suitable for reuse, for a combination of face, user_features, props, and shaper_list, plus the variation-space coordinates coords.

shapePlanExecute
harfbuzz.types.Bool shapePlanExecute(harfbuzz.shape_plan.ShapePlan shapePlan, harfbuzz.font.Font font, harfbuzz.buffer.Buffer buffer, harfbuzz.feature.Feature[] features)

Executes the given shaping plan on the specified buffer, using the given font and features.

shapePlanGetEmpty
harfbuzz.shape_plan.ShapePlan shapePlanGetEmpty()

Fetches the singleton empty shaping plan.

shapePlanGetShaper
string shapePlanGetShaper(harfbuzz.shape_plan.ShapePlan shapePlan)

Fetches the shaper from a given shaping plan.

styleGetValue
float styleGetValue(harfbuzz.font.Font font, harfbuzz.types.StyleTag styleTag)

Searches variation axes of a #hb_font_t object for a specific axis first, if not set, then tries to get default style values from different tables of the font.

tagFromString
harfbuzz.types.Tag tagFromString(ubyte[] str)

Converts a string into an #hb_tag_t. Valid tags are four characters. Shorter input strings will be padded with spaces. Longer input strings will be truncated.

unicodeCombiningClass
harfbuzz.types.UnicodeCombiningClass unicodeCombiningClass(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.Codepoint unicode)

Retrieves the Canonical Combining Class (ccc) property of code point unicode.

unicodeCompose
harfbuzz.types.Bool unicodeCompose(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.Codepoint a, harfbuzz.types.Codepoint b, harfbuzz.types.Codepoint ab)

Fetches the composition of a sequence of two Unicode code points.

unicodeDecompose
harfbuzz.types.Bool unicodeDecompose(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.Codepoint ab, harfbuzz.types.Codepoint a, harfbuzz.types.Codepoint b)

Fetches the decomposition of a Unicode code point.

unicodeDecomposeCompatibility
uint unicodeDecomposeCompatibility(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.Codepoint u, harfbuzz.types.Codepoint decomposed)

Fetches the compatibility decomposition of a Unicode code point. Deprecated.

unicodeEastasianWidth
uint unicodeEastasianWidth(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.Codepoint unicode)

Don't use. Not used by HarfBuzz.

unicodeFuncsCreate
harfbuzz.unicode_funcs.UnicodeFuncs unicodeFuncsCreate(harfbuzz.unicode_funcs.UnicodeFuncs parent)

Creates a new #hb_unicode_funcs_t structure of Unicode functions.

unicodeFuncsGetDefault
harfbuzz.unicode_funcs.UnicodeFuncs unicodeFuncsGetDefault()

Fetches a pointer to the default Unicode-functions structure that is used when no functions are explicitly set on #hb_buffer_t.

unicodeFuncsGetEmpty
harfbuzz.unicode_funcs.UnicodeFuncs unicodeFuncsGetEmpty()

Fetches the singleton empty Unicode-functions structure.

unicodeFuncsGetParent
harfbuzz.unicode_funcs.UnicodeFuncs unicodeFuncsGetParent(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs)

Fetches the parent of the Unicode-functions structure ufuncs.

unicodeFuncsIsImmutable
harfbuzz.types.Bool unicodeFuncsIsImmutable(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs)

Tests whether the specified Unicode-functions structure is immutable.

unicodeFuncsMakeImmutable
void unicodeFuncsMakeImmutable(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs)

Makes the specified Unicode-functions structure immutable.

unicodeFuncsSetCombiningClassFunc
void unicodeFuncsSetCombiningClassFunc(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.UnicodeCombiningClassFunc func)

Sets the implementation function for #hb_unicode_combining_class_func_t.

unicodeFuncsSetComposeFunc
void unicodeFuncsSetComposeFunc(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.UnicodeComposeFunc func)

Sets the implementation function for #hb_unicode_compose_func_t.

unicodeFuncsSetDecomposeFunc
void unicodeFuncsSetDecomposeFunc(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.UnicodeDecomposeFunc func)

Sets the implementation function for #hb_unicode_decompose_func_t.

unicodeFuncsSetEastasianWidthFunc
void unicodeFuncsSetEastasianWidthFunc(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.UnicodeEastasianWidthFunc func)

Sets the implementation function for #hb_unicode_eastasian_width_func_t.

unicodeFuncsSetGeneralCategoryFunc
void unicodeFuncsSetGeneralCategoryFunc(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.UnicodeGeneralCategoryFunc func)

Sets the implementation function for #hb_unicode_general_category_func_t.

unicodeFuncsSetMirroringFunc
void unicodeFuncsSetMirroringFunc(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.UnicodeMirroringFunc func)

Sets the implementation function for #hb_unicode_mirroring_func_t.

unicodeFuncsSetScriptFunc
void unicodeFuncsSetScriptFunc(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.UnicodeScriptFunc func)

Sets the implementation function for #hb_unicode_script_func_t.

unicodeGeneralCategory
harfbuzz.types.UnicodeGeneralCategory unicodeGeneralCategory(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.Codepoint unicode)

Retrieves the General Category (gc) property of code point unicode.

unicodeMirroring
harfbuzz.types.Codepoint unicodeMirroring(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.Codepoint unicode)

Retrieves the Bi-directional Mirroring Glyph code point defined for code point unicode.

unicodeScript
harfbuzz.types.Script unicodeScript(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.Codepoint unicode)

Retrieves the #hb_script_t script to which code point unicode belongs.

variationFromString
harfbuzz.types.Bool variationFromString(ubyte[] str, harfbuzz.variation.Variation variation)

Parses a string into a #hb_variation_t.