A Kerning object. This object normally created as part of a
BaseFont. An orphan Kerning object can be created
>>> groups = RKerning()
This object behaves like a Python dictionary. Most of the
dictionary functionality comes from
BaseDict, look at
that object for the required environment implementation details.
Kerning uses :func:
normalizers.normalizeKerningKey to normalize the
key of the
dict, and :func:
to normalize the the value of the
Add an observer object. that will receive notification for the given methodName.
Get a representation by name.
Optionally arguments could be provided if the representation factory requires arguments.
Capture the current state of the object and create a undo item in a
undoTitle can be provided.
Removes all information from Kerning, resetting the Kerning to an empty dictionary.
>>> font.kerning[("A", "V")] -25
It is important to understand that any changes to the returned value will not be reflected in the Kerning object. If one wants to make a change to the value, one should do the following
>>> value = font.kerning[("A", "V")] >>> value += 10 >>> font.kerning[("A", "V")] = value
Interpolates all pairs between two
>>> myKerning.interpolate(kerningOne, kerningTwo)
minKerning and maxKerning. The interpolation occurs on a 0 to 1.0 range where minKerning is located at 0 and maxKerning is located at 1.0. The kerning data is replaced by the interpolated kerning.
- factor is the interpolation value. It may be less than 0
and greater than 1.0. It may be an
list. If it is a
list, the first number indicates the x factor and the second number indicates the y factor.
- round is a
boolindicating if the result should be rounded to
int. The default behavior is to round interpolated kerning.
- suppressError is a
boolindicating if incompatible data should be ignored or if an error should be raised when such incompatibilities are found. The default behavior is to ignore incompatible data.
Normalizes kerning key.
- value must be a
- value must contain only two members.
- value items must be
- value items must be at least one character long.
- Returned value will be a two member
list of all the pairs in Kerning. This list will be
>>> font.kerning.keys() [("A", "Y"), ("A", "V"), ("A", "W")]
Removes a pair from the Kerning. pair will
tuple of two
This is a backwards compatibility method.
Rounds the kerning values to increments of multiple,
which will be an
The default behavior is to round to increments of 1.
Scales all kerning values by factor. factor will be an
list. The first value of the
factor will be used to scale the kerning values.
>>> myKerning.scaleBy(2) >>> myKerning.scaleBy((2,3))
Updates the Kerning based on otherKerning. otherKerning is a
kerning information. If a pair from otherKerning is in Kerning, the pair
value will be replaced by the value from otherKerning. If a pair
from otherKerning is not in the Kerning, it is added to the pairs. If Kerning
contains a pair that is not in otherKerning, it is not changed.
Normalizes kerning value.
- value must be an
- Returned value is the same type as input value.
list of each pair’s values, the values will be
The list will be unordered.
>>> font.kerning.items() [-20, -15, 5, 3.5]