<p></p><span><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">Hello,</font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">Microsoft would like to propose an update to the OS/2
table to add support for optical size ranges. Some are already aware of the
work we’ve been doing in this area. We’ve already implemented these new fields
privately in the new Sitka font that shipped with Windows 8.1 and we’re very
happy with the result.</font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3"> </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">Here are the fields we’d like to propose:</font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3"> </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">usLowerOpticalPointSize </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">Format:               
two-byte USHORT</font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">Units:                   
TWIPs</font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">Description:       
This field is used for fonts with multiple optical styles.</font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
This value is the lower value of the size range for which this font has been
designed. </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
The units for this field are TWIPs (one-twentieth of a point, or 1440 per
inch). The </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
value is inclusive—meaning that that font was designed to work best at this
point </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
size through, but not including, the point size indicated by usUpperOpticalPointSize.
</font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
When used with other optical fonts that set usLowerOpticalPointSize and </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
usUpperOpticalPointSize, it would be expected that another font has this same
value as </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
this entry in the usUpperOpticalPointSize field, unless this font is designed
for the </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
lowest size range. The smallest font in an optical size set should set this
value to 0.</font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
When working across multiple optical fonts, there should be no intentional gaps
or </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
overlaps in the ranges. usLowerOpticalPointSize must be less than </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
usUpperOpticalPointSize. The maximum valid value is 0xFFFE. </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
For fonts that were not designed for multiple optical styles, this field should
be set to </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
0 (zero) and the corresponding usUpperOpticalPointSize set to 0xFFFF.</font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3"> </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">usUpperOpticalPointSize </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">Format:               
two-byte USHORT</font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">Units:                   
TWIPs</font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">Description:       
This field is used for fonts with multiple optical styles.</font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
This value is the upper value of the size range for which this font has been designed.
</font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
The units for this field are TWIPs (one-twentieth of a point, or 1440 per
inch). The </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
value is exclusive—meaning that that font was designed to work best below this
point </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
size down to the usLowerOpticalPointSize threshold. When used with other
optical fonts </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
that set usLowerOpticalPointSize and usUpperOpticalPointSize, it would be
expected that </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
another font has this same value as this entry in the usLowerOpticalPointSize
field, unless </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
this font is designed for the highest size range. The largest font in an
optical size set should </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
set this value to 0xFFFF, which is interpreted as infinity. When working across
multiple </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
optical fonts, there should be no intentional or overlaps left in the ranges. </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
usUpperOpticalPointSize must be greater than usLowerOpticalPointSize. The
minimum valid </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
value for this field is 2 (two).  The largest possible inclusive point
size represented by this </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
field is 3276.65 points, any higher values would be represented as infinity. </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
For fonts that were not designed for multiple optical styles, this field should
be set to 0xFFFF </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">                               
and the corresponding usLowerOpticalPointSize set to 0 (zero).</font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3"> </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3"> </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">The decision to add these additional metrics to the OS/2
table went through several evolutions. Our early plans were to implement the
changes through TrueType instructions. We also considered using the OpenType
Layout SIZE feature, but decided against these for a myriad of reasons.
Ultimately we settled on the new fields in the OS/2 table. We’d like to update
the version number on the OS/2 table if these are added.</font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3"> </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">The choice of using TWIPs for measurement is embedded
somewhat in Windows history. For the OS/2 table we preferred not using a fixed
point notation. Although the SIZE feature used tenths of a point, TWIPs had
been used in Windows GDI and OS/2 as a scaling option since the mid-80's.</font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3"> </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">As always, we welcome feedback and discussion on this.</font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3"> </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">Michelle Perham</font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3">Microsoft Typography Group</font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3"> </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3"> </font></p><p><font face="Times New Roman" size="3">

</font></p><p style="margin:0in 0in 0pt;"><font face="Calibri" size="3"> </font></p><p><font face="Times New Roman" size="3">

</font></p></span>