Comments (4)
There is no bloat in the actual binary data, because what appear to be separate instances of the same feature are pointing to the same binary data. For the particular font you referenced, the 12 apparent duplicate instances correspond to the 12 script+language declarations. Properly declaring scripts and languages is a necessary part of fonts, especially Pan-CJK ones.
from source-han-sans.
Thanks Ken. I understand that these collapse in the binary. And I understand that separate language systems are useful. But there's no reason I'm aware of for not sharing features amongst multiple language systems.
As I said, it just makes reading the font tables harder. The font has over a hundred features when in reality a dozen will do.
No action needed. Just wanted to bring it up to your attention.
from source-han-sans.
@behdad this is common to many fonts and is pretty much standard practice. From what I understand both AFDKO and VOLT do this. But I agree, it would make more sense if feature records weren't repeated for no reason.
from source-han-sans.
Some background is that different clients expect different degrees of script+language declaration. For single-language fonts, such as all of the OpenType CJK fonts we have developed to date, we declare the appropriate scripts, which is about a half-dozen (DFLT, hani, kana, hang, latn, grek, cyrl), but only the 'dflt' language. Pan-CJK fonts such as Source Han Sans and Noto Sans CJK require that non-default languages also be declared for the appropriate scripts. This is especially important for the 'locl' GSUB feature, but non-default languages are also declared elsewhere, such as in the 'vert' GSUB feature to handle language-specific vertical forms.
from source-han-sans.
Related Issues (20)
- Add HK/TW glyph for Big5 characters
- Minor outline issue with 乞 (uni4E5E-CN, ExtraLight weight only)
- Questions about Language Specific OTFs Simplified Chinese "类" (U+7C7B/0xCOE0) words HOT 2
- Glyph issue with uni5A40-JP (婀, Heavy master) HOT 1
- uni9F0E-JP (鼎) has a very minor glyph issue
- Remap suggestion for Kangxi Radicals in CN based on GB18030-2022
- uni54E9-CN interpolation bug HOT 1
- List of glyph issues in Kangxi Radical 186
- Question: How to edit Source Han Sans HOT 1
- When will command line for building Variable Fonts be added? HOT 1
- Wrong stroke direction for JP glyph U+6414 (搔)
- uni55F9-TW: 辶 component in Heavy master exceeds em box HOT 1
- Possibilities for implementing 'wdth' axis
- uni9583-CN (閃): ExtraLight master design issue
- Fix uni7A48-CN 穈 and uni9018-CN 逘
- uni805A-TW (聚): contour overlapping and design issue HOT 1
- Incorrect component for HK U+8977 襷
- Contour connection issue in some TW/HK glyphs with component "辶"
- Contour connection issue in glyphs with component "弟"
- Contour connection issue in glyphs with component "火" HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from source-han-sans.