You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The documentation of feature tags is written under the assumption that there are “applications” that interpret font tables directly, choose which features to apply by default, provide a user interface to let the user override the defaults, and apply the features.
There may be a few applications that actually do this, but the vast majority don’t. Instead, applications rely on text rendering systems provided by the operating system or by web browsers, or possibly bundled with the application, to do most of this for them. Some applications might provide a user interface to let the user override the defaults, or modify the defaults based on application needs; most rely on the defaults.
So, what this documentation should really specify is the standard behavior of OpenType text rendering systems. To some extent this is influenced by the shaping engine that the rendering system selects for text runs based on the Unicode characters in the text runs.
I propose the following changes:
① Replace the sections “UI suggestion” and “ Script/language sensitivity” in the documentation for each feature with a section “Default behavior” that contains one of the following statements (examples name some features where the statement would be used):
– This feature is disabled by default. (Examples: dlig, lnum.)
– This feature is enabled by default. (Examples: clig, liga, locl, ccmp, rlig, mark, mkmk.)
– This feature is by default enabled for certain scripts as described in shaping engine documentation, disabled otherwise. (Examples: cfar, cjct, ljmo, rkrf, pres.)
– This feature is by default enabled for vertical text, and disabled for horizontal text. (Example: vert.)
– This feature is by default enabled for horizontal text, and disabled for vertical text. (Example: kern.)
② Update the “Feature interaction” sections to clearly state what text rendering systems do by default, and what are recommendations to application developers. For example, in the description of the “vhal” feature, what is the “it” in “it deactivates the ‘kern’ feature”?
③ Rename the “Recommended implementation” section to “Usage in fonts”.
④ Rename the “Application interface” section to “Interpretation by rendering systems”. Replace any use of “application” in this section with “rendering system”.
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
ID: 844c49c1-bbee-b298-f6da-ace893d4e52b
Version Independent ID: c8880433-22b5-a615-586f-fee121d096fd
An update to the feature tag registry of this sort is a good idea, but also would be a large work item. So, this doesn't seem like it should be a high priority for an OT1.8.4 update.
Also, I wonder if an change on this order should wait to see if the community starts working on a comprehensive set of shaping specs? If so, that might inform how the feature registry entries should be organized.
The documentation of feature tags is written under the assumption that there are “applications” that interpret font tables directly, choose which features to apply by default, provide a user interface to let the user override the defaults, and apply the features.
There may be a few applications that actually do this, but the vast majority don’t. Instead, applications rely on text rendering systems provided by the operating system or by web browsers, or possibly bundled with the application, to do most of this for them. Some applications might provide a user interface to let the user override the defaults, or modify the defaults based on application needs; most rely on the defaults.
So, what this documentation should really specify is the standard behavior of OpenType text rendering systems. To some extent this is influenced by the shaping engine that the rendering system selects for text runs based on the Unicode characters in the text runs.
I propose the following changes:
① Replace the sections “UI suggestion” and “ Script/language sensitivity” in the documentation for each feature with a section “Default behavior” that contains one of the following statements (examples name some features where the statement would be used):
– This feature is disabled by default. (Examples: dlig, lnum.)
– This feature is enabled by default. (Examples: clig, liga, locl, ccmp, rlig, mark, mkmk.)
– This feature is by default enabled for certain scripts as described in shaping engine documentation, disabled otherwise. (Examples: cfar, cjct, ljmo, rkrf, pres.)
– This feature is by default enabled for vertical text, and disabled for horizontal text. (Example: vert.)
– This feature is by default enabled for horizontal text, and disabled for vertical text. (Example: kern.)
② Update the “Feature interaction” sections to clearly state what text rendering systems do by default, and what are recommendations to application developers. For example, in the description of the “vhal” feature, what is the “it” in “it deactivates the ‘kern’ feature”?
③ Rename the “Recommended implementation” section to “Usage in fonts”.
④ Rename the “Application interface” section to “Interpretation by rendering systems”. Replace any use of “application” in this section with “rendering system”.
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.
The text was updated successfully, but these errors were encountered: