<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-family: Calibri, sans-serif;">
<div>Hi Vlad,</div>
<div><br>
</div>
<div>Please go ahead with proposing only my “MAIN” proposal below (clarifications to existing usWeightClass field).</div>
<div><br>
</div>
<div>Let’s keep the new usTypoWeightClass field as something for future discussion. While there seems to be some support for the idea, it needs a champion, or driver (someone who’ll declare intent to implement support for it, for example) & I haven’t heard
 back from John Daggett on this yet.</div>
<div><br>
</div>
<div>As always, thanks for keeping this process moving.</div>
<div><br>
</div>
<div>Sairus</div>
<div><br>
</div>
<span id="OLK_SRC_BODY_SECTION">
<div style="font-family:Calibri; font-size:11pt; text-align:left; color:black; BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BORDER-TOP: #b5c4df 1pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 3pt">
<span style="font-weight:bold">From: </span><Levantovsky>, Vladimir Levantovsky <<a href="mailto:Vladimir.Levantovsky@monotype.com">Vladimir.Levantovsky@monotype.com</a>><br>
<span style="font-weight:bold">Date: </span>Friday, February 12, 2016 at 7:17 AM<br>
<span style="font-weight:bold">To: </span>Sairus Patel <<a href="mailto:sppatel@adobe.com">sppatel@adobe.com</a>>, "<a href="mailto:mpeg-OTspec@yahoogroups.com">mpeg-OTspec@yahoogroups.com</a>" <<a href="mailto:mpeg-OTspec@yahoogroups.com">mpeg-OTspec@yahoogroups.com</a>><br>
<span style="font-weight:bold">Subject: </span>RE: Proposals for usWeightClass | usTypoWeightClass<br>
</div>
<div><br>
</div>
<div 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">
<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:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@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.imprintuniqueid, li.imprintuniqueid, div.imprintuniqueid
        {mso-style-name:imprintuniqueid;
        margin:0in;
        margin-bottom:.0001pt;
        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";}
span.EmailStyle20
        {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:1021784090;
        mso-list-template-ids:719109520;}
@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]-->
<div lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);">Dear all,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);">I am preparing the input contribution to the next MPEG meeting (held Feb. 22-26) where I will summarize all the proposed amendments including updates
 to “Feature descriptions” suggested by John Hudson and Ken Lunde, and clarifications and corrections suggested by Sairus in his email below. Among the suggested changes – there were two options proposed for AHG consideration on how to overcome issues 2 and
 3 identified in the email. I’d appreciate your input on what the preferred solution (either defining a new version of the OS/2 table with the additional “usTypoWeightClass” field or using a new flag in the unused portion of the “fsSelection” field, as outlined
 below) should be.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);">I plan to finalize the draft input contribution for your review today, and would appreciate you input on this matter. Sairus, if you have any additional
 information (or your personal preferences) that you would like to communicate to the group, please do so.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);">Thank you very much,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);">Vladimir<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125);"><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: 10pt; font-family: Tahoma, sans-serif;">From:</span></b><span style="font-size: 10pt; font-family: Tahoma, sans-serif;">
<a href="mailto:mpeg-OTspec@yahoogroups.com">mpeg-OTspec@yahoogroups.com</a> [<a href="mailto:mpeg-OTspec@yahoogroups.com">mailto:mpeg-OTspec@yahoogroups.com</a>]
<b>On Behalf Of </b>Sairus Patel <a href="mailto:sppatel@adobe.com">sppatel@adobe.com</a> [mpeg-OTspec]<br>
<b>Sent:</b> Thursday, November 19, 2015 8:33 PM<br>
<b>To:</b> <a href="mailto:mpeg-OTspec@yahoogroups.com">mpeg-OTspec@yahoogroups.com</a>;
<a href="mailto:opentype-list@indx.co.uk">opentype-list@indx.co.uk</a><br>
<b>Subject:</b> [mpeg-OTspec] Proposals for usWeightClass | usTypoWeightClass<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div style="border:none;border-top:solid white 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><br>
<br>
<br>
<o:p></o:p></span></p>
<div>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">There are several aspects of OS/2.usWeightClass
<a href="http://www.microsoft.com/typography/otspec/os2.htm#wtc"><span style="color:#042EEE">http://www.microsoft.com/typography/otspec/os2.htm#wtc</span></a> that have been problematic for many years now:<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt;min-height: 17px"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">1. Granularity: Only 9 values are listed (though other values aren’t explicitly prohibited). A finer granularity is desired in order
 to express the full richness of typographic weight variance. Note that the CSS4 draft
<a href="https://drafts.csswg.org/css-fonts-4/">https://drafts.csswg.org/css-fonts-4/</a> allows font-weight values in the range [1..999].<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt;min-height: 17px"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">2. “GDI skewing”: Values < 250 are sometimes set to 250 by the font designer to avoid GDI synthetic emboldening. Other issues with weight
 class on the upper limit and with style linking may be involved as well. See <a href="https://rawgit.com/adobe-type-tools/afdko/master/FDK/Technical%20Documentation/WinWeights.html">
<span style="color:#042EEE">https://rawgit.com/adobe-type-tools/afdko/master/FDK/Technical%20Documentation/WinWeights.html</span></a>, which may be a bit dated, but much is still valid. Also see John Daggett’s post: <a href="https://lists.w3.org/Archives/Public/www-style/2015Jan/0076.html"><span style="color:#042EEE">https://lists.w3.org/Archives/Public/www-style/2015Jan/0076.html</span></a>. <o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt;min-height: 17px"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">3. Sometimes an OS or font engine will not trust the weight class values (perhaps in part, because of #2 above) & resort to heuristics.
 Mozilla has reported that Apple uses heuristics & doesn’t seem to use the recorded weight class (see John’s post above).<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt;min-height: 17px"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">I propose the MAIN PROPOSAL below, which addresses issue #1.<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">I seek feedback on the POSSIBLE ADDITIONAL PROPOSAL and its VARIANT below, which address issues #2 and #3: are these issues worth solving,
 & is this the best way to do it?<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt;min-height: 17px"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt;min-height: 17px"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">=== MAIN PROPOSAL (addresses issue #1):<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt;min-height: 17px"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">{ Add this clarification to usWeightClass, to the end of the “Description” section: }<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt;min-height: 17px"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Only values from 1–999 are valid.<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt;min-height: 17px"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">{ Add this clarification to the start of the “Comments” section of usWeightClass, before the table: }<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt;min-height: 17px"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">There may be legacy platform limitations on certain usWeightClass values. The following are commonly set values:<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt;min-height: 17px"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt;min-height: 17px"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">=== POSSIBLE ADDITIONAL PROPOSAL to also address issues #2 and #3:<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt;min-height: 17px"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">{ Bump OS/2 version to 6. Add this new field to the end of the table: }<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt;min-height: 17px"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">usTypoWeightClass<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Format: USHORT<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Description: Typographic weight class. Only values of 1–999 are valid. Common values are as listed in the table for the usWeightClass
 field. The usWeightClass field may have been historically set in some fonts inaccurately, to work around various legacy platform-specific limitations. usTypoWeightClass is free from platform limitations and reflects the true visual weight of the font.<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt;min-height: 17px"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">=== VARIANT of POSSIBLE ADDITIONAL PROPOSAL:<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt;min-height: 17px"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Another way to address #2 and #3 instead of a new usTypoWeightClass field:<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt;min-height: 17px"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">We could add a  one or more flags to OS/2.fsSelection to indicate, for example, that usWeightClass of 250 really means a weight class
 of 100. The problem with this approach is that several such flags may be needed since several such values have been distorted (100, 200, perhaps some in the upper range as well), & a mapping needs to be agreed upon e.g. 250 => 100, xxx => 200, … It would be
 a font and font engine change anyway, so we may as well make it explicit, following the model of the sTypoAscender & similar fields.<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt;min-height: 17px"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">===<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt;min-height: 17px"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Sairus<o:p></o:p></span></p>
<p style="margin:0in;margin-bottom:.0001pt"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><br>
<br>
<br>
<o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: white;"><o:p></o:p></span></p>
</div>
</div>
</div>
</div>
</span>
</body>
</html>