<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:Tahoma;
panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
{font-family:Verdana;
panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}
p
{mso-style-priority:99;
mso-margin-top-alt:auto;
margin-right:0in;
mso-margin-bottom-alt:auto;
margin-left:0in;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.ygrp-photo-title, li.ygrp-photo-title, div.ygrp-photo-title
{mso-style-name:ygrp-photo-title;
mso-margin-top-alt:auto;
margin-right:0in;
mso-margin-bottom-alt:auto;
margin-left:0in;
text-align:center;
font-size:10.0pt;
font-family:"Times New Roman","serif";}
p.ad, li.ad, div.ad
{mso-style-name:ad;
mso-margin-top-alt:auto;
margin-right:0in;
mso-margin-bottom-alt:auto;
margin-left:0in;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.ad1, li.ad1, div.ad1
{mso-style-name:ad1;
mso-margin-top-alt:auto;
margin-right:0in;
mso-margin-bottom-alt:auto;
margin-left:0in;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
span.EmailStyle21
{mso-style-type:personal-reply;
font-family:"Calibri","sans-serif";
color:#1F497D;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
/* List Definitions */
@list l0
{mso-list-id:173539334;
mso-list-template-ids:1276291636;}
@list l0:level1
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Symbol;}
@list l0:level2
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:1.0in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:"Courier New";
mso-bidi-font-family:"Times New Roman";}
@list l0:level3
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:1.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Wingdings;}
@list l0:level4
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:2.0in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Wingdings;}
@list l0:level5
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:2.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Wingdings;}
@list l0:level6
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:3.0in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Wingdings;}
@list l0:level7
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:3.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Wingdings;}
@list l0:level8
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:4.0in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Wingdings;}
@list l0:level9
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:4.5in;
mso-level-number-position:left;
text-indent:-.25in;
mso-ansi-font-size:10.0pt;
font-family:Wingdings;}
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Michelle,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">The proposal below is missing a mechanism to identify the set of fonts that work together as a series of optical size ranges. In families that go beyond the
simple four-style model (Regular, Bold, Italic, & Bold Italic) I believe it’s necessary to include some means of associating the correct set of fonts. That’s why the earlier ‘SIZE’ layout feature included this information. I thought that there was going to
be an update to the proposal to include this. I don’t think it makes sense to add this to the spec if a patch is on the way.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">FWIW Adobe was going to add this feature to our fonts two months ago but remains blocked by the absence of the missing piece.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">thanks,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">David L<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> mpeg-OTspec@yahoogroups.com [mailto:mpeg-OTspec@yahoogroups.com]
<br>
<b>Sent:</b> Friday, May 16, 2014 10:31 AM<br>
<b>To:</b> mpeg-OTspec@yahoogroups.com<br>
<b>Subject:</b> [mpeg-OTspec] Proposed OS/2 table updates<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><br>
<br>
<o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif"">Hello,</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif"">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.</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> </span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif"">Here are the fields we’d like to propose:</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> </span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif"">usLowerOpticalPointSize
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif"">Format: two-byte USHORT</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif"">Units: TWIPs</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif"">Description: This field is used for fonts with multiple optical styles.</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> This value is the lower value of the size range for which this font has been designed.
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> The units for this field are TWIPs (one-twentieth of a point, or 1440 per inch). The
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> value is inclusive—meaning that that font was designed to work best at this point
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> size through, but not including, the point size indicated by usUpperOpticalPointSize.
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> When used with other optical fonts that set usLowerOpticalPointSize and
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> usUpperOpticalPointSize, it would be expected that another font has this same value as
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> this entry in the usUpperOpticalPointSize field, unless this font is designed for the
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> lowest size range. The smallest font in an optical size set should set this value to 0.</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> When working across multiple optical fonts, there should be no intentional gaps or
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> overlaps in the ranges. usLowerOpticalPointSize must be less than
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> usUpperOpticalPointSize. The maximum valid value is 0xFFFE.
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> For fonts that were not designed for multiple optical styles, this field should be set to
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> 0 (zero) and the corresponding usUpperOpticalPointSize set to 0xFFFF.</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> </span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif"">usUpperOpticalPointSize
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif"">Format: two-byte USHORT</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif"">Units: TWIPs</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif"">Description: This field is used for fonts with multiple optical styles.</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> This value is the upper value of the size range for which this font has been designed.
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> The units for this field are TWIPs (one-twentieth of a point, or 1440 per inch). The
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> value is exclusive—meaning that that font was designed to work best below this point
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> size down to the usLowerOpticalPointSize threshold. When used with other optical fonts
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> that set usLowerOpticalPointSize and usUpperOpticalPointSize, it would be expected that
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> another font has this same value as this entry in the usLowerOpticalPointSize field, unless
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> this font is designed for the highest size range. The largest font in an optical size set should
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> set this value to 0xFFFF, which is interpreted as infinity. When working across multiple
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> optical fonts, there should be no intentional or overlaps left in the ranges.
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> usUpperOpticalPointSize must be greater than usLowerOpticalPointSize. The minimum valid
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> value for this field is 2 (two). The largest possible inclusive point size represented by this
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> field is 3276.65 points, any higher values would be represented as infinity.
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> For fonts that were not designed for multiple optical styles, this field should be set to 0xFFFF
</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> and the corresponding usLowerOpticalPointSize set to 0 (zero).</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> </span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> </span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif"">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.</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> </span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif"">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.</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> </span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif"">As always, we welcome feedback and discussion on this.</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif""> </span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif"">Michelle Perham</span><o:p></o:p></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-family:"Calibri","sans-serif"">Microsoft Typography Group</span><img width="1" height="1" id="_x0000_i1025" src="http://geo.yahoo.com/serv?s=97476590/grpId=12860955/grpspId=1706030389/msgId=1174/stime=1400261475"><br>
<br>
<br>
<span style="color:#1F497D"><o:p></o:p></span></p>
<div style="margin-bottom:7.5pt" id="ygrp-vital">
<p class="MsoNormal" style="background:#F2F2F2"><b><span style="font-size:7.5pt;font-family:"Verdana","sans-serif";color:#333333;text-transform:uppercase"><a href="https://groups.yahoo.com/neo/groups/mpeg-OTspec/info;_ylc=X3oDMTJmZzdhbzUyBF9TAzk3MzU5NzE0BGdycElkAzEyODYwOTU1BGdycHNwSWQDMTcwNjAzMDM4OQRzZWMDdnRsBHNsawN2Z2hwBHN0aW1lAzE0MDAyNjE0NzU-"><span style="text-decoration:none">Visit
Your Group</span></a></span></b><span style="font-size:7.5pt;font-family:"Verdana","sans-serif"">
<o:p></o:p></span></p>
</div>
<div style="margin-top:3.75pt" id="ft">
<p class="MsoNormal"><span style="font-size:8.5pt;font-family:"Arial","sans-serif""><a href="https://groups.yahoo.com/neo;_ylc=X3oDMTJlaHI5MzFrBF9TAzk3NDc2NTkwBGdycElkAzEyODYwOTU1BGdycHNwSWQDMTcwNjAzMDM4OQRzZWMDZnRyBHNsawNnZnAEc3RpbWUDMTQwMDI2MTQ3NQ--"><span style="text-decoration:none"><img border="0" height="15" id="_x0000_i1026" src="http://l.yimg.com/ru/static/images/yg/img/email/new_logo/logo-groups-137x15.png" alt="Yahoo! Groups"></span></a><o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span style="font-size:8.5pt;font-family:"Arial","sans-serif";color:#747575">•
<a href="https://info.yahoo.com/privacy/us/yahoo/groups/details.html"><span style="text-decoration:none">Privacy</span></a> •
<a href="mailto:mpeg-OTspec-unsubscribe@yahoogroups.com?subject=Unsubscribe"><span style="text-decoration:none">Unsubscribe</span></a> •
<a href="https://info.yahoo.com/legal/us/yahoo/utos/terms/"><span style="text-decoration:none">Terms of Use</span></a>
<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><br>
<br>
<o:p></o:p></p>
<div>
<p class="MsoNormal"><span style="color:white"><o:p></o:p></span></p>
</div>
</div>
</body>
</html>