Normalizers¶
-
fontParts.base.normalizers.normalizeFileFormatVersion(value)[source]¶ Normalizes a font’s file format version.
- value must be a type-int.
- Returned value will be a
int.
Kerning¶
-
fontParts.base.normalizers.normalizeKerningKey(value)[source]¶ Normalizes kerning key.
- value must be a
tupleorlist. - value must contain only two members.
- value items must be String.
- value items must be at least one character long.
- Returned value will be a two member
tupleof unencodedunicodestrings.
- value must be a
-
fontParts.base.normalizers.normalizeKerningValue(value)[source]¶ Normalizes kerning value.
- value must be an Integer/Float.
- Returned value is the same type as input value.
Groups¶
-
fontParts.base.normalizers.normalizeGroupKey(value)[source]¶ Normalizes group key.
- value must be a String.
- value must be least one character long.
- Returned value will be an unencoded
unicodestring.
-
fontParts.base.normalizers.normalizeGroupValue(value)[source]¶ Normalizes group value.
- value must be a
list. - value items must normalize as glyph names with
normalizeGlyphName. - Returned value will be a
tupleof unencodedunicodestrings.
- value must be a
Features¶
Lib¶
Layers¶
-
fontParts.base.normalizers.normalizeLayerOrder(value, font)[source]¶ Normalizes layer order.
** value must be a
tupleorlist. * value items must normalize as layer names with- value must contain layers that exist in font.
- value must not contain duplicate layers.
- Returned
tuplewill be unencodedunicodestrings for each layer name.
Glyphs¶
-
fontParts.base.normalizers.normalizeGlyphOrder(value)[source]¶ Normalizes glyph order.
** value must be a
tupleorlist. * value items must normalize as glyph names with- value must not repeat glyph names.
- Returned value will be a
tupleof unencodedunicodestrings.
Identification¶
-
fontParts.base.normalizers.normalizeGlyphName(value)[source]¶ Normalizes glyph name.
- value must be a String.
- value must be at least one character long.
- Returned value will be an unencoded
unicodestring.
-
fontParts.base.normalizers.normalizeGlyphUnicodes(value)[source]¶ Normalizes glyph unicodes.
- value must be a
list. - value items must normalize as glyph unicodes with
normalizeGlyphUnicode. - value must not repeat unicode values.
- Returned value will be a
tupleof ints.
- value must be a
Metrics¶
-
fontParts.base.normalizers.normalizeGlyphWidth(value)[source]¶ Normalizes glyph width.
- value must be a Integer/Float.
- Returned value is the same type as the input value.
-
fontParts.base.normalizers.normalizeGlyphLeftMargin(value)[source]¶ Normalizes glyph left margin.
- value must be a Integer/Float or None.
- Returned value is the same type as the input value.
-
fontParts.base.normalizers.normalizeGlyphRightMargin(value)[source]¶ Normalizes glyph right margin.
- value must be a Integer/Float or None.
- Returned value is the same type as the input value.
-
fontParts.base.normalizers.normalizeGlyphHeight(value)[source]¶ Normalizes glyph height.
- value must be a Integer/Float.
- Returned value is the same type as the input value.
-
fontParts.base.normalizers.normalizeGlyphBottomMargin(value)[source]¶ Normalizes glyph bottom margin.
- value must be a Integer/Float or None.
- Returned value is the same type as the input value.
-
fontParts.base.normalizers.normalizeGlyphTopMargin(value)[source]¶ Normalizes glyph top margin.
- value must be a Integer/Float or None.
- Returned value is the same type as the input value.
Contours¶
Points¶
Segments¶
BPoints¶
Components¶
Anchors¶
Note¶
Guidelines¶
Generic¶
Positions¶
-
fontParts.base.normalizers.normalizeX(value)[source]¶ Normalizes x coordinate.
- value must be an Integer/Float.
- Returned value is the same type as the input value.
-
fontParts.base.normalizers.normalizeY(value)[source]¶ Normalizes y coordinate.
- value must be an Integer/Float.
- Returned value is the same type as the input value.
-
fontParts.base.normalizers.normalizeCoordinateTuple(value)[source]¶ Normalizes coordinate tuple.
- value must be a
tupleorlist. - value must have exactly two items.
- value items must be an Integer/Float.
- Returned value is a
tupleof two values of the same type as the input values.
- value must be a
-
fontParts.base.normalizers.normalizeBoundingBox(value)[source]¶ Normalizes bounding box.
- value must be an
tupleorlist. - value must have exactly four items.
- value items must be Integer/Float.
- xMin and yMin must be less than or equal to the corresponding xMax, yMax.
- Returned value will be a tuple of four
float.
- value must be an
Identification¶
-
fontParts.base.normalizers.normalizeIndex(value)[source]¶ Normalizes index.
- value must be an
intorNone. - Returned value is the same type as the input value.
- value must be an
Interpolation¶
-
fontParts.base.normalizers.normalizeInterpolationFactor(value)[source]¶ Normalizes interpolation factor.
- value must be an Integer/Float,
tupleorlist. - If value is a
tupleorlist, it must have exactly two items. These items must be instances of Integer/Float. - Returned value is a
tupleof twofloat.
- value must be an Integer/Float,
Transformations¶
-
fontParts.base.normalizers.normalizeTransformationMatrix(value)[source]¶ Normalizes transformation matrix.
- value must be an
tupleorlist. - value must have exactly six items. Each of these items must be an instance of Integer/Float.
- Returned value is a
tupleof sixfloat.
- value must be an
-
fontParts.base.normalizers.normalizeTransformationOffset(value)[source]¶ Normalizes transformation offset.
- value must be an
tuple. - value must have exactly two items. Each item must be an instance of Integer/Float.
- Returned value is a
tupleof twofloat.
- value must be an
-
fontParts.base.normalizers.normalizeTransformationSkewAngle(value)[source]¶ Normalizes transformation skew angle.
- value must be an Integer/Float,
tupleorlist. - If value is a
tupleorlist, it must have exactly two items. These items must be instances of Integer/Float. - value items must be between -360 and 360.
- If the value is negative, it is normalized by adding it to 360
- Returned value is a
tupleof twofloatbetween 0 and 360.
- value must be an Integer/Float,
-
fontParts.base.normalizers.normalizeTransformationScale(value)[source]¶ Normalizes transformation scale.
- value must be an Integer/Float,
tupleorlist. - If value is a
tupleorlist, it must have exactly two items. These items must be instances of Integer/Float. - Returned value is a
tupleof twofloats.
- value must be an Integer/Float,
Files¶
Standard¶
-
fontParts.base.normalizers.normalizeBoolean(value)[source]¶ Normalizes a boolean.
- value must be an
intwith value of 0 or 1, or abool. - Returned value will be a boolean.
- value must be an
-
fontParts.base.normalizers.normalizeRounding(value)[source]¶ Normalizes rounding.
Python 2 and Python 3 handing the rounding of halves (0.5, 1.5, etc) differently. This normalizes rounding to be the same (Python 3 style) in both environments.
- value must be an Integer/Float
- Returned value is a
int