FreeType-2.1.10 API Reference
PFR Fonts
Synopsis
#FT_Get_PFR_Metrics
FT_Get_PFR_Metrics
#FT_Get_PFR_Kerning
FT_Get_PFR_Kerning
#FT_Get_PFR_Advance
FT_Get_PFR_Advance
This section contains the declaration of PFR-specific functions.
FT_Get_PFR_Metrics
FT_EXPORT(
ft2-basic_types.html#FT_Error
FT_Error
)
FT_Get_PFR_Metrics
(
ft2-base_interface.html#FT_Face
FT_Face
face,
ft2-basic_types.html#FT_UInt
FT_UInt
*aoutline_resolution,
ft2-basic_types.html#FT_UInt
FT_UInt
*ametrics_resolution,
ft2-basic_types.html#FT_Fixed
FT_Fixed
*ametrics_x_scale,
ft2-basic_types.html#FT_Fixed
FT_Fixed
*ametrics_y_scale );
Return the outline and metrics resolutions of a given PFR face.
input
face
Handle to the input face. It can be a non-PFR face.
output
aoutline_resolution
Outline resolution. This is equivalent to `face->units_per_EM'. Optional (parameter can be NULL).
ametrics_resolution
Metrics resolution. This is equivalent to `outline_resolution' for non-PFR fonts. Optional (parameter can be NULL).
ametrics_x_scale
A 16.16 fixed-point number used to scale distance expressed in metrics units to device sub-pixels. This is equivalent to `face->size->x_scale', but for metrics only. Optional (parameter can be NULL)
ametrics_y_scale
Same as `ametrics_x_scale' but for the vertical direction. optional (parameter can be NULL)
return
FreeType error code. 0 means success.
note
If the input face is not a PFR, this function will return an error. However, in all cases, it will return valid values.
FT_Get_PFR_Kerning
FT_EXPORT(
ft2-basic_types.html#FT_Error
FT_Error
)
FT_Get_PFR_Kerning
(
ft2-base_interface.html#FT_Face
FT_Face
face,
ft2-basic_types.html#FT_UInt
FT_UInt
left,
ft2-basic_types.html#FT_UInt
FT_UInt
right,
ft2-basic_types.html#FT_Vector
FT_Vector
*avector );
Return the kerning pair corresponding to two glyphs in a PFR face. The distance is expressed in metrics units, unlike the result of
ft2-base_interface.html#FT_Get_Kerning
FT_Get_Kerning
.
input
face
A handle to the input face.
left
Index of the left glyph.
right
Index of the right glyph.
output
avector
A kerning vector.
return
FreeType error code. 0 means success.
note
This function always return distances in original PFR metrics units. This is unlike
ft2-base_interface.html#FT_Get_Kerning
FT_Get_Kerning
with the
ft2-base_interface.html#FT_Kerning_Mode
FT_KERNING_UNSCALED
mode, which always returns distances converted to outline units.
You can use the value of the `x_scale' and `y_scale' parameters returned by
ft2-pfr_fonts.html#FT_Get_PFR_Metrics
FT_Get_PFR_Metrics
to scale these to device sub-pixels.
FT_Get_PFR_Advance
FT_EXPORT(
ft2-basic_types.html#FT_Error
FT_Error
)
FT_Get_PFR_Advance
(
ft2-base_interface.html#FT_Face
FT_Face
face,
ft2-basic_types.html#FT_UInt
FT_UInt
gindex,
ft2-basic_types.html#FT_Pos
FT_Pos
*aadvance );
Return a given glyph advance, expressed in original metrics units, from a PFR font.
input
face
A handle to the input face.
gindex
The glyph index.
output
aadvance
The glyph advance in metrics units.
return
FreeType error code. 0 means success.
note
You can use the `x_scale' or `y_scale' results of
ft2-pfr_fonts.html#FT_Get_PFR_Metrics
FT_Get_PFR_Metrics
to convert the advance to device sub-pixels (i.e. 1/64th of pixels).
