XSince: EXPERIMENTAL
shapeJustify
fn
harfbuzz.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.
In addition, justify the shaping results such that the shaping results reach the target advance width/height, depending on the buffer direction.
If the advance of the buffer shaped with [harfbuzz.global.shapeFull] is already known, put that in advance. Otherwise set advance to zero.
This API is currently experimental and will probably change in the future.
Parameters
font | a mutable #hb_font_t to use for shaping |
buffer | an #hb_buffer_t to shape |
features | an array of user specified #hb_feature_t or NULL |
shaperList | a NULL-terminated array of shapers to use or NULL |
minTargetAdvance | Minimum advance width/height to aim for. |
maxTargetAdvance | Maximum advance width/height to aim for. |
advance | Input/output advance width/height of the buffer. |
varTag | Variation-axis tag used for justification. |
varValue | Variation-axis value used to reach target justification. |
Returns
false if all shapers failed, true otherwise