Returns the value of a property in a font resource. The
arguments name:, family-name:, weight:,
posture:, structure:, or proportionate-width:
the font in the same manner as the corresponding characteristics, with
a prefix of font- added, of a character flow object. The
size: argument is a length specifying the size of the font,
which shall be supplied if the ISO/IEC 9541-1 data type of the value is
REL-RATIONAL. string is a string representing a public
identifier specifying the name of the property. list is a list,
each of whose members is either:
|• a list of three strings and an object.|
The property value to be returned shall be determined as follows.
the active property-list is the font-resource property-list. Each
member of list in turn shall set the active property-list to a
property-list nested in the active property-list, as follows:
|• If the member is a string, then it shall set the property-list to the
that is the value of the property of that name in the active
|• Otherwise, the active property-list shall be searched for a
property whose name is equal to the first string.
The value of the property shall be a property-list.
The active property-list shall be set to the value of the property in
that list whose name is equal to the
second string and whose value is a property-list that
contains a property whose name is equal to the third string
and whose value is equal to the fourth member of the list.|
Finally, the value of the property whose name is string in the
active property-list shall be returned.
The optional writing-mode: argument shall have one of the values
left-to-right, right-to-left, or top-to-bottom.
The value left-to-right
is equivalent to prefixing list with the list
and so on for the other allowed values.
The object returned shall depend on the data type of the value of
the property as defined in ISO/IEC 9541-1:
|• for a BOOLEAN property, a boolean value shall be returned.|
|• for a STRUCTURED-NAME, a string containing the ISO 9070 canonical
representation shall be returned.|
|• for MATCH-STRING or MESSAGE, a string shall be returned.|
|• for OCTET, INTEGER, CARDINAL, or CODE, a number shall be returned.|
|• for REL-RATIONAL, a length shall be returned which is obtained
by scaling the font size.|
|• for ANGLE, a number shall be returned corresponding to the angle
|• for an OCTET-STRING, a list of integers shall be returned.|
|• for a value-list or an ordered-value-list, a list containing
the result of converting the members of the value-list
or ordered-value-list shall be returned.|
Other types of values shall cause an error to be signaled.