IfcFontWeight
Definition
from CSS1 (W3C
Recommendation): The 'font-weight' property selects the
weight of
the font. The
values '100' to '900' form an ordered sequence, where each number
indicates a weight that is at least as dark as its predecessor. The
keyword 'normal' is synonymous with '400', and 'bold' is synonymous
with '700'. Keywords other than 'normal' and 'bold' have been shown to
be often confused with font names and a numerical scale was therefore
chosen for the 9-value list. Values are:
- normal
- bold
- 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900
Fonts (the font data) typically have one or more properties whose
values are names that are descriptive of the "weight" of a font. There
is no accepted, universal meaning to these weight names. Their primary
role is to distinguish faces of differing darkness within a single
font family. Usage across font families is quite variant; for example
a font that you might think of as being bold might be described as
being Regular, Roman, Book, Medium, Semi- or DemiBold,
Bold, or Black, depending on how black
the "normal" face
of the font is within the design. Because there is no standard usage
of names, the weight property values in CSS1 are given on a numerical
scale in which the value '400' (or 'normal') corresponds to the
"normal" text face for that family. The weight name associated with
that face will typically be Book, Regular, Roman, Normal
or
sometimes Medium.
The association of other weights within a family to the
numerical
weight values is intended only to preserve the ordering of darkness
within that family. However, the following heuristics tell how the
assignment is done in typical cases:
- If the font family already uses a numerical scale with nine
values
(like e.g. OpenType does), the font weights
should be mapped
directly.
- If there is both a face labeled Medium
and one labeled Book, Regular, Roman or Normal,
then the Medium is normally assigned to the
'500'.
- The font labeled "Bold" will often correspond to the weight
value
'700'.
- If there are fewer then 9 weights in the family, the
default
algorithm for filling the "holes" is as follows. If '500' is
unassigned, it will be assigned the same font as '400'. If any of the
values '600', '700', '800' or '900' remains unassigned, they are
assigned to the same face as the next darker assigned keyword, if any,
or the next lighter one otherwise. If any of '300', '200' or '100'
remains unassigned, it is assigned to the next lighter assigned
keyword, if any, or the next darker otherwise.
The following two examples illustrate the process. Assume four
weights in the "Example1" family, from lightest to darkest:
Regular, Medium, Bold, Heavy. And assume six
weights in the
"Example2" family: Book, Medium, Bold, Heavy, Black,
ExtraBlack. Note how in the second example it has been
decided
not to assign "Example2 ExtraBlack" to anything.
Available faces | Assignments | Filling the holes
----------------------+---------------+-------------------
"Example1 Regular" | 400 | 100, 200, 300
"Example1 Medium" | 500 |
"Example1 Bold" | 700 | 600
"Example1 Heavy" | 800 | 900
Available faces | Assignments | Filling the holes
----------------------+---------------+-------------------
"Example2 Book" | 400 | 100, 200, 300
"Example2 Medium" | 500 |
"Example2 Bold" | 700 | 600
"Example2 Heavy" | 800 |
"Example2 Black" | 900 |
"Example2 ExtraBlack" | (none) |
NOTE
Corresponding CSS1 definitions is font-weight.<
HISTORY
New type in
Release IFC2x
Edition 2 Addendum 2.
EXPRESS specification:
|
TYPE IfcFontWeight = STRING;
|
|
|
WR1
|
:
|
SELF IN ['normal','small-caps','100','200','300','400','500','600','700','800','900'];
|
|
|
|