shapeJustify

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 harfbuzz.font.Font

a mutable #hb_font_t to use for shaping

buffer harfbuzz.buffer.Buffer

an #hb_buffer_t to shape

features harfbuzz.feature.Feature[]

an array of user specified #hb_feature_t or NULL

shaperList string[]

a NULL-terminated array of shapers to use or NULL

minTargetAdvance float

Minimum advance width/height to aim for.

maxTargetAdvance float

Maximum advance width/height to aim for.

advance float

Input/output advance width/height of the buffer.

varTag harfbuzz.types.Tag

Variation-axis tag used for justification.

varValue float

Variation-axis value used to reach target justification.

Return Value

Type: harfbuzz.types.Bool

false if all shapers failed, true otherwise

XSince: EXPERIMENTAL