harfbuzz.global

Global functions for harfbuzz0 library

fn aatLayoutFeatureTypeGetNameId aatLayoutFeatureTypeGetSelectorInfos aatLayoutGetFeatureTypes aatLayoutHasPositioning aatLayoutHasSubstitution aatLayoutHasTracking blobCopyWritableOrFail blobCreateFromFile blobCreateFromFileOrFail blobCreateSubBlob blobGetData blobGetDataWritable blobGetEmpty blobGetLength blobIsImmutable blobMakeImmutable bufferAdd bufferAddCodepoints bufferAddLatin1 bufferAddUtf16 bufferAddUtf32 bufferAddUtf8 bufferAllocationSuccessful bufferAppend bufferClearContents bufferCreate bufferCreateSimilar bufferDeserializeGlyphs bufferDeserializeUnicode bufferDiff bufferGetClusterLevel bufferGetContentType bufferGetDirection bufferGetEmpty bufferGetFlags bufferGetGlyphInfos bufferGetGlyphPositions bufferGetInvisibleGlyph bufferGetLanguage bufferGetLength bufferGetNotFoundGlyph bufferGetReplacementCodepoint bufferGetScript bufferGetSegmentProperties bufferGetUnicodeFuncs bufferGuessSegmentProperties bufferHasPositions bufferNormalizeGlyphs bufferPreAllocate bufferReset bufferReverse bufferReverseClusters bufferReverseRange bufferSerializeFormatFromString bufferSerializeFormatToString bufferSerializeListFormats bufferSetClusterLevel bufferSetContentType bufferSetDirection bufferSetFlags bufferSetInvisibleGlyph bufferSetLanguage bufferSetLength bufferSetMessageFunc bufferSetNotFoundGlyph bufferSetReplacementCodepoint bufferSetScript bufferSetSegmentProperties bufferSetUnicodeFuncs colorGetAlpha colorGetBlue colorGetGreen colorGetRed colorLineGetColorStops colorLineGetExtend directionFromString directionToString drawClosePath drawCubicTo drawFuncsCreate drawFuncsGetEmpty drawFuncsIsImmutable drawFuncsMakeImmutable drawFuncsSetClosePathFunc drawFuncsSetCubicToFunc drawFuncsSetLineToFunc drawFuncsSetMoveToFunc drawFuncsSetQuadraticToFunc drawLineTo drawMoveTo drawQuadraticTo faceBuilderAddTable faceBuilderCreate faceBuilderSortTables faceCount faceCreate faceCreateForTables faceGetEmpty faceGetGlyphCount faceGetIndex faceGetTableTags faceGetUpem faceIsImmutable faceMakeImmutable faceReferenceBlob faceReferenceTable faceSetGlyphCount faceSetIndex faceSetUpem featureFromString fontAddGlyphOriginForDirection fontChanged fontCreate fontCreateSubFont fontDrawGlyph fontFuncsCreate fontFuncsGetEmpty fontFuncsIsImmutable fontFuncsMakeImmutable fontFuncsSetDrawGlyphFunc fontFuncsSetFontHExtentsFunc fontFuncsSetFontVExtentsFunc fontFuncsSetGlyphContourPointFunc fontFuncsSetGlyphExtentsFunc fontFuncsSetGlyphFromNameFunc fontFuncsSetGlyphFunc fontFuncsSetGlyphHAdvanceFunc fontFuncsSetGlyphHKerningFunc fontFuncsSetGlyphHOriginFunc fontFuncsSetGlyphNameFunc fontFuncsSetGlyphShapeFunc fontFuncsSetGlyphVAdvanceFunc fontFuncsSetGlyphVKerningFunc fontFuncsSetGlyphVOriginFunc fontFuncsSetNominalGlyphFunc fontFuncsSetPaintGlyphFunc fontFuncsSetVariationGlyphFunc fontGetEmpty fontGetExtentsForDirection fontGetFace fontGetGlyph fontGetGlyphAdvanceForDirection fontGetGlyphContourPoint fontGetGlyphContourPointForOrigin fontGetGlyphExtents fontGetGlyphExtentsForOrigin fontGetGlyphFromName fontGetGlyphHAdvance fontGetGlyphHKerning fontGetGlyphHOrigin fontGetGlyphKerningForDirection fontGetGlyphOriginForDirection fontGetGlyphShape fontGetGlyphVAdvance fontGetGlyphVKerning fontGetGlyphVOrigin fontGetHExtents fontGetNominalGlyph fontGetParent fontGetPpem fontGetPtem fontGetScale fontGetSerial fontGetSyntheticBold fontGetSyntheticSlant fontGetVarCoordsDesign fontGetVarCoordsNormalized fontGetVariationGlyph fontGetVarNamedInstance fontGetVExtents fontGlyphFromString fontIsImmutable fontMakeImmutable fontPaintGlyph fontSetFace fontSetParent fontSetPpem fontSetPtem fontSetScale fontSetSyntheticBold fontSetSyntheticSlant fontSetVarCoordsDesign fontSetVarCoordsNormalized fontSetVariation fontSetVariations fontSetVarNamedInstance fontSubtractGlyphOriginForDirection ftFaceCreateCached ftFaceCreateReferenced ftFontChanged ftFontCreateReferenced ftFontGetLoadFlags ftFontSetFuncs ftFontSetLoadFlags ftHbFontChanged glibBlobCreate glibGetUnicodeFuncs glibScriptFromScript glibScriptToScript glyphInfoGetGlyphFlags languageFromString languageGetDefault languageMatches languageToString mapAllocationSuccessful mapClear mapCopy mapCreate mapDel mapGet mapGetEmpty mapGetPopulation mapHas mapHash mapIsEmpty mapIsEqual mapKeys mapNext mapSet mapUpdate mapValues otColorGlyphGetLayers otColorGlyphHasPaint otColorGlyphReferencePng otColorGlyphReferenceSvg otColorHasLayers otColorHasPaint otColorHasPalettes otColorHasPng otColorHasSvg otColorPaletteColorGetNameId otColorPaletteGetColors otColorPaletteGetCount otColorPaletteGetFlags otColorPaletteGetNameId otFontSetFuncs otLayoutFeatureGetCharacters otLayoutFeatureGetLookups otLayoutFeatureGetNameIds otLayoutFeatureWithVariationsGetLookups otLayoutGetAttachPoints otLayoutGetBaseline otLayoutGetBaseline2 otLayoutGetBaselineWithFallback otLayoutGetBaselineWithFallback2 otLayoutGetFontExtents otLayoutGetFontExtents2 otLayoutGetGlyphClass otLayoutGetHorizontalBaselineTagForScript otLayoutGetLigatureCarets otLayoutGetSizeParams otLayoutHasGlyphClasses otLayoutHasPositioning otLayoutHasSubstitution otLayoutLanguageFindFeature otLayoutLanguageGetFeatureIndexes otLayoutLanguageGetFeatureTags otLayoutLanguageGetRequiredFeature otLayoutLanguageGetRequiredFeatureIndex otLayoutLookupGetGlyphAlternates otLayoutLookupGetOpticalBound otLayoutLookupWouldSubstitute otLayoutScriptFindLanguage otLayoutScriptGetLanguageTags otLayoutScriptSelectLanguage otLayoutScriptSelectLanguage2 otLayoutTableFindFeatureVariations otLayoutTableFindScript otLayoutTableGetFeatureTags otLayoutTableGetLookupCount otLayoutTableGetScriptTags otLayoutTableSelectScript otMathGetConstant otMathGetGlyphAssembly otMathGetGlyphItalicsCorrection otMathGetGlyphKerning otMathGetGlyphKernings otMathGetGlyphTopAccentAttachment otMathGetGlyphVariants otMathGetMinConnectorOverlap otMathHasData otMathIsGlyphExtendedShape otMetaReferenceEntry otMetricsGetPosition otMetricsGetPositionWithFallback otMetricsGetVariation otMetricsGetXVariation otMetricsGetYVariation otTagFromLanguage otTagsFromScript otTagsFromScriptAndLanguage otTagsToScriptAndLanguage otTagToLanguage otTagToScript otVarFindAxisInfo otVarGetAxes otVarGetAxisCount otVarGetAxisInfos otVarGetNamedInstanceCount otVarHasData otVarNamedInstanceGetDesignCoords otVarNamedInstanceGetPostscriptNameId otVarNamedInstanceGetSubfamilyNameId otVarNormalizeCoords paintColor paintColorGlyph paintCustomPaletteColor paintFuncsCreate paintFuncsGetEmpty paintFuncsIsImmutable paintFuncsMakeImmutable paintFuncsSetColorFunc paintFuncsSetColorGlyphFunc paintFuncsSetCustomPaletteColorFunc paintFuncsSetImageFunc paintFuncsSetLinearGradientFunc paintFuncsSetPopClipFunc paintFuncsSetPopGroupFunc paintFuncsSetPopTransformFunc paintFuncsSetPushClipGlyphFunc paintFuncsSetPushClipRectangleFunc paintFuncsSetPushGroupFunc paintFuncsSetPushTransformFunc paintFuncsSetRadialGradientFunc paintFuncsSetSweepGradientFunc paintImage paintLinearGradient paintPopClip paintPopGroup paintPopTransform paintPushClipGlyph paintPushClipRectangle paintPushGroup paintPushTransform paintRadialGradient paintSweepGradient scriptFromIso15924Tag scriptFromString scriptGetHorizontalDirection scriptToIso15924Tag segmentPropertiesEqual segmentPropertiesHash segmentPropertiesOverlay setAdd setAddRange setAddSortedArray setAllocationSuccessful setClear setCopy setCreate setDel setDelRange setGetEmpty setGetMax setGetMin setGetPopulation setHas setHash setIntersect setInvert setIsEmpty setIsEqual setIsInverted setIsSubset setNext setNextMany setNextRange setPrevious setPreviousRange setSet setSubtract setSymmetricDifference setUnion shape shapeFull shapeJustify shapeListShapers shapePlanCreate shapePlanCreate2 shapePlanCreateCached shapePlanCreateCached2 shapePlanExecute shapePlanGetEmpty shapePlanGetShaper styleGetValue tagFromString unicodeCombiningClass unicodeCompose unicodeDecompose unicodeDecomposeCompatibility unicodeEastasianWidth unicodeFuncsCreate unicodeFuncsGetDefault unicodeFuncsGetEmpty unicodeFuncsGetParent unicodeFuncsIsImmutable unicodeFuncsMakeImmutable unicodeFuncsSetCombiningClassFunc unicodeFuncsSetComposeFunc unicodeFuncsSetDecomposeFunc unicodeFuncsSetEastasianWidthFunc unicodeFuncsSetGeneralCategoryFunc unicodeFuncsSetMirroringFunc unicodeFuncsSetScriptFunc unicodeGeneralCategory unicodeMirroring unicodeScript variationFromString

Functions 408

fnharfbuzz.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.
fnuint aatLayoutFeatureTypeGetSelectorInfos(harfbuzz.face.Face face, harfbuzz.types.AatLayoutFeatureType featureType, uint startOffset, ref harfbuzz.types.AatLayoutFeatureSelectorInfo[] selectors, out uint defaultIndex)Fetches a list of the selectors available for the specified feature in the given face.
fnuint aatLayoutGetFeatureTypes(harfbuzz.face.Face face, uint startOffset, ref harfbuzz.types.AatLayoutFeatureType[] features)Fetches a list of the AAT feature types included in the specified face.
fnharfbuzz.types.Bool aatLayoutHasPositioning(harfbuzz.face.Face face)Tests whether the specified face includes any positioning information in the `kerx` table.
fnharfbuzz.types.Bool aatLayoutHasSubstitution(harfbuzz.face.Face face)Tests whether the specified face includes any substitutions in the `morx` or `mort` tables.
fnharfbuzz.types.Bool aatLayoutHasTracking(harfbuzz.face.Face face)Tests whether the specified face includes any tracking information in the `trak` table.
fnharfbuzz.blob.Blob blobCopyWritableOrFail(harfbuzz.blob.Blob blob)Makes a writable copy of blob.
fnharfbuzz.blob.Blob blobCreateFromFile(string fileName)Creates a new blob containing the data from the specified binary font file.
fnharfbuzz.blob.Blob blobCreateFromFileOrFail(string fileName)Creates a new blob containing the data from the specified binary font file.
fnharfbuzz.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 #HBMEMORYMODE_READONLY, meaning that it will never modify data in the parent blob. The parent data i...
fnstring blobGetData(harfbuzz.blob.Blob blob)Fetches the data from a blob.
fnstring blobGetDataWritable(harfbuzz.blob.Blob blob)Tries to make blob data writable (possibly copying it) and return pointer to data.
fnharfbuzz.blob.Blob blobGetEmpty()Returns the singleton empty blob.
fnuint blobGetLength(harfbuzz.blob.Blob blob)Fetches the length of a blob's data.
fnharfbuzz.types.Bool blobIsImmutable(harfbuzz.blob.Blob blob)Tests whether a blob is immutable.
fnvoid blobMakeImmutable(harfbuzz.blob.Blob blob)Makes a blob immutable.
fnvoid 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 t...
fnvoid bufferAddCodepoints(harfbuzz.buffer.Buffer buffer, harfbuzz.types.Codepoint[] text, uint itemOffset, int itemLength)Appends characters from text array to buffer. The itemoffset is the position of the first character from text that will be appended, and itemlength is the number of character. When shaping part of ...
fnvoid 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.
fnvoid bufferAddUtf16(harfbuzz.buffer.Buffer buffer, ushort[] text, uint itemOffset, int itemLength)See [harfbuzz.global.bufferAddCodepoints].
fnvoid bufferAddUtf32(harfbuzz.buffer.Buffer buffer, uint[] text, uint itemOffset, int itemLength)See [harfbuzz.global.bufferAddCodepoints].
fnvoid bufferAddUtf8(harfbuzz.buffer.Buffer buffer, ubyte[] text, uint itemOffset, int itemLength)See [harfbuzz.global.bufferAddCodepoints].
fnharfbuzz.types.Bool bufferAllocationSuccessful(harfbuzz.buffer.Buffer buffer)Check if allocating memory for the buffer succeeded.
fnvoid bufferAppend(harfbuzz.buffer.Buffer buffer, harfbuzz.buffer.Buffer source, uint start, uint end)Append (part of) contents of another buffer to this buffer.
fnvoid bufferClearContents(harfbuzz.buffer.Buffer buffer)Similar to [harfbuzz.global.bufferReset], but does not clear the Unicode functions and the replacement code point.
fnharfbuzz.buffer.Buffer bufferCreate()Creates a new #hbbuffert with all properties to defaults. Returns: A newly allocated #hbbuffert with a reference count of 1. The initial reference count should be released with [harfbuzz.global.buf...
fnharfbuzz.buffer.Buffer bufferCreateSimilar(harfbuzz.buffer.Buffer src)Creates a new #hbbuffert, similar to [harfbuzz.global.bufferCreate]. The only difference is that the buffer is configured similarly to src.
fnharfbuzz.types.Bool bufferDeserializeGlyphs(harfbuzz.buffer.Buffer buffer, string buf, out string endPtr, harfbuzz.font.Font font, harfbuzz.types.BufferSerializeFormat format)Deserializes glyphs buffer from textual representation in the format produced by [harfbuzz.global.bufferSerializeGlyphs].
fnharfbuzz.types.Bool bufferDeserializeUnicode(harfbuzz.buffer.Buffer buffer, string buf, out string endPtr, harfbuzz.types.BufferSerializeFormat format)Deserializes Unicode buffer from textual representation in the format produced by [harfbuzz.global.bufferSerializeUnicode].
fnharfbuzz.types.BufferDiffFlags bufferDiff(harfbuzz.buffer.Buffer buffer, harfbuzz.buffer.Buffer reference, harfbuzz.types.Codepoint dottedcircleGlyph, uint positionFuzz)If dottedcircleglyph is (hbcodepointt) -1 then #HBBUFFERDIFFFLAGDOTTEDCIRCLEPRESENT and #HBBUFFERDIFFFLAGNOTDEFPRESENT are never returned. This should be used by most callers if just comparing two...
fnharfbuzz.types.BufferClusterLevel bufferGetClusterLevel(harfbuzz.buffer.Buffer buffer)Fetches the cluster level of a buffer. The #hbbufferclusterlevelt dictates one aspect of how HarfBuzz will treat non-base characters during shaping.
fnharfbuzz.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).
fnharfbuzz.types.Direction bufferGetDirection(harfbuzz.buffer.Buffer buffer)See [harfbuzz.global.bufferSetDirection]
fnharfbuzz.buffer.Buffer bufferGetEmpty()Fetches an empty #hbbuffert. Returns: The empty buffer
fnharfbuzz.types.BufferFlags bufferGetFlags(harfbuzz.buffer.Buffer buffer)Fetches the #hbbufferflags_t of buffer.
fnharfbuzz.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.
fnharfbuzz.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.
fnharfbuzz.types.Codepoint bufferGetInvisibleGlyph(harfbuzz.buffer.Buffer buffer)See [harfbuzz.global.bufferSetInvisibleGlyph].
fnharfbuzz.types.Language bufferGetLanguage(harfbuzz.buffer.Buffer buffer)See [harfbuzz.global.bufferSetLanguage].
fnuint bufferGetLength(harfbuzz.buffer.Buffer buffer)Returns the number of items in the buffer.
fnharfbuzz.types.Codepoint bufferGetNotFoundGlyph(harfbuzz.buffer.Buffer buffer)See [harfbuzz.global.bufferSetNotFoundGlyph].
fnharfbuzz.types.Codepoint bufferGetReplacementCodepoint(harfbuzz.buffer.Buffer buffer)Fetches the #hbcodepointt that replaces invalid entries for a given encoding when adding text to buffer.
fnharfbuzz.types.Script bufferGetScript(harfbuzz.buffer.Buffer buffer)Fetches the script of buffer.
fnvoid bufferGetSegmentProperties(harfbuzz.buffer.Buffer buffer, out harfbuzz.segment_properties.SegmentProperties props)Sets props to the #hbsegmentproperties_t of buffer.
fnharfbuzz.unicode_funcs.UnicodeFuncs bufferGetUnicodeFuncs(harfbuzz.buffer.Buffer buffer)Fetches the Unicode-functions structure of a buffer.
fnvoid 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 #HBBUFFERCONTENTTYPEUNICODE.
fnharfbuzz.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.buffe...
fnvoid 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.
fnharfbuzz.types.Bool bufferPreAllocate(harfbuzz.buffer.Buffer buffer, uint size)Pre allocates memory for buffer to fit at least size number of items.
fnvoid bufferReset(harfbuzz.buffer.Buffer buffer)Resets the buffer to its initial status, as if it was just newly created with [harfbuzz.global.bufferCreate].
fnvoid bufferReverse(harfbuzz.buffer.Buffer buffer)Reverses buffer contents.
fnvoid 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.
fnvoid bufferReverseRange(harfbuzz.buffer.Buffer buffer, uint start, uint end)Reverses buffer contents between start and end.
fnharfbuzz.types.BufferSerializeFormat bufferSerializeFormatFromString(ubyte[] str)Parses a string into an #hbbufferserializeformatt. Does not check if str is a valid buffer serialization format, use [harfbuzz.global.bufferSerializeListFormats] to get the list of supported formats.
fnstring bufferSerializeFormatToString(harfbuzz.types.BufferSerializeFormat format)Converts format to the string corresponding it, or `NULL` if it is not a valid #hbbufferserializeformatt.
fnstring[] bufferSerializeListFormats()Returns a list of supported buffer serialization formats. Returns: A string array of buffer serialization formats. Should not be freed.
fnvoid bufferSetClusterLevel(harfbuzz.buffer.Buffer buffer, harfbuzz.types.BufferClusterLevel clusterLevel)Sets the cluster level of a buffer. The #hbbufferclusterlevelt dictates one aspect of how HarfBuzz will treat non-base characters during shaping.
fnvoid 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).
fnvoid 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 r...
fnvoid bufferSetFlags(harfbuzz.buffer.Buffer buffer, harfbuzz.types.BufferFlags flags)Sets buffer flags to flags. See #hbbufferflags_t.
fnvoid bufferSetInvisibleGlyph(harfbuzz.buffer.Buffer buffer, harfbuzz.types.Codepoint invisible)Sets the #hbcodepointt 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.
fnvoid bufferSetLanguage(harfbuzz.buffer.Buffer buffer, harfbuzz.types.Language language)Sets the language of buffer to language.
fnharfbuzz.types.Bool bufferSetLength(harfbuzz.buffer.Buffer buffer, uint length)Similar to [harfbuzz.global.bufferPreAllocate], but clears any new items added at the end.
fnvoid bufferSetMessageFunc(harfbuzz.buffer.Buffer buffer, harfbuzz.types.BufferMessageFunc func)Sets the implementation function for #hbbuffermessagefunct.
fnvoid bufferSetNotFoundGlyph(harfbuzz.buffer.Buffer buffer, harfbuzz.types.Codepoint notFound)Sets the #hbcodepointt that replaces characters not found in the font during shaping.
fnvoid bufferSetReplacementCodepoint(harfbuzz.buffer.Buffer buffer, harfbuzz.types.Codepoint replacement)Sets the #hbcodepointt that replaces invalid entries for a given encoding when adding text to buffer.
fnvoid bufferSetScript(harfbuzz.buffer.Buffer buffer, harfbuzz.types.Script script)Sets the script of buffer to script.
fnvoid 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.
fnvoid bufferSetUnicodeFuncs(harfbuzz.buffer.Buffer buffer, harfbuzz.unicode_funcs.UnicodeFuncs unicodeFuncs)Sets the Unicode-functions structure of a buffer to unicode_funcs.
fnubyte colorGetAlpha(harfbuzz.types.Color color)Fetches the alpha channel of the given color.
fnubyte colorGetBlue(harfbuzz.types.Color color)Fetches the blue channel of the given color.
fnubyte colorGetGreen(harfbuzz.types.Color color)Fetches the green channel of the given color.
fnubyte colorGetRed(harfbuzz.types.Color color)Fetches the red channel of the given color.
fnuint colorLineGetColorStops(harfbuzz.color_line.ColorLine colorLine, uint start, ref harfbuzz.types.ColorStop[] colorStops)Fetches a list of color stops from the given color line object.
fnharfbuzz.types.PaintExtend colorLineGetExtend(harfbuzz.color_line.ColorLine colorLine)Fetches the extend mode of the color line object.
fnharfbuzz.types.Direction directionFromString(ubyte[] str)Converts a string to an #hbdirectiont.
fnstring directionToString(harfbuzz.types.Direction direction)Converts an #hbdirectiont to a string.
fnvoid drawClosePath(harfbuzz.draw_funcs.DrawFuncs dfuncs, void * drawData, harfbuzz.draw_state.DrawState st)Perform a "close-path" draw operation.
fnvoid 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.
fnharfbuzz.draw_funcs.DrawFuncs drawFuncsCreate()Creates a new draw callbacks object. Returns: A newly allocated #hbdrawfuncst with a reference count of 1. The initial reference count should be released with hbdrawfuncsdestroy when you are done u...
fnharfbuzz.draw_funcs.DrawFuncs drawFuncsGetEmpty()Fetches the singleton empty draw-functions structure. Returns: The empty draw-functions structure
fnharfbuzz.types.Bool drawFuncsIsImmutable(harfbuzz.draw_funcs.DrawFuncs dfuncs)Checks whether dfuncs is immutable.
fnvoid drawFuncsMakeImmutable(harfbuzz.draw_funcs.DrawFuncs dfuncs)Makes dfuncs object immutable.
fnvoid drawFuncsSetClosePathFunc(harfbuzz.draw_funcs.DrawFuncs dfuncs, harfbuzz.types.DrawClosePathFunc func)Sets close-path callback to the draw functions object.
fnvoid drawFuncsSetCubicToFunc(harfbuzz.draw_funcs.DrawFuncs dfuncs, harfbuzz.types.DrawCubicToFunc func)Sets cubic-to callback to the draw functions object.
fnvoid drawFuncsSetLineToFunc(harfbuzz.draw_funcs.DrawFuncs dfuncs, harfbuzz.types.DrawLineToFunc func)Sets line-to callback to the draw functions object.
fnvoid drawFuncsSetMoveToFunc(harfbuzz.draw_funcs.DrawFuncs dfuncs, harfbuzz.types.DrawMoveToFunc func)Sets move-to callback to the draw functions object.
fnvoid drawFuncsSetQuadraticToFunc(harfbuzz.draw_funcs.DrawFuncs dfuncs, harfbuzz.types.DrawQuadraticToFunc func)Sets quadratic-to callback to the draw functions object.
fnvoid drawLineTo(harfbuzz.draw_funcs.DrawFuncs dfuncs, void * drawData, harfbuzz.draw_state.DrawState st, float toX, float toY)Perform a "line-to" draw operation.
fnvoid drawMoveTo(harfbuzz.draw_funcs.DrawFuncs dfuncs, void * drawData, harfbuzz.draw_state.DrawState st, float toX, float toY)Perform a "move-to" draw operation.
fnvoid 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.
fnharfbuzz.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].
fnharfbuzz.face.Face faceBuilderCreate()Creates a #hbfacet 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.faceReferenc...
fnvoid 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.
fnuint faceCount(harfbuzz.blob.Blob blob)Fetches the number of faces in a blob.
fnharfbuzz.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.
fnharfbuzz.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.globa...
fnharfbuzz.face.Face faceGetEmpty()Fetches the singleton empty face object. Returns: The empty face object
fnuint faceGetGlyphCount(harfbuzz.face.Face face)Fetches the glyph-count value of the specified face object.
fnuint faceGetIndex(harfbuzz.face.Face face)Fetches the face-index corresponding to the given face.
fnuint faceGetTableTags(harfbuzz.face.Face face, uint startOffset, ref 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
fnuint faceGetUpem(harfbuzz.face.Face face)Fetches the units-per-em (UPEM) value of the specified face object.
fnharfbuzz.types.Bool faceIsImmutable(harfbuzz.face.Face face)Tests whether the given face object is immutable.
fnvoid faceMakeImmutable(harfbuzz.face.Face face)Makes the given face object immutable.
fnharfbuzz.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.
fnharfbuzz.blob.Blob faceReferenceTable(harfbuzz.face.Face face, harfbuzz.types.Tag tag)Fetches a reference to the specified table within the specified face.
fnvoid faceSetGlyphCount(harfbuzz.face.Face face, uint glyphCount)Sets the glyph count for a face object to the specified value.
fnvoid faceSetIndex(harfbuzz.face.Face face, uint index)Assigns the specified face-index to face. Fails if the face is immutable.
fnvoid faceSetUpem(harfbuzz.face.Face face, uint upem)Sets the units-per-em (upem) for a face object to the specified value.
fnharfbuzz.types.Bool featureFromString(ubyte[] str, out harfbuzz.feature.Feature feature)Parses a string into a #hbfeaturet.
fnvoid fontAddGlyphOriginForDirection(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.Direction direction, ref harfbuzz.types.Position x, ref harfbuzz.types.Position y)Adds the origin coordinates to an (X,Y) point coordinate, in the specified glyph ID in the specified font.
fnvoid 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.
fnharfbuzz.font.Font fontCreate(harfbuzz.face.Face face)Constructs a new font object from the specified face.
fnharfbuzz.font.Font fontCreateSubFont(harfbuzz.font.Font parent)Constructs a sub-font font object from the specified parent font, replicating the parent's properties.
fnvoid fontDrawGlyph(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.draw_funcs.DrawFuncs dfuncs, void * drawData = null)Draws the outline that corresponds to a glyph in the specified font.
fnharfbuzz.font_funcs.FontFuncs fontFuncsCreate()Creates a new #hbfontfuncs_t structure of font functions. Returns: The font-functions structure
fnharfbuzz.font_funcs.FontFuncs fontFuncsGetEmpty()Fetches an empty font-functions structure. Returns: The font-functions structure
fnharfbuzz.types.Bool fontFuncsIsImmutable(harfbuzz.font_funcs.FontFuncs ffuncs)Tests whether a font-functions structure is immutable.
fnvoid fontFuncsMakeImmutable(harfbuzz.font_funcs.FontFuncs ffuncs)Makes a font-functions structure immutable.
fnvoid fontFuncsSetDrawGlyphFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontDrawGlyphFunc func)Sets the implementation function for #hbfontdrawglyphfunc_t.
fnvoid fontFuncsSetFontHExtentsFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetFontHExtentsFunc func)Sets the implementation function for #hbfontgetfonthextentsfunc_t.
fnvoid fontFuncsSetFontVExtentsFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetFontVExtentsFunc func)Sets the implementation function for #hbfontgetfontvextentsfunc_t.
fnvoid fontFuncsSetGlyphContourPointFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphContourPointFunc func)Sets the implementation function for #hbfontgetglyphcontourpointfunc_t.
fnvoid fontFuncsSetGlyphExtentsFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphExtentsFunc func)Sets the implementation function for #hbfontgetglyphextentsfunct.
fnvoid fontFuncsSetGlyphFromNameFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphFromNameFunc func)Sets the implementation function for #hbfontgetglyphfromnamefunc_t.
fnvoid fontFuncsSetGlyphFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphFunc func)Deprecated. Use [harfbuzz.global.fontFuncsSetNominalGlyphFunc] and [harfbuzz.global.fontFuncsSetVariationGlyphFunc] instead.
fnvoid fontFuncsSetGlyphHAdvanceFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphHAdvanceFunc func)Sets the implementation function for #hbfontgetglyphhadvancefunc_t.
fnvoid fontFuncsSetGlyphHKerningFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphHKerningFunc func)Sets the implementation function for #hbfontgetglyphhkerningfunc_t.
fnvoid fontFuncsSetGlyphHOriginFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphHOriginFunc func)Sets the implementation function for #hbfontgetglyphhoriginfunc_t.
fnvoid fontFuncsSetGlyphNameFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphNameFunc func)Sets the implementation function for #hbfontgetglyphnamefunct.
fnvoid fontFuncsSetGlyphShapeFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphShapeFunc func)Sets the implementation function for #hbfontgetglyphshapefunct, which is the same as #hbfontdrawglyphfunc_t.
fnvoid fontFuncsSetGlyphVAdvanceFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphVAdvanceFunc func)Sets the implementation function for #hbfontgetglyphvadvancefunc_t.
fnvoid fontFuncsSetGlyphVKerningFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphVKerningFunc func)Sets the implementation function for #hbfontgetglyphvkerningfunc_t.
fnvoid fontFuncsSetGlyphVOriginFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetGlyphVOriginFunc func)Sets the implementation function for #hbfontgetglyphvoriginfunc_t.
fnvoid fontFuncsSetNominalGlyphFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetNominalGlyphFunc func)Sets the implementation function for #hbfontgetnominalglyphfunct.
fnvoid fontFuncsSetPaintGlyphFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontPaintGlyphFunc func)Sets the implementation function for #hbfontpaintglyphfunc_t.
fnvoid fontFuncsSetVariationGlyphFunc(harfbuzz.font_funcs.FontFuncs ffuncs, harfbuzz.types.FontGetVariationGlyphFunc func)Sets the implementation function for #hbfontgetvariationglyphfunct.
fnharfbuzz.font.Font fontGetEmpty()Fetches the empty font object. Returns: The empty font object
fnvoid fontGetExtentsForDirection(harfbuzz.font.Font font, harfbuzz.types.Direction direction, out harfbuzz.types.FontExtents extents)Fetches the extents for a font in a text segment of the specified direction.
fnharfbuzz.face.Face fontGetFace(harfbuzz.font.Font font)Fetches the face associated with the specified font object.
fnharfbuzz.types.Bool fontGetGlyph(harfbuzz.font.Font font, harfbuzz.types.Codepoint unicode, harfbuzz.types.Codepoint variationSelector, out harfbuzz.types.Codepoint glyph)Fetches the glyph ID for a Unicode code point in the specified font, with an optional variation selector.
fnvoid fontGetGlyphAdvanceForDirection(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.Direction direction, out harfbuzz.types.Position x, out harfbuzz.types.Position y)Fetches the advance for a glyph ID from the specified font, in a text segment of the specified direction.
fnharfbuzz.types.Bool fontGetGlyphContourPoint(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, uint pointIndex, out harfbuzz.types.Position x, out harfbuzz.types.Position y)Fetches the (x,y) coordinates of a specified contour-point index in the specified glyph, within the specified font.
fnharfbuzz.types.Bool fontGetGlyphContourPointForOrigin(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, uint pointIndex, harfbuzz.types.Direction direction, out harfbuzz.types.Position x, out 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.
fnharfbuzz.types.Bool fontGetGlyphExtents(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, out harfbuzz.types.GlyphExtents extents)Fetches the #hbglyphextents_t data for a glyph ID in the specified font.
fnharfbuzz.types.Bool fontGetGlyphExtentsForOrigin(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.Direction direction, out harfbuzz.types.GlyphExtents extents)Fetches the #hbglyphextents_t data for a glyph ID in the specified font, with respect to the origin in a text segment in the specified direction.
fnharfbuzz.types.Bool fontGetGlyphFromName(harfbuzz.font.Font font, string name, out harfbuzz.types.Codepoint glyph)Fetches the glyph ID that corresponds to a name string in the specified font.
fnharfbuzz.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.
fnharfbuzz.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.
fnharfbuzz.types.Bool fontGetGlyphHOrigin(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, out harfbuzz.types.Position x, out harfbuzz.types.Position y)Fetches the (X,Y) coordinates of the origin for a glyph ID in the specified font, for horizontal text segments.
fnvoid fontGetGlyphKerningForDirection(harfbuzz.font.Font font, harfbuzz.types.Codepoint firstGlyph, harfbuzz.types.Codepoint secondGlyph, harfbuzz.types.Direction direction, out harfbuzz.types.Position x, out harfbuzz.types.Position y)Fetches the kerning-adjustment value for a glyph-pair in the specified font.
fnvoid fontGetGlyphOriginForDirection(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.Direction direction, out harfbuzz.types.Position x, out harfbuzz.types.Position y)Fetches the (X,Y) coordinates of the origin for a glyph in the specified font.
fnvoid fontGetGlyphShape(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.draw_funcs.DrawFuncs dfuncs, void * drawData = null)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.
fnharfbuzz.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.
fnharfbuzz.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.
fnharfbuzz.types.Bool fontGetGlyphVOrigin(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, out harfbuzz.types.Position x, out harfbuzz.types.Position y)Fetches the (X,Y) coordinates of the origin for a glyph ID in the specified font, for vertical text segments.
fnharfbuzz.types.Bool fontGetHExtents(harfbuzz.font.Font font, out harfbuzz.types.FontExtents extents)Fetches the extents for a specified font, for horizontal text segments.
fnharfbuzz.types.Bool fontGetNominalGlyph(harfbuzz.font.Font font, harfbuzz.types.Codepoint unicode, out harfbuzz.types.Codepoint glyph)Fetches the nominal glyph ID for a Unicode code point in the specified font.
fnharfbuzz.font.Font fontGetParent(harfbuzz.font.Font font)Fetches the parent font of font.
fnvoid fontGetPpem(harfbuzz.font.Font font, out uint xPpem, out uint yPpem)Fetches the horizontal and vertical points-per-em (ppem) of a font.
fnfloat fontGetPtem(harfbuzz.font.Font font)Fetches the "point size" of a font. Used in CoreText to implement optical sizing.
fnvoid fontGetScale(harfbuzz.font.Font font, out int xScale, out int yScale)Fetches the horizontal and vertical scale of a font.
fnuint 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.
fnvoid fontGetSyntheticBold(harfbuzz.font.Font font, out float xEmbolden, out float yEmbolden, out harfbuzz.types.Bool inPlace)Fetches the "synthetic boldness" parameters of a font.
fnfloat fontGetSyntheticSlant(harfbuzz.font.Font font)Fetches the "synthetic slant" of a font.
fnharfbuzz.types.Bool fontGetVExtents(harfbuzz.font.Font font, out harfbuzz.types.FontExtents extents)Fetches the extents for a specified font, for vertical text segments.
fnfloat[] fontGetVarCoordsDesign(harfbuzz.font.Font font)Fetches the list of variation coordinates (in design-space units) currently set on a font.
fnint[] fontGetVarCoordsNormalized(harfbuzz.font.Font font)Fetches the list of normalized variation coordinates currently set on a font.
fnuint fontGetVarNamedInstance(harfbuzz.font.Font font)Returns the currently-set named-instance index of the font.
fnharfbuzz.types.Bool fontGetVariationGlyph(harfbuzz.font.Font font, harfbuzz.types.Codepoint unicode, harfbuzz.types.Codepoint variationSelector, out 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.
fnharfbuzz.types.Bool fontGlyphFromString(harfbuzz.font.Font font, ubyte[] s, out 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.
fnharfbuzz.types.Bool fontIsImmutable(harfbuzz.font.Font font)Tests whether a font object is immutable.
fnvoid fontMakeImmutable(harfbuzz.font.Font font)Makes font immutable.
fnvoid 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.
fnvoid fontSetFace(harfbuzz.font.Font font, harfbuzz.face.Face face)Sets face as the font-face value of font.
fnvoid fontSetParent(harfbuzz.font.Font font, harfbuzz.font.Font parent)Sets the parent font of font.
fnvoid fontSetPpem(harfbuzz.font.Font font, uint xPpem, uint yPpem)Sets the horizontal and vertical pixels-per-em (PPEM) of a font.
fnvoid 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.
fnvoid fontSetScale(harfbuzz.font.Font font, int xScale, int yScale)Sets the horizontal and vertical scale of a font.
fnvoid fontSetSyntheticBold(harfbuzz.font.Font font, float xEmbolden, float yEmbolden, harfbuzz.types.Bool inPlace)Sets the "synthetic boldness" of a font.
fnvoid 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.
fnvoid fontSetVarCoordsDesign(harfbuzz.font.Font font, float[] coords)Applies a list of variation coordinates (in design-space units) to a font.
fnvoid fontSetVarCoordsNormalized(harfbuzz.font.Font font, int[] coords)Applies a list of variation coordinates (in normalized units) to a font.
fnvoid fontSetVarNamedInstance(harfbuzz.font.Font font, uint instanceIndex)Sets design coords of a font from a named-instance index.
fnvoid fontSetVariation(harfbuzz.font.Font font, harfbuzz.types.Tag tag, float value)Change the value of one variation axis on the font.
fnvoid fontSetVariations(harfbuzz.font.Font font, harfbuzz.variation.Variation[] variations)Applies a list of font-variation settings to a font.
fnvoid fontSubtractGlyphOriginForDirection(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.Direction direction, ref harfbuzz.types.Position x, ref harfbuzz.types.Position y)Subtracts the origin coordinates from an (X,Y) point coordinate, in the specified glyph ID in the specified font.
fnharfbuzz.face.Face ftFaceCreateCached(freetype2.types.Face ftFace)Creates an #hbfacet face object from the specified FT_Face.
fnharfbuzz.face.Face ftFaceCreateReferenced(freetype2.types.Face ftFace)Creates an #hbfacet face object from the specified FT_Face.
fnvoid ftFontChanged(harfbuzz.font.Font font)Refreshes the state of font when the underlying FTFace has changed. This function should be called after changing the size or variation-axis settings on the FTFace.
fnharfbuzz.font.Font ftFontCreateReferenced(freetype2.types.Face ftFace)Creates an #hbfontt font object from the specified FT_Face.
fnint ftFontGetLoadFlags(harfbuzz.font.Font font)Fetches the FTLoadGlyph load flags of the specified #hbfontt.
fnvoid ftFontSetFuncs(harfbuzz.font.Font font)Configures the font-functions structure of the specified #hbfontt font object to use FreeType font functions.
fnvoid ftFontSetLoadFlags(harfbuzz.font.Font font, int loadFlags)Sets the FTLoadGlyph load flags for the specified #hbfontt.
fnharfbuzz.types.Bool ftHbFontChanged(harfbuzz.font.Font font)Refreshes the state of the underlying FTFace of font when the hbfont_t font has changed. This function should be called after changing the size or variation-axis settings on the font. This call is ...
fnharfbuzz.blob.Blob glibBlobCreate(glib.bytes.Bytes gbytes)Creates an #hbblobt blob from the specified GBytes data structure.
fnharfbuzz.unicode_funcs.UnicodeFuncs glibGetUnicodeFuncs()Fetches a Unicode-functions structure that is populated with the appropriate GLib function for each method. Returns: a pointer to the #hbunicodefuncs_t Unicode-functions structure
fnglib.types.UnicodeScript glibScriptFromScript(harfbuzz.types.Script script)Fetches the GUnicodeScript identifier that corresponds to the specified #hbscriptt script.
fnharfbuzz.types.Script glibScriptToScript(glib.types.UnicodeScript script)Fetches the #hbscriptt script that corresponds to the specified GUnicodeScript identifier.
fnharfbuzz.types.GlyphFlags glyphInfoGetGlyphFlags(harfbuzz.glyph_info.GlyphInfo info)Returns glyph flags encoded within a #hbglyphinfo_t.
fnharfbuzz.types.Language languageFromString(ubyte[] str)Converts str representing a BCP 47 language tag to the corresponding #hblanguaget.
fnharfbuzz.types.Language languageGetDefault()Fetch the default language from current locale.
fnharfbuzz.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, "faIR.utf8" is a more specific tag for "fa" or for "faIR".
fnstring languageToString(harfbuzz.types.Language language)Converts an #hblanguaget to a string.
fnharfbuzz.types.Bool mapAllocationSuccessful(harfbuzz.map.Map map)Tests whether memory allocation for a set was successful.
fnvoid mapClear(harfbuzz.map.Map map)Clears out the contents of map.
fnharfbuzz.map.Map mapCopy(harfbuzz.map.Map map)Allocate a copy of map.
fnharfbuzz.map.Map mapCreate()Creates a new, initially empty map. Returns: The new #hbmapt
fnvoid mapDel(harfbuzz.map.Map map, harfbuzz.types.Codepoint key)Removes key and its stored value from map.
fnharfbuzz.types.Codepoint mapGet(harfbuzz.map.Map map, harfbuzz.types.Codepoint key)Fetches the value stored for key in map.
fnharfbuzz.map.Map mapGetEmpty()Fetches the singleton empty #hbmapt. Returns: The empty #hbmapt
fnuint mapGetPopulation(harfbuzz.map.Map map)Returns the number of key-value pairs in the map.
fnharfbuzz.types.Bool mapHas(harfbuzz.map.Map map, harfbuzz.types.Codepoint key)Tests whether key is an element of map.
fnuint mapHash(harfbuzz.map.Map map)Creates a hash representing map.
fnharfbuzz.types.Bool mapIsEmpty(harfbuzz.map.Map map)Tests whether map is empty (contains no elements).
fnharfbuzz.types.Bool mapIsEqual(harfbuzz.map.Map map, harfbuzz.map.Map other)Tests whether map and other are equal (contain the same elements).
fnvoid mapKeys(harfbuzz.map.Map map, harfbuzz.set.Set keys)Add the keys of map to keys.
fnharfbuzz.types.Bool mapNext(harfbuzz.map.Map map, ref int idx, out harfbuzz.types.Codepoint key, out harfbuzz.types.Codepoint value)Fetches the next key/value pair in map.
fnvoid mapSet(harfbuzz.map.Map map, harfbuzz.types.Codepoint key, harfbuzz.types.Codepoint value)Stores key:value in the map.
fnvoid mapUpdate(harfbuzz.map.Map map, harfbuzz.map.Map other)Add the contents of other to map.
fnvoid mapValues(harfbuzz.map.Map map, harfbuzz.set.Set values)Add the values of map to values.
fnuint otColorGlyphGetLayers(harfbuzz.face.Face face, harfbuzz.types.Codepoint glyph, uint startOffset, ref 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.
fnharfbuzz.types.Bool otColorGlyphHasPaint(harfbuzz.face.Face face, harfbuzz.types.Codepoint glyph)Tests where a face includes COLRv1 paint data for glyph.
fnharfbuzz.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 uns...
fnharfbuzz.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.
fnharfbuzz.types.Bool otColorHasLayers(harfbuzz.face.Face face)Tests whether a face includes a `COLR` table with data according to COLRv0.
fnharfbuzz.types.Bool otColorHasPaint(harfbuzz.face.Face face)Tests where a face includes a `COLR` table with data according to COLRv1.
fnharfbuzz.types.Bool otColorHasPalettes(harfbuzz.face.Face face)Tests whether a face includes a `CPAL` color-palette table.
fnharfbuzz.types.Bool otColorHasPng(harfbuzz.face.Face face)Tests whether a face has PNG glyph images (either in `CBDT` or `sbix` tables).
fnharfbuzz.types.Bool otColorHasSvg(harfbuzz.face.Face face)Tests whether a face includes any `SVG` glyph images.
fnharfbuzz.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.
fnuint otColorPaletteGetColors(harfbuzz.face.Face face, uint paletteIndex, uint startOffset, ref harfbuzz.types.Color[] colors)Fetches a list of the colors in a color palette.
fnuint otColorPaletteGetCount(harfbuzz.face.Face face)Fetches the number of color palettes in a face.
fnharfbuzz.types.OtColorPaletteFlags otColorPaletteGetFlags(harfbuzz.face.Face face, uint paletteIndex)Fetches the flags defined for a color palette.
fnharfbuzz.types.OtNameId otColorPaletteGetNameId(harfbuzz.face.Face face, uint paletteIndex)Fetches the `name` table Name ID that provides display names for a `CPAL` color palette.
fnvoid otFontSetFuncs(harfbuzz.font.Font font)Sets the font functions to use when working with font.
fnuint otLayoutFeatureGetCharacters(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint featureIndex, uint startOffset, ref harfbuzz.types.Codepoint[] characters)Fetches a list of the characters defined as having a variant under the specified "Character Variant" ("cvXX") feature tag.
fnuint otLayoutFeatureGetLookups(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint featureIndex, uint startOffset, ref 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.
fnharfbuzz.types.Bool otLayoutFeatureGetNameIds(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint featureIndex, out harfbuzz.types.OtNameId labelId, out harfbuzz.types.OtNameId tooltipId, out harfbuzz.types.OtNameId sampleId, out uint numNamedParameters, out harfbuzz.types.OtNameId firstParamId)Fetches name indices from feature parameters for "Stylistic Set" ('ssXX') or "Character Variant" ('cvXX') features.
fnuint otLayoutFeatureWithVariationsGetLookups(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint featureIndex, uint variationsIndex, uint startOffset, ref 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 ...
fnuint otLayoutGetAttachPoints(harfbuzz.face.Face face, harfbuzz.types.Codepoint glyph, uint startOffset, ref 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.
fnvoid otLayoutGetBaselineWithFallback(harfbuzz.font.Font font, harfbuzz.types.OtLayoutBaselineTag baselineTag, harfbuzz.types.Direction direction, harfbuzz.types.Tag scriptTag, harfbuzz.types.Tag languageTag, out harfbuzz.types.Position coord)Fetches a baseline value from the face, and synthesizes it if the font does not have it.
fnvoid otLayoutGetBaselineWithFallback2(harfbuzz.font.Font font, harfbuzz.types.OtLayoutBaselineTag baselineTag, harfbuzz.types.Direction direction, harfbuzz.types.Script script, harfbuzz.types.Language language, out harfbuzz.types.Position coord)Fetches a baseline value from the face, and synthesizes it if the font does not have it.
fnharfbuzz.types.Bool otLayoutGetFontExtents(harfbuzz.font.Font font, harfbuzz.types.Direction direction, harfbuzz.types.Tag scriptTag, harfbuzz.types.Tag languageTag, out harfbuzz.types.FontExtents extents)Fetches script/language-specific font extents. These values are looked up in the `BASE` table's `MinMax` records.
fnharfbuzz.types.Bool otLayoutGetFontExtents2(harfbuzz.font.Font font, harfbuzz.types.Direction direction, harfbuzz.types.Script script, harfbuzz.types.Language language, out harfbuzz.types.FontExtents extents)Fetches script/language-specific font extents. These values are looked up in the `BASE` table's `MinMax` records.
fnharfbuzz.types.OtLayoutGlyphClass otLayoutGetGlyphClass(harfbuzz.face.Face face, harfbuzz.types.Codepoint glyph)Fetches the GDEF class of the requested glyph in the specified face.
fnharfbuzz.types.OtLayoutBaselineTag otLayoutGetHorizontalBaselineTagForScript(harfbuzz.types.Script script)Fetches the dominant horizontal baseline tag used by script.
fnuint otLayoutGetLigatureCarets(harfbuzz.font.Font font, harfbuzz.types.Direction direction, harfbuzz.types.Codepoint glyph, uint startOffset, ref 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.
fnharfbuzz.types.Bool otLayoutGetSizeParams(harfbuzz.face.Face face, out uint designSize, out uint subfamilyId, out harfbuzz.types.OtNameId subfamilyNameId, out uint rangeStart, out uint rangeEnd)Fetches optical-size feature data (i.e., the `size` feature from GPOS). Note that the subfamilyid and the subfamily name string (accessible via the subfamilyname_id) as used here are defined as per...
fnharfbuzz.types.Bool otLayoutHasGlyphClasses(harfbuzz.face.Face face)Tests whether a face has any glyph classes defined in its GDEF table.
fnharfbuzz.types.Bool otLayoutHasPositioning(harfbuzz.face.Face face)Tests whether the specified face includes any GPOS positioning.
fnharfbuzz.types.Bool otLayoutHasSubstitution(harfbuzz.face.Face face)Tests whether the specified face includes any GSUB substitutions.
fnharfbuzz.types.Bool otLayoutLanguageFindFeature(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint scriptIndex, uint languageIndex, harfbuzz.types.Tag featureTag, out 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.
fnuint otLayoutLanguageGetFeatureIndexes(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint scriptIndex, uint languageIndex, uint startOffset, ref 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.
fnuint otLayoutLanguageGetFeatureTags(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint scriptIndex, uint languageIndex, uint startOffset, ref 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.
fnharfbuzz.types.Bool otLayoutLanguageGetRequiredFeature(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint scriptIndex, uint languageIndex, out uint featureIndex, out 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.
fnharfbuzz.types.Bool otLayoutLanguageGetRequiredFeatureIndex(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint scriptIndex, uint languageIndex, out uint featureIndex)Fetches the index of a requested feature in the given face's GSUB or GPOS table, underneath the specified script and language.
fnuint otLayoutLookupGetGlyphAlternates(harfbuzz.face.Face face, uint lookupIndex, harfbuzz.types.Codepoint glyph, uint startOffset, ref harfbuzz.types.Codepoint[] alternateGlyphs)Fetches alternates of a glyph from a given GSUB lookup index.
fnharfbuzz.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.
fnharfbuzz.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.
fnharfbuzz.types.Bool otLayoutScriptFindLanguage(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint scriptIndex, harfbuzz.types.Tag languageTag, out 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.
fnuint otLayoutScriptGetLanguageTags(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint scriptIndex, uint startOffset, ref 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.
fnharfbuzz.types.Bool otLayoutScriptSelectLanguage(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint scriptIndex, harfbuzz.types.Tag[] languageTags, out 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.
fnharfbuzz.types.Bool otLayoutScriptSelectLanguage2(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint scriptIndex, harfbuzz.types.Tag[] languageTags, out uint languageIndex, out 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.
fnharfbuzz.types.Bool otLayoutTableFindFeatureVariations(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, int[] coords, out uint variationsIndex)Fetches a list of feature variations in the specified face's GSUB table or GPOS table, at the specified variation coordinates.
fnharfbuzz.types.Bool otLayoutTableFindScript(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, harfbuzz.types.Tag scriptTag, out uint scriptIndex)Fetches the index if a given script tag in the specified face's GSUB table or GPOS table.
fnuint otLayoutTableGetFeatureTags(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint startOffset, ref 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.
fnuint 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.
fnuint otLayoutTableGetScriptTags(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, uint startOffset, ref 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.
fnharfbuzz.types.Bool otLayoutTableSelectScript(harfbuzz.face.Face face, harfbuzz.types.Tag tableTag, harfbuzz.types.Tag[] scriptTags, out uint scriptIndex, out harfbuzz.types.Tag chosenScript)Selects an OpenType script for tabletag from the scripttags array.
fnharfbuzz.types.Position otMathGetConstant(harfbuzz.font.Font font, harfbuzz.types.OtMathConstant constant)Fetches the specified math constant. For most constants, the value returned is an #hbpositiont.
fnuint otMathGetGlyphAssembly(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.Direction direction, uint startOffset, ref harfbuzz.types.OtMathGlyphPart[] parts, out harfbuzz.types.Position italicsCorrection)Fetches the GlyphAssembly for the specified font, glyph index, and direction. Returned are a list of #hbotmathglyphpart_t glyph parts that can be used to draw the glyph and an italics-correction va...
fnharfbuzz.types.Position otMathGetGlyphItalicsCorrection(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph)Fetches an italics-correction value (if one exists) for the specified glyph index.
fnharfbuzz.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.
fnuint otMathGetGlyphKernings(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.OtMathKern kern, uint startOffset, ref 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 #hbotmathkernentry_t stru...
fnharfbuzz.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.
fnuint otMathGetGlyphVariants(harfbuzz.font.Font font, harfbuzz.types.Codepoint glyph, harfbuzz.types.Direction direction, uint startOffset, ref harfbuzz.types.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 #hbotmathglyphvariant_t structs.
fnharfbuzz.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.
fnharfbuzz.types.Bool otMathHasData(harfbuzz.face.Face face)Tests whether a face has a `MATH` table.
fnharfbuzz.types.Bool otMathIsGlyphExtendedShape(harfbuzz.face.Face face, harfbuzz.types.Codepoint glyph)Tests whether the given glyph index is an extended shape in the face.
fnharfbuzz.blob.Blob otMetaReferenceEntry(harfbuzz.face.Face face, harfbuzz.types.OtMetaTag metaTag)It fetches metadata entry of a given tag from a font.
fnharfbuzz.types.Bool otMetricsGetPosition(harfbuzz.font.Font font, harfbuzz.types.OtMetricsTag metricsTag, out harfbuzz.types.Position position)Fetches metrics value corresponding to metrics_tag from font.
fnvoid otMetricsGetPositionWithFallback(harfbuzz.font.Font font, harfbuzz.types.OtMetricsTag metricsTag, out 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.
fnfloat 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.
fnharfbuzz.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.
fnharfbuzz.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.
fnharfbuzz.types.Tag otTagFromLanguage(harfbuzz.types.Language language)Converts an #hblanguaget to an #hbtagt.
fnharfbuzz.types.Language otTagToLanguage(harfbuzz.types.Tag tag)Converts a language tag to an #hblanguaget.
fnharfbuzz.types.Script otTagToScript(harfbuzz.types.Tag tag)Converts a script tag to an #hbscriptt.
fnvoid otTagsFromScript(harfbuzz.types.Script script, out harfbuzz.types.Tag scriptTag1, out harfbuzz.types.Tag scriptTag2)Converts an #hbscriptt to script tags.
fnvoid otTagsFromScriptAndLanguage(harfbuzz.types.Script script, harfbuzz.types.Language language, ref uint scriptCount, out harfbuzz.types.Tag scriptTags, ref uint languageCount, out harfbuzz.types.Tag languageTags)Converts an #hbscriptt and an #hblanguaget to script and language tags.
fnvoid otTagsToScriptAndLanguage(harfbuzz.types.Tag scriptTag, harfbuzz.types.Tag languageTag, out harfbuzz.types.Script script, out harfbuzz.types.Language language)Converts a script tag and a language tag to an #hbscriptt and an #hblanguaget.
fnharfbuzz.types.Bool otVarFindAxisInfo(harfbuzz.face.Face face, harfbuzz.types.Tag axisTag, out harfbuzz.types.OtVarAxisInfo axisInfo)Fetches the variation-axis information corresponding to the specified axis tag in the specified face.
fnuint otVarGetAxes(harfbuzz.face.Face face, uint startOffset, ref harfbuzz.types.OtVarAxis[] axesArray)Fetches a list of all variation axes in the specified face. The list returned will begin at the offset provided.
fnuint otVarGetAxisCount(harfbuzz.face.Face face)Fetches the number of OpenType variation axes included in the face.
fnuint otVarGetAxisInfos(harfbuzz.face.Face face, uint startOffset, ref harfbuzz.types.OtVarAxisInfo[] axesArray)Fetches a list of all variation axes in the specified face. The list returned will begin at the offset provided.
fnuint otVarGetNamedInstanceCount(harfbuzz.face.Face face)Fetches the number of named instances included in the face.
fnharfbuzz.types.Bool otVarHasData(harfbuzz.face.Face face)Tests whether a face includes any OpenType variation data in the `fvar` table.
fnuint otVarNamedInstanceGetDesignCoords(harfbuzz.face.Face face, uint instanceIndex, ref float[] coords)Fetches the design-space coordinates corresponding to the given named instance in the face.
fnharfbuzz.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.
fnharfbuzz.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.
fnvoid otVarNormalizeCoords(harfbuzz.face.Face face, float[] designCoords, out 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.
fnvoid paintColor(harfbuzz.paint_funcs.PaintFuncs funcs, void * paintData, harfbuzz.types.Bool isForeground, harfbuzz.types.Color color)Perform a "color" paint operation.
fnharfbuzz.types.Bool paintColorGlyph(harfbuzz.paint_funcs.PaintFuncs funcs, void * paintData, harfbuzz.types.Codepoint glyph, harfbuzz.font.Font font)Perform a "color-glyph" paint operation.
fnharfbuzz.types.Bool paintCustomPaletteColor(harfbuzz.paint_funcs.PaintFuncs funcs, void * paintData, uint colorIndex, out harfbuzz.types.Color color)Gets the custom palette color for color_index.
fnharfbuzz.paint_funcs.PaintFuncs paintFuncsCreate()Creates a new #hbpaintfuncs_t structure of paint functions.
fnharfbuzz.paint_funcs.PaintFuncs paintFuncsGetEmpty()Fetches the singleton empty paint-functions structure. Returns: The empty paint-functions structure
fnharfbuzz.types.Bool paintFuncsIsImmutable(harfbuzz.paint_funcs.PaintFuncs funcs)Tests whether a paint-functions structure is immutable.
fnvoid paintFuncsMakeImmutable(harfbuzz.paint_funcs.PaintFuncs funcs)Makes a paint-functions structure immutable.
fnvoid paintFuncsSetColorFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintColorFunc func)Sets the paint-color callback on the paint functions struct.
fnvoid paintFuncsSetColorGlyphFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintColorGlyphFunc func)Sets the color-glyph callback on the paint functions struct.
fnvoid paintFuncsSetCustomPaletteColorFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintCustomPaletteColorFunc func)Sets the custom-palette-color callback on the paint functions struct.
fnvoid paintFuncsSetImageFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintImageFunc func)Sets the paint-image callback on the paint functions struct.
fnvoid paintFuncsSetLinearGradientFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintLinearGradientFunc func)Sets the linear-gradient callback on the paint functions struct.
fnvoid paintFuncsSetPopClipFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintPopClipFunc func)Sets the pop-clip callback on the paint functions struct.
fnvoid paintFuncsSetPopGroupFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintPopGroupFunc func)Sets the pop-group callback on the paint functions struct.
fnvoid paintFuncsSetPopTransformFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintPopTransformFunc func)Sets the pop-transform callback on the paint functions struct.
fnvoid paintFuncsSetPushClipGlyphFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintPushClipGlyphFunc func)Sets the push-clip-glyph callback on the paint functions struct.
fnvoid paintFuncsSetPushClipRectangleFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintPushClipRectangleFunc func)Sets the push-clip-rect callback on the paint functions struct.
fnvoid paintFuncsSetPushGroupFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintPushGroupFunc func)Sets the push-group callback on the paint functions struct.
fnvoid paintFuncsSetPushTransformFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintPushTransformFunc func)Sets the push-transform callback on the paint functions struct.
fnvoid paintFuncsSetRadialGradientFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintRadialGradientFunc func)Sets the radial-gradient callback on the paint functions struct.
fnvoid paintFuncsSetSweepGradientFunc(harfbuzz.paint_funcs.PaintFuncs funcs, harfbuzz.types.PaintSweepGradientFunc func)Sets the sweep-gradient callback on the paint functions struct.
fnvoid 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.
fnvoid 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.
fnvoid paintPopClip(harfbuzz.paint_funcs.PaintFuncs funcs, void * paintData = null)Perform a "pop-clip" paint operation.
fnvoid paintPopGroup(harfbuzz.paint_funcs.PaintFuncs funcs, void * paintData, harfbuzz.types.PaintCompositeMode mode)Perform a "pop-group" paint operation.
fnvoid paintPopTransform(harfbuzz.paint_funcs.PaintFuncs funcs, void * paintData = null)Perform a "pop-transform" paint operation.
fnvoid paintPushClipGlyph(harfbuzz.paint_funcs.PaintFuncs funcs, void * paintData, harfbuzz.types.Codepoint glyph, harfbuzz.font.Font font)Perform a "push-clip-glyph" paint operation.
fnvoid paintPushClipRectangle(harfbuzz.paint_funcs.PaintFuncs funcs, void * paintData, float xmin, float ymin, float xmax, float ymax)Perform a "push-clip-rect" paint operation.
fnvoid paintPushGroup(harfbuzz.paint_funcs.PaintFuncs funcs, void * paintData = null)Perform a "push-group" paint operation.
fnvoid 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.
fnvoid 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.
fnvoid 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.
fnharfbuzz.types.Script scriptFromIso15924Tag(harfbuzz.types.Tag tag)Converts an ISO 15924 script tag to a corresponding #hbscriptt.
fnharfbuzz.types.Script scriptFromString(ubyte[] str)Converts a string str representing an ISO 15924 script tag to a corresponding #hbscriptt. Shorthand for [harfbuzz.global.tagFromString] then [harfbuzz.global.scriptFromIso15924Tag].
fnharfbuzz.types.Direction scriptGetHorizontalDirection(harfbuzz.types.Script script)Fetches the #hbdirectiont of a script when it is set horizontally. All right-to-left scripts will return #HBDIRECTIONRTL. All left-to-right scripts will return #HBDIRECTIONLTR. Scripts that can be...
fnharfbuzz.types.Tag scriptToIso15924Tag(harfbuzz.types.Script script)Converts an #hbscriptt to a corresponding ISO 15924 script tag.
fnvoid segmentPropertiesOverlay(harfbuzz.segment_properties.SegmentProperties p, harfbuzz.segment_properties.SegmentProperties src)Fills in missing fields of `p` from src in a considered manner.
fnvoid setAdd(harfbuzz.set.Set set, harfbuzz.types.Codepoint codepoint)Adds codepoint to set.
fnvoid 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.
fnvoid setAddSortedArray(harfbuzz.set.Set set, harfbuzz.types.Codepoint[] sortedCodepoints)Adds numcodepoints codepoints to a set at once. The codepoints array must be in increasing order, with size at least numcodepoints.
fnharfbuzz.types.Bool setAllocationSuccessful(harfbuzz.set.Set set)Tests whether memory allocation for a set was successful.
fnvoid setClear(harfbuzz.set.Set set)Clears out the contents of a set.
fnharfbuzz.set.Set setCopy(harfbuzz.set.Set set)Allocate a copy of set.
fnharfbuzz.set.Set setCreate()Creates a new, initially empty set. Returns: The new #hbsett
fnvoid setDel(harfbuzz.set.Set set, harfbuzz.types.Codepoint codepoint)Removes codepoint from set.
fnvoid 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.
fnharfbuzz.set.Set setGetEmpty()Fetches the singleton empty #hbsett. Returns: The empty #hbsett
fnharfbuzz.types.Codepoint setGetMax(harfbuzz.set.Set set)Finds the largest element in the set.
fnharfbuzz.types.Codepoint setGetMin(harfbuzz.set.Set set)Finds the smallest element in the set.
fnuint setGetPopulation(harfbuzz.set.Set set)Returns the number of elements in the set.
fnharfbuzz.types.Bool setHas(harfbuzz.set.Set set, harfbuzz.types.Codepoint codepoint)Tests whether codepoint belongs to set.
fnuint setHash(harfbuzz.set.Set set)Creates a hash representing set.
fnvoid setIntersect(harfbuzz.set.Set set, harfbuzz.set.Set other)Makes set the intersection of set and other.
fnvoid setInvert(harfbuzz.set.Set set)Inverts the contents of set.
fnharfbuzz.types.Bool setIsEmpty(harfbuzz.set.Set set)Tests whether a set is empty (contains no elements).
fnharfbuzz.types.Bool setIsEqual(harfbuzz.set.Set set, harfbuzz.set.Set other)Tests whether set and other are equal (contain the same elements).
fnharfbuzz.types.Bool setIsInverted(harfbuzz.set.Set set)Returns whether the set is inverted.
fnharfbuzz.types.Bool setIsSubset(harfbuzz.set.Set set, harfbuzz.set.Set largerSet)Tests whether set is a subset of larger_set.
fnharfbuzz.types.Bool setNext(harfbuzz.set.Set set, ref harfbuzz.types.Codepoint codepoint)Fetches the next element in set that is greater than current value of codepoint.
fnuint 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.
fnharfbuzz.types.Bool setNextRange(harfbuzz.set.Set set, out harfbuzz.types.Codepoint first, ref harfbuzz.types.Codepoint last)Fetches the next consecutive range of elements in set that are greater than current value of last.
fnharfbuzz.types.Bool setPrevious(harfbuzz.set.Set set, ref harfbuzz.types.Codepoint codepoint)Fetches the previous element in set that is lower than current value of codepoint.
fnharfbuzz.types.Bool setPreviousRange(harfbuzz.set.Set set, ref harfbuzz.types.Codepoint first, out harfbuzz.types.Codepoint last)Fetches the previous consecutive range of elements in set that are greater than current value of last.
fnvoid setSet(harfbuzz.set.Set set, harfbuzz.set.Set other)Makes the contents of set equal to the contents of other.
fnvoid setSubtract(harfbuzz.set.Set set, harfbuzz.set.Set other)Subtracts the contents of other from set.
fnvoid setSymmetricDifference(harfbuzz.set.Set set, harfbuzz.set.Set other)Makes set the symmetric difference of set and other.
fnvoid setUnion(harfbuzz.set.Set set, harfbuzz.set.Set other)Makes set the union of set and other.
fnvoid shape(harfbuzz.font.Font font, harfbuzz.buffer.Buffer buffer, harfbuzz.feature.Feature[] features = null)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...
fnharfbuzz.types.Bool shapeFull(harfbuzz.font.Font font, harfbuzz.buffer.Buffer buffer, harfbuzz.feature.Feature[] features = null, string[] shaperList = null)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.
fnharfbuzz.types.Bool shapeJustify(harfbuzz.font.Font font, harfbuzz.buffer.Buffer buffer, harfbuzz.feature.Feature[] features, string[] shaperList, float minTargetAdvance, float maxTargetAdvance, ref float advance, out harfbuzz.types.Tag varTag, out 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.
fnstring[] shapeListShapers()Retrieves the list of shapers supported by HarfBuzz. Returns: an array of constant strings
fnharfbuzz.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, userfeatures, props, and shaperlist.
fnharfbuzz.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 #hbshapeplancreate. Constructs a shaping plan for a combination of face, userfeatures, props, and shaper_list, plus the variation-space coordinates coords.
fnharfbuzz.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, userfeatures, props, and shaperlist.
fnharfbuzz.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 #hbshapeplancreatecached. Creates a cached shaping plan suitable for reuse, for a combination of face, userfeatures, props, and shaperlist, plus the variation-space coo...
fnharfbuzz.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.
fnharfbuzz.shape_plan.ShapePlan shapePlanGetEmpty()Fetches the singleton empty shaping plan. Returns: The empty shaping plan
fnstring shapePlanGetShaper(harfbuzz.shape_plan.ShapePlan shapePlan)Fetches the shaper from a given shaping plan.
fnfloat styleGetValue(harfbuzz.font.Font font, harfbuzz.types.StyleTag styleTag)Searches variation axes of a #hbfontt object for a specific axis first, if not set, then tries to get default style values from different tables of the font.
fnharfbuzz.types.Tag tagFromString(ubyte[] str)Converts a string into an #hbtagt. Valid tags are four characters. Shorter input strings will be padded with spaces. Longer input strings will be truncated.
fnharfbuzz.types.UnicodeCombiningClass unicodeCombiningClass(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.Codepoint unicode)Retrieves the Canonical Combining Class (ccc) property of code point unicode.
fnharfbuzz.types.Bool unicodeCompose(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.Codepoint a, harfbuzz.types.Codepoint b, out harfbuzz.types.Codepoint ab)Fetches the composition of a sequence of two Unicode code points.
fnuint unicodeDecomposeCompatibility(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.Codepoint u, out harfbuzz.types.Codepoint decomposed)Fetches the compatibility decomposition of a Unicode code point. Deprecated.
fnuint unicodeEastasianWidth(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.Codepoint unicode)Don't use. Not used by HarfBuzz.
fnharfbuzz.unicode_funcs.UnicodeFuncs unicodeFuncsCreate(harfbuzz.unicode_funcs.UnicodeFuncs parent = null)Creates a new #hbunicodefuncs_t structure of Unicode functions.
fnharfbuzz.unicode_funcs.UnicodeFuncs unicodeFuncsGetDefault()Fetches a pointer to the default Unicode-functions structure that is used when no functions are explicitly set on #hbbuffert. Returns: a pointer to the #hbunicodefuncs_t Unicode-functions structure
fnharfbuzz.unicode_funcs.UnicodeFuncs unicodeFuncsGetEmpty()Fetches the singleton empty Unicode-functions structure. Returns: The empty Unicode-functions structure
fnharfbuzz.unicode_funcs.UnicodeFuncs unicodeFuncsGetParent(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs)Fetches the parent of the Unicode-functions structure ufuncs.
fnharfbuzz.types.Bool unicodeFuncsIsImmutable(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs)Tests whether the specified Unicode-functions structure is immutable.
fnvoid unicodeFuncsMakeImmutable(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs)Makes the specified Unicode-functions structure immutable.
fnvoid unicodeFuncsSetCombiningClassFunc(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.UnicodeCombiningClassFunc func)Sets the implementation function for #hbunicodecombiningclassfunc_t.
fnvoid unicodeFuncsSetComposeFunc(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.UnicodeComposeFunc func)Sets the implementation function for #hbunicodecomposefunct.
fnvoid unicodeFuncsSetDecomposeFunc(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.UnicodeDecomposeFunc func)Sets the implementation function for #hbunicodedecomposefunct.
fnvoid unicodeFuncsSetEastasianWidthFunc(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.UnicodeEastasianWidthFunc func)Sets the implementation function for #hbunicodeeastasianwidthfunc_t.
fnvoid unicodeFuncsSetGeneralCategoryFunc(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.UnicodeGeneralCategoryFunc func)Sets the implementation function for #hbunicodegeneralcategoryfunc_t.
fnvoid unicodeFuncsSetMirroringFunc(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.UnicodeMirroringFunc func)Sets the implementation function for #hbunicodemirroringfunct.
fnvoid unicodeFuncsSetScriptFunc(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.UnicodeScriptFunc func)Sets the implementation function for #hbunicodescriptfunct.
fnharfbuzz.types.UnicodeGeneralCategory unicodeGeneralCategory(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.Codepoint unicode)Retrieves the General Category (gc) property of code point unicode.
fnharfbuzz.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.
fnharfbuzz.types.Script unicodeScript(harfbuzz.unicode_funcs.UnicodeFuncs ufuncs, harfbuzz.types.Codepoint unicode)Retrieves the #hbscriptt script to which code point unicode belongs.
fnharfbuzz.types.Bool variationFromString(ubyte[] str, out harfbuzz.variation.Variation variation)Parses a string into a #hbvariationt.