-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
IBM Plex Sans Arabic: Version 1.101 added #8475
Conversation
Taken from the upstream repo https://github.com/googlefonts/plex at commit googlefonts/plex@e80bf92. Resolves #7611
Expect tons of fails here. I already fixed the most important ones regarding vmetrics and name table. The rest we intend to leave it as IBM has made them. We have done the same for all previous IBM Plex fonts. I checked the regressions. They are mostly progressions, like newly introduced ligatures and kerning which affects the metrics quite a bit but are all better in the new version, so we should accept that. |
FontBakery reportfontbakery version: 0.13.0a4 Check results[2] Family checks🔥 FAIL Fonts have consistent underline thickness?
[34] IBMPlexSansArabic-Medium.ttf💥 ERROR Shapes languages in all GF glyphsets.
[code: failed-check] 🔥 FAIL Check that glyph for U+0675 ARABIC LETTER HIGH HAMZA is not a mark.
🔥 FAIL Check that Arabic spacing symbols U+FBB2–FBC1 aren't classified as marks.
🔥 FAIL Ensure the font supports case swapping for all its glyphs.
🔥 FAIL Ensure smart dropout control is enabled in "prep" table instructions.
🔥 FAIL Are there unwanted tables?
They can be removed with the 'fix-unwanted-tables' script provided by gftools. [code: unwanted-tables]🔥 FAIL Does DESCRIPTION file contain a upstream Git repo URL?
🔥 FAIL Copyright notices match canonical pattern in fonts
"Copyright 2020 The Familyname Project Authors (git url)" But instead we have got: "Copyright 2019 IBM Corp. All rights reserved." [code: bad-notice-format]
"Copyright 2020 The Familyname Project Authors (git url)" But instead we have got: "Copyright 2019 IBM Corp. All rights reserved." [code: bad-notice-format]🔥 FAIL Check license file has good copyright string.
"copyright © 2017 ibm corp. with reserved font name "plex"" which does not match the expected format, similar to: "Copyright 2022 The Familyname Project Authors (git url)" [code: bad-format]🔥 FAIL Ensure dotted circle glyph is present and can attach marks.
Use -F or --full-lists to disable shortening of long lists. [code: unattached-dotted-circle-marks]
|
ofl/ibmplexsansarabic/IBMPlexSansArabic-Medium.ttf | |
---|---|
Dehinted Size | 172.9kb |
Hinted Size | 236.4kb |
Increase | 63.5kb |
Change | 36.7 % |
ℹ️ INFO Font contains all required tables?
- ℹ️ INFO
This font contains the following optional tables:
- cvt
- fpgm
- loca
- prep
- GPOS
- GSUB
- gasp
[code: optional-tables]
ℹ️ INFO METADATA.pb: Validate family.minisite_url field.
- ℹ️ INFO
Please consider adding a family.minisite_url entry.
[code: lacks-minisite-url]
ℹ️ INFO Check for presence of an ARTICLE.en_us.html file
- ℹ️ INFO
This font doesn't have an ARTICLE.en_us.html file.
[code: missing-article]
ℹ️ INFO EPAR table present in font?
- ℹ️ INFO
EPAR table not present in font. To learn more see When missing EPAR table, just emit INFO alert fonttools/fontbakery#818
[code: lacks-EPAR]
[33] IBMPlexSansArabic-Light.ttf
💥 ERROR Shapes languages in all GF glyphsets.
- 💥 ERROR
Failed with AttributeError: 'NoneType' object has no attribute 'get'
File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/fontbakery/checkrunner.py", line 213, in _run_check
subresults = list(subresults)
File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/fontbakery/checks/vendorspecific/googlefonts/glyphset.py", line 140, in check_glyphsets_shape_languages
reporter = shaperglot_checker.check(shaperglot_languages[language_code])
File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/shaperglot/checker.py", line 54, in check
for check_object in self.lang.get("shaperglot_checks", []):
[code: failed-check]
🔥 FAIL Check that glyph for U+0675 ARABIC LETTER HIGH HAMZA is not a mark.
- 🔥 FAIL
The arabic letter high hamza (U+0675) should have roughly the same size the arabic letter hamza (U+0621), but a different glyph outline area was detected.
[code: glyph-area]
🔥 FAIL Check that Arabic spacing symbols U+FBB2–FBC1 aren't classified as marks.
-
🔥 FAIL
"uniFBB2" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB3" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB4" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB5" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB6" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB7" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB8" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB9" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBA" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBB" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBD" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBE" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBF" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBC1" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef]
🔥 FAIL Ensure the font supports case swapping for all its glyphs.
- 🔥 FAIL
The following glyphs lack their case-swapping counterparts:
Glyph present in the font | Missing case-swapping counterpart |
---|---|
U+0110: LATIN CAPITAL LETTER D WITH STROKE | U+0111: LATIN SMALL LETTER D WITH STROKE |
U+0135: LATIN SMALL LETTER J WITH CIRCUMFLEX | U+0134: LATIN CAPITAL LETTER J WITH CIRCUMFLEX |
🔥 FAIL Ensure smart dropout control is enabled in "prep" table instructions.
- 🔥 FAIL
The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the
gftools fix-nonhinting
script.
[code: lacks-smart-dropout]
🔥 FAIL Are there unwanted tables?
- 🔥 FAIL
The following unwanted font tables were found:
- DSIG - This font has a digital signature (DSIG table) which is only required - even if only a placeholder - on old programs like MS Office 2013 in order to work properly. The current recommendation is to completely remove the DSIG table.
They can be removed with the 'fix-unwanted-tables' script provided by gftools.
[code: unwanted-tables]🔥 FAIL Does DESCRIPTION file contain a upstream Git repo URL?
- 🔥 FAIL
Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file.
[code: lacks-git-url]
🔥 FAIL Copyright notices match canonical pattern in fonts
- 🔥 FAIL
Name Table entry: Copyright notices should match a pattern similar to:
"Copyright 2020 The Familyname Project Authors (git url)"
But instead we have got:
"Copyright 2019 IBM Corp. All rights reserved."
[code: bad-notice-format]- 🔥 FAIL
METADATA.pb: Copyright notices should match a pattern similar to:
"Copyright 2020 The Familyname Project Authors (git url)"
But instead we have got:
"Copyright 2019 IBM Corp. All rights reserved."
[code: bad-notice-format]🔥 FAIL Check license file has good copyright string.
- 🔥 FAIL
First line in license file is:
"copyright © 2017 ibm corp. with reserved font name "plex""
which does not match the expected format, similar to:
"Copyright 2022 The Familyname Project Authors (git url)"
[code: bad-format]🔥 FAIL Ensure dotted circle glyph is present and can attach marks.
- 🔥 FAIL
The following glyphs could not be attached to the dotted circle glyph:
- uni0300
- uni0301
- uni0302
- uni0303
- uni0304
- uni0307
- uni0308
- uni030A
- uni030B
- uni030C
- 5 more.
Use -F or --full-lists to disable shortening of long lists.
[code: unattached-dotted-circle-marks]⚠️ WARN Check GDEF mark glyph class doesn't have characters that are not marks.
⚠️ WARNThe following non-mark characters should not be in the GDEF mark glyph class:
U+FBB2, U+FBB3, U+FBB4, U+FBB5, U+FBB6, U+FBB7, U+FBB8, U+FBB9, U+FBBA, U+FBBB and 4 more.
Use -F or --full-lists to disable shortening of long lists.
[code: non-mark-chars]⚠️ WARN Check if each glyph has the recommended amount of contours.
⚠️ WARNThis check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are infered from the typical ammounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.
The following glyphs do not have the recommended number of contours:
- Glyph name: uni00AD Contours detected: 1 Expected: 0
-
Glyph name: uni20A8 Contours detected: 2 Expected: 3
-
Glyph name: fi Contours detected: 2 Expected: 3
Glyph name: uni00AD Contours detected: 1 Expected: 0
[code: contour-count]
⚠️ WARN Are there caret positions declared for every ligature?
⚠️ WARNThis font lacks caret position values for ligature glyphs on its GDEF table.
[code: lacks-caret-pos]
⚠️ WARN Is there kerning info for non-ligated sequences?
⚠️ WARNGPOS table lacks kerning info for the following non-ligated sequences:
- f + i
[code: lacks-kern-info]
⚠️ WARN Does the font contain a soft hyphen?
⚠️ WARNThis font has a 'Soft Hyphen' character.
[code: softhyphen]
⚠️ WARN Check font contains no unreachable glyphs
⚠️ WARNThe following glyphs could not be reached by codepoint or substitution rules:
- comp.barar
- comp.doublebarar
- comp.foururduar
- comp.threedotsdown
- comp.twodotsvertical
- comp.var
- comp.vinvertedar
- comp.wavyhamzaar
- hamzacenterar
- jacute
- 6 more.
Use -F or --full-lists to disable shortening of long lists.
[code: unreachable-glyphs]⚠️ WARN Glyph names are all valid?
⚠️ WARNThe following glyph names may be too long for some legacy systems which may expect a maximum 31-characters length limit:
alefMaksura_jehar.fina.rlig.short and alefMaksura_zainar.fina.rlig.short
[code: legacy-long-names]
⚠️ WARN Validate size, and resolution of article images, and ensure article page has minimum length and includes visual assets.
⚠️ WARNFamily metadata at ofl/ibmplexsansarabic does not have an article.
[code: lacks-article]
⚠️ WARN Check for codepoints not covered by METADATA subsets.
⚠️ WARNThe following codepoints supported by the font are not covered by
any subsets defined in the font's metadata file, and will never
be served. You can solve this by either manually adding additional
subset declarations to METADATA.pb, or by editing the glyphset
definitions.
- U+02D8 BREVE: try adding one of: canadian-aboriginal, yi
- U+02D9 DOT ABOVE: try adding one of: canadian-aboriginal, yi
- U+02DB OGONEK: try adding one of: canadian-aboriginal, yi
- U+0302 COMBINING CIRCUMFLEX ACCENT: try adding one of: math, coptic, cherokee, tifinagh
- U+0307 COMBINING DOT ABOVE: try adding one of: math, hebrew, duployan, coptic, syriac, tai-le, malayalam, tifinagh, canadian-aboriginal, old-permic, todhri
- U+030A COMBINING RING ABOVE: try adding one of: syriac, duployan
- U+030B COMBINING DOUBLE ACUTE ACCENT: try adding one of: osage, cherokee
- U+030C COMBINING CARON: try adding one of: cherokee, tai-le
- U+0315 COMBINING COMMA ABOVE RIGHT: try adding math
- U+0327 COMBINING CEDILLA: try adding math 82 more.
Use -F or --full-lists to disable shortening of long lists.
Or you can add the above codepoints to one of the subsets supported by the font: arabic
, cyrillic-ext
, latin
, latin-ext
, menu
⚠️ WARN DESCRIPTION.en_us.html should end in a linebreak.
⚠️ WARNThe last characther on DESCRIPTION.en_us.html is not a line-break. Please add it.
[code: missing-eof-linebreak]
⚠️ WARN Check OFL body text is correct.
⚠️ WARNThe OFL.txt body text is incorrect. Please use https://github.com/googlefonts/Unified-Font-Repository/blob/main/OFL.txt as a template. You should only modify the first line.
Lines changed:
+ \n
- This license is copied below, and is also available with a FAQ at:\n
+ This license is copied below, and is also available with a FAQ at: https://openfontlicense.org\n
[code: incorrect-ofl-body-text]⚠️ WARN Check copyright namerecords match license file.
-
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description] -
⚠️ WARNPlease consider updating the url from 'https://scripts.sil.org/OFL' to 'https://openfontlicense.org'.
[code: old-url]
⚠️ WARN License URL matches License text on name table?
-
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description] -
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description] -
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description]
⚠️ WARN Ensure soft_dotted characters lose their dot when combined with marks that replace the dot.
⚠️ WARNThe dot of soft dotted characters should disappear in other cases, for example: ĩ̧ ī̧ i̧̇ i̧̊ i̧̋ ǐ̧ į̃ į̄ į̇ į̊ į̋ į̌ j̧̀ j̧́ j̧̃ j̧̄ j̧̇ j̧̈ j̧̊ j̧̋
Your font fully covers the following languages that require the soft-dotted feature: Lithuanian (Latn, 2,357,094 speakers), Dutch (Latn, 31,709,104 speakers).
Your font does not cover the following languages that require the soft-dotted feature: Avokaya (Latn, 100,000 speakers), Southern Tutchone (Latn, 65 speakers), Kaska (Latn, 125 speakers), Southern Kisi (Latn, 360,000 speakers), Northern Tutchone (Latn, 85 speakers), Ijo, Southeast (Latn, 2,471,000 speakers), Longto (Latn, 5,000 speakers), Mango (Latn, 77,000 speakers), Ejagham (Latn, 120,000 speakers), Dan (Latn, 1,099,244 speakers), South Central Banda (Latn, 244,000 speakers), Abua (Latn, 25,000 speakers), Koonzime (Latn, 40,000 speakers), Kom (Latn, 360,685 speakers), Kpelle, Guinea (Latn, 622,000 speakers), Igbo (Latn, 27,823,640 speakers), Mfumte (Latn, 79,000 speakers), Sar (Latn, 500,000 speakers), Basaa (Latn, 332,940 speakers), Keliko (Latn, 63,000 speakers), Yala (Latn, 200,000 speakers), Han (Latn, 6 speakers), Gulay (Latn, 250,478 speakers), Ikwere (Latn, 717,000 speakers), Zapotec (Latn, 490,000 speakers), Teke-Ebo (Latn, 260,000 speakers), Dii (Latn, 71,000 speakers), Nateni (Latn, 100,000 speakers), Western Krahn (Latn, 97,800 speakers), Belarusian (Cyrl, 10,064,517 speakers), Navajo (Latn, 166,319 speakers), Vute (Latn, 21,000 speakers), Ekpeye (Latn, 226,000 speakers), Cicipu (Latn, 44,000 speakers), Aghem (Latn, 38,843 speakers), Lugbara (Latn, 2,200,000 speakers), Makaa (Latn, 221,000 speakers), Mundani (Latn, 34,000 speakers), Bete-Bendi (Latn, 100,000 speakers), Ebira (Latn, 2,200,000 speakers), Ma’di (Latn, 584,000 speakers), Nzakara (Latn, 50,000 speakers), Fur (Latn, 1,230,163 speakers), Heiltsuk (Latn, 300 speakers), Ngbaka (Latn, 1,020,000 speakers), Ukrainian (Cyrl, 29,273,587 speakers), Bafut (Latn, 158,146 speakers).
[code: soft-dotted]⚠️ WARN Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering?
- ℹ️ INFO
These are the ppm ranges declared on the gasp table:
PPM <= 8: flag = 0x0A - Use grayscale rendering - Use smoothing along multiple axes with ClearType® PPM <= 16: flag = 0x07 - Use grid-fitting - Use grayscale rendering - Use gridfitting with ClearType symmetric smoothing PPM <= 65535: flag = 0x0F - Use grid-fitting - Use grayscale rendering - Use gridfitting with ClearType symmetric smoothing - Use smoothing along multiple axes with ClearType®
[code: ranges]-
⚠️ WARNThe gasp table has a range of 8 that may be unneccessary.
[code: non-ffff-range] -
⚠️ WARNThe gasp table has a range of 16 that may be unneccessary.
[code: non-ffff-range]
ℹ️ INFO Show hinting filesize impact.
- ℹ️ INFO
Hinting filesize impact:
ofl/ibmplexsansarabic/IBMPlexSansArabic-Light.ttf | |
---|---|
Dehinted Size | 169.7kb |
Hinted Size | 233.0kb |
Increase | 63.3kb |
Change | 37.3 % |
ℹ️ INFO Font contains all required tables?
- ℹ️ INFO
This font contains the following optional tables:
- cvt
- fpgm
- loca
- prep
- GPOS
- GSUB
- gasp
[code: optional-tables]
ℹ️ INFO METADATA.pb: Validate family.minisite_url field.
- ℹ️ INFO
Please consider adding a family.minisite_url entry.
[code: lacks-minisite-url]
ℹ️ INFO Check for presence of an ARTICLE.en_us.html file
- ℹ️ INFO
This font doesn't have an ARTICLE.en_us.html file.
[code: missing-article]
ℹ️ INFO EPAR table present in font?
- ℹ️ INFO
EPAR table not present in font. To learn more see When missing EPAR table, just emit INFO alert fonttools/fontbakery#818
[code: lacks-EPAR]
[33] IBMPlexSansArabic-Regular.ttf
💥 ERROR Shapes languages in all GF glyphsets.
- 💥 ERROR
Failed with AttributeError: 'NoneType' object has no attribute 'get'
File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/fontbakery/checkrunner.py", line 213, in _run_check
subresults = list(subresults)
File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/fontbakery/checks/vendorspecific/googlefonts/glyphset.py", line 140, in check_glyphsets_shape_languages
reporter = shaperglot_checker.check(shaperglot_languages[language_code])
File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/shaperglot/checker.py", line 54, in check
for check_object in self.lang.get("shaperglot_checks", []):
[code: failed-check]
🔥 FAIL Check that glyph for U+0675 ARABIC LETTER HIGH HAMZA is not a mark.
- 🔥 FAIL
The arabic letter high hamza (U+0675) should have roughly the same size the arabic letter hamza (U+0621), but a different glyph outline area was detected.
[code: glyph-area]
🔥 FAIL Check that Arabic spacing symbols U+FBB2–FBC1 aren't classified as marks.
-
🔥 FAIL
"uniFBB2" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB3" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB4" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB5" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB6" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB7" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB8" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB9" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBA" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBB" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBD" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBE" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBF" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBC1" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef]
🔥 FAIL Ensure the font supports case swapping for all its glyphs.
- 🔥 FAIL
The following glyphs lack their case-swapping counterparts:
Glyph present in the font | Missing case-swapping counterpart |
---|---|
U+0110: LATIN CAPITAL LETTER D WITH STROKE | U+0111: LATIN SMALL LETTER D WITH STROKE |
U+0135: LATIN SMALL LETTER J WITH CIRCUMFLEX | U+0134: LATIN CAPITAL LETTER J WITH CIRCUMFLEX |
🔥 FAIL Ensure smart dropout control is enabled in "prep" table instructions.
- 🔥 FAIL
The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the
gftools fix-nonhinting
script.
[code: lacks-smart-dropout]
🔥 FAIL Are there unwanted tables?
- 🔥 FAIL
The following unwanted font tables were found:
- DSIG - This font has a digital signature (DSIG table) which is only required - even if only a placeholder - on old programs like MS Office 2013 in order to work properly. The current recommendation is to completely remove the DSIG table.
They can be removed with the 'fix-unwanted-tables' script provided by gftools.
[code: unwanted-tables]🔥 FAIL Does DESCRIPTION file contain a upstream Git repo URL?
- 🔥 FAIL
Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file.
[code: lacks-git-url]
🔥 FAIL Copyright notices match canonical pattern in fonts
- 🔥 FAIL
Name Table entry: Copyright notices should match a pattern similar to:
"Copyright 2020 The Familyname Project Authors (git url)"
But instead we have got:
"Copyright 2019 IBM Corp. All rights reserved."
[code: bad-notice-format]- 🔥 FAIL
METADATA.pb: Copyright notices should match a pattern similar to:
"Copyright 2020 The Familyname Project Authors (git url)"
But instead we have got:
"Copyright 2019 IBM Corp. All rights reserved."
[code: bad-notice-format]🔥 FAIL Check license file has good copyright string.
- 🔥 FAIL
First line in license file is:
"copyright © 2017 ibm corp. with reserved font name "plex""
which does not match the expected format, similar to:
"Copyright 2022 The Familyname Project Authors (git url)"
[code: bad-format]🔥 FAIL Ensure dotted circle glyph is present and can attach marks.
- 🔥 FAIL
The following glyphs could not be attached to the dotted circle glyph:
- uni0300
- uni0301
- uni0302
- uni0303
- uni0304
- uni0307
- uni0308
- uni030A
- uni030B
- uni030C
- 5 more.
Use -F or --full-lists to disable shortening of long lists.
[code: unattached-dotted-circle-marks]⚠️ WARN Check GDEF mark glyph class doesn't have characters that are not marks.
⚠️ WARNThe following non-mark characters should not be in the GDEF mark glyph class:
U+FBB2, U+FBB3, U+FBB4, U+FBB5, U+FBB6, U+FBB7, U+FBB8, U+FBB9, U+FBBA, U+FBBB and 4 more.
Use -F or --full-lists to disable shortening of long lists.
[code: non-mark-chars]⚠️ WARN Check if each glyph has the recommended amount of contours.
⚠️ WARNThis check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are infered from the typical ammounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.
The following glyphs do not have the recommended number of contours:
- Glyph name: uni00AD Contours detected: 1 Expected: 0
-
Glyph name: uni20A8 Contours detected: 2 Expected: 3
-
Glyph name: fi Contours detected: 2 Expected: 3
Glyph name: uni00AD Contours detected: 1 Expected: 0
[code: contour-count]
⚠️ WARN Are there caret positions declared for every ligature?
⚠️ WARNThis font lacks caret position values for ligature glyphs on its GDEF table.
[code: lacks-caret-pos]
⚠️ WARN Is there kerning info for non-ligated sequences?
⚠️ WARNGPOS table lacks kerning info for the following non-ligated sequences:
- f + i
[code: lacks-kern-info]
⚠️ WARN Does the font contain a soft hyphen?
⚠️ WARNThis font has a 'Soft Hyphen' character.
[code: softhyphen]
⚠️ WARN Check font contains no unreachable glyphs
⚠️ WARNThe following glyphs could not be reached by codepoint or substitution rules:
- comp.barar
- comp.doublebarar
- comp.foururduar
- comp.threedotsdown
- comp.twodotsvertical
- comp.var
- comp.vinvertedar
- comp.wavyhamzaar
- hamzacenterar
- jacute
- 6 more.
Use -F or --full-lists to disable shortening of long lists.
[code: unreachable-glyphs]⚠️ WARN Glyph names are all valid?
⚠️ WARNThe following glyph names may be too long for some legacy systems which may expect a maximum 31-characters length limit:
alefMaksura_jehar.fina.rlig.short and alefMaksura_zainar.fina.rlig.short
[code: legacy-long-names]
⚠️ WARN Validate size, and resolution of article images, and ensure article page has minimum length and includes visual assets.
⚠️ WARNFamily metadata at ofl/ibmplexsansarabic does not have an article.
[code: lacks-article]
⚠️ WARN Check for codepoints not covered by METADATA subsets.
⚠️ WARNThe following codepoints supported by the font are not covered by
any subsets defined in the font's metadata file, and will never
be served. You can solve this by either manually adding additional
subset declarations to METADATA.pb, or by editing the glyphset
definitions.
- U+02D8 BREVE: try adding one of: canadian-aboriginal, yi
- U+02D9 DOT ABOVE: try adding one of: canadian-aboriginal, yi
- U+02DB OGONEK: try adding one of: canadian-aboriginal, yi
- U+0302 COMBINING CIRCUMFLEX ACCENT: try adding one of: math, coptic, cherokee, tifinagh
- U+0307 COMBINING DOT ABOVE: try adding one of: math, hebrew, duployan, coptic, syriac, tai-le, malayalam, tifinagh, canadian-aboriginal, old-permic, todhri
- U+030A COMBINING RING ABOVE: try adding one of: syriac, duployan
- U+030B COMBINING DOUBLE ACUTE ACCENT: try adding one of: osage, cherokee
- U+030C COMBINING CARON: try adding one of: cherokee, tai-le
- U+0315 COMBINING COMMA ABOVE RIGHT: try adding math
- U+0327 COMBINING CEDILLA: try adding math 82 more.
Use -F or --full-lists to disable shortening of long lists.
Or you can add the above codepoints to one of the subsets supported by the font: arabic
, cyrillic-ext
, latin
, latin-ext
, menu
⚠️ WARN DESCRIPTION.en_us.html should end in a linebreak.
⚠️ WARNThe last characther on DESCRIPTION.en_us.html is not a line-break. Please add it.
[code: missing-eof-linebreak]
⚠️ WARN Check OFL body text is correct.
⚠️ WARNThe OFL.txt body text is incorrect. Please use https://github.com/googlefonts/Unified-Font-Repository/blob/main/OFL.txt as a template. You should only modify the first line.
Lines changed:
+ \n
- This license is copied below, and is also available with a FAQ at:\n
+ This license is copied below, and is also available with a FAQ at: https://openfontlicense.org\n
[code: incorrect-ofl-body-text]⚠️ WARN Check copyright namerecords match license file.
-
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description] -
⚠️ WARNPlease consider updating the url from 'https://scripts.sil.org/OFL' to 'https://openfontlicense.org'.
[code: old-url]
⚠️ WARN License URL matches License text on name table?
-
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description] -
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description] -
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description]
⚠️ WARN Ensure soft_dotted characters lose their dot when combined with marks that replace the dot.
⚠️ WARNThe dot of soft dotted characters should disappear in other cases, for example: ĩ̧ ī̧ i̧̇ i̧̊ i̧̋ ǐ̧ į̃ į̄ į̇ į̊ į̋ į̌ j̧̀ j̧́ j̧̃ j̧̄ j̧̇ j̧̈ j̧̊ j̧̋
Your font fully covers the following languages that require the soft-dotted feature: Lithuanian (Latn, 2,357,094 speakers), Dutch (Latn, 31,709,104 speakers).
Your font does not cover the following languages that require the soft-dotted feature: Avokaya (Latn, 100,000 speakers), Southern Tutchone (Latn, 65 speakers), Kaska (Latn, 125 speakers), Southern Kisi (Latn, 360,000 speakers), Northern Tutchone (Latn, 85 speakers), Ijo, Southeast (Latn, 2,471,000 speakers), Longto (Latn, 5,000 speakers), Mango (Latn, 77,000 speakers), Ejagham (Latn, 120,000 speakers), Dan (Latn, 1,099,244 speakers), South Central Banda (Latn, 244,000 speakers), Abua (Latn, 25,000 speakers), Koonzime (Latn, 40,000 speakers), Kom (Latn, 360,685 speakers), Kpelle, Guinea (Latn, 622,000 speakers), Igbo (Latn, 27,823,640 speakers), Mfumte (Latn, 79,000 speakers), Sar (Latn, 500,000 speakers), Basaa (Latn, 332,940 speakers), Keliko (Latn, 63,000 speakers), Yala (Latn, 200,000 speakers), Han (Latn, 6 speakers), Gulay (Latn, 250,478 speakers), Ikwere (Latn, 717,000 speakers), Zapotec (Latn, 490,000 speakers), Teke-Ebo (Latn, 260,000 speakers), Dii (Latn, 71,000 speakers), Nateni (Latn, 100,000 speakers), Western Krahn (Latn, 97,800 speakers), Belarusian (Cyrl, 10,064,517 speakers), Navajo (Latn, 166,319 speakers), Vute (Latn, 21,000 speakers), Ekpeye (Latn, 226,000 speakers), Cicipu (Latn, 44,000 speakers), Aghem (Latn, 38,843 speakers), Lugbara (Latn, 2,200,000 speakers), Makaa (Latn, 221,000 speakers), Mundani (Latn, 34,000 speakers), Bete-Bendi (Latn, 100,000 speakers), Ebira (Latn, 2,200,000 speakers), Ma’di (Latn, 584,000 speakers), Nzakara (Latn, 50,000 speakers), Fur (Latn, 1,230,163 speakers), Heiltsuk (Latn, 300 speakers), Ngbaka (Latn, 1,020,000 speakers), Ukrainian (Cyrl, 29,273,587 speakers), Bafut (Latn, 158,146 speakers).
[code: soft-dotted]⚠️ WARN Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering?
- ℹ️ INFO
These are the ppm ranges declared on the gasp table:
PPM <= 8: flag = 0x0A - Use grayscale rendering - Use smoothing along multiple axes with ClearType® PPM <= 16: flag = 0x07 - Use grid-fitting - Use grayscale rendering - Use gridfitting with ClearType symmetric smoothing PPM <= 65535: flag = 0x0F - Use grid-fitting - Use grayscale rendering - Use gridfitting with ClearType symmetric smoothing - Use smoothing along multiple axes with ClearType®
[code: ranges]-
⚠️ WARNThe gasp table has a range of 8 that may be unneccessary.
[code: non-ffff-range] -
⚠️ WARNThe gasp table has a range of 16 that may be unneccessary.
[code: non-ffff-range]
ℹ️ INFO Show hinting filesize impact.
- ℹ️ INFO
Hinting filesize impact:
ofl/ibmplexsansarabic/IBMPlexSansArabic-Regular.ttf | |
---|---|
Dehinted Size | 168.1kb |
Hinted Size | 230.4kb |
Increase | 62.3kb |
Change | 37.0 % |
ℹ️ INFO Font contains all required tables?
- ℹ️ INFO
This font contains the following optional tables:
- cvt
- fpgm
- loca
- prep
- GPOS
- GSUB
- gasp
[code: optional-tables]
ℹ️ INFO METADATA.pb: Validate family.minisite_url field.
- ℹ️ INFO
Please consider adding a family.minisite_url entry.
[code: lacks-minisite-url]
ℹ️ INFO Check for presence of an ARTICLE.en_us.html file
- ℹ️ INFO
This font doesn't have an ARTICLE.en_us.html file.
[code: missing-article]
ℹ️ INFO EPAR table present in font?
- ℹ️ INFO
EPAR table not present in font. To learn more see When missing EPAR table, just emit INFO alert fonttools/fontbakery#818
[code: lacks-EPAR]
[33] IBMPlexSansArabic-Thin.ttf
💥 ERROR Shapes languages in all GF glyphsets.
- 💥 ERROR
Failed with AttributeError: 'NoneType' object has no attribute 'get'
File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/fontbakery/checkrunner.py", line 213, in _run_check
subresults = list(subresults)
File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/fontbakery/checks/vendorspecific/googlefonts/glyphset.py", line 140, in check_glyphsets_shape_languages
reporter = shaperglot_checker.check(shaperglot_languages[language_code])
File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/shaperglot/checker.py", line 54, in check
for check_object in self.lang.get("shaperglot_checks", []):
[code: failed-check]
🔥 FAIL Check that glyph for U+0675 ARABIC LETTER HIGH HAMZA is not a mark.
- 🔥 FAIL
The arabic letter high hamza (U+0675) should have roughly the same size the arabic letter hamza (U+0621), but a different glyph outline area was detected.
[code: glyph-area]
🔥 FAIL Check that Arabic spacing symbols U+FBB2–FBC1 aren't classified as marks.
-
🔥 FAIL
"uniFBB2" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB3" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB4" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB5" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB6" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB7" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB8" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB9" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBA" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBB" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBD" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBE" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBF" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBC1" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef]
🔥 FAIL Ensure the font supports case swapping for all its glyphs.
- 🔥 FAIL
The following glyphs lack their case-swapping counterparts:
Glyph present in the font | Missing case-swapping counterpart |
---|---|
U+0110: LATIN CAPITAL LETTER D WITH STROKE | U+0111: LATIN SMALL LETTER D WITH STROKE |
U+0135: LATIN SMALL LETTER J WITH CIRCUMFLEX | U+0134: LATIN CAPITAL LETTER J WITH CIRCUMFLEX |
🔥 FAIL Ensure smart dropout control is enabled in "prep" table instructions.
- 🔥 FAIL
The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the
gftools fix-nonhinting
script.
[code: lacks-smart-dropout]
🔥 FAIL Are there unwanted tables?
- 🔥 FAIL
The following unwanted font tables were found:
- DSIG - This font has a digital signature (DSIG table) which is only required - even if only a placeholder - on old programs like MS Office 2013 in order to work properly. The current recommendation is to completely remove the DSIG table.
They can be removed with the 'fix-unwanted-tables' script provided by gftools.
[code: unwanted-tables]🔥 FAIL Does DESCRIPTION file contain a upstream Git repo URL?
- 🔥 FAIL
Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file.
[code: lacks-git-url]
🔥 FAIL Copyright notices match canonical pattern in fonts
- 🔥 FAIL
Name Table entry: Copyright notices should match a pattern similar to:
"Copyright 2020 The Familyname Project Authors (git url)"
But instead we have got:
"Copyright 2019 IBM Corp. All rights reserved."
[code: bad-notice-format]- 🔥 FAIL
METADATA.pb: Copyright notices should match a pattern similar to:
"Copyright 2020 The Familyname Project Authors (git url)"
But instead we have got:
"Copyright 2019 IBM Corp. All rights reserved."
[code: bad-notice-format]🔥 FAIL Check license file has good copyright string.
- 🔥 FAIL
First line in license file is:
"copyright © 2017 ibm corp. with reserved font name "plex""
which does not match the expected format, similar to:
"Copyright 2022 The Familyname Project Authors (git url)"
[code: bad-format]🔥 FAIL Ensure dotted circle glyph is present and can attach marks.
- 🔥 FAIL
The following glyphs could not be attached to the dotted circle glyph:
- uni0300
- uni0301
- uni0302
- uni0303
- uni0304
- uni0307
- uni0308
- uni030A
- uni030B
- uni030C
- 5 more.
Use -F or --full-lists to disable shortening of long lists.
[code: unattached-dotted-circle-marks]⚠️ WARN Check GDEF mark glyph class doesn't have characters that are not marks.
⚠️ WARNThe following non-mark characters should not be in the GDEF mark glyph class:
U+FBB2, U+FBB3, U+FBB4, U+FBB5, U+FBB6, U+FBB7, U+FBB8, U+FBB9, U+FBBA, U+FBBB and 4 more.
Use -F or --full-lists to disable shortening of long lists.
[code: non-mark-chars]⚠️ WARN Check if each glyph has the recommended amount of contours.
⚠️ WARNThis check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are infered from the typical ammounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.
The following glyphs do not have the recommended number of contours:
- Glyph name: uni00AD Contours detected: 1 Expected: 0
-
Glyph name: uni20A8 Contours detected: 2 Expected: 3
-
Glyph name: fi Contours detected: 2 Expected: 3
Glyph name: uni00AD Contours detected: 1 Expected: 0
[code: contour-count]
⚠️ WARN Are there caret positions declared for every ligature?
⚠️ WARNThis font lacks caret position values for ligature glyphs on its GDEF table.
[code: lacks-caret-pos]
⚠️ WARN Is there kerning info for non-ligated sequences?
⚠️ WARNGPOS table lacks kerning info for the following non-ligated sequences:
- f + i
[code: lacks-kern-info]
⚠️ WARN Does the font contain a soft hyphen?
⚠️ WARNThis font has a 'Soft Hyphen' character.
[code: softhyphen]
⚠️ WARN Check font contains no unreachable glyphs
⚠️ WARNThe following glyphs could not be reached by codepoint or substitution rules:
- comp.barar
- comp.doublebarar
- comp.foururduar
- comp.threedotsdown
- comp.twodotsvertical
- comp.var
- comp.vinvertedar
- comp.wavyhamzaar
- hamzacenterar
- jacute
- 6 more.
Use -F or --full-lists to disable shortening of long lists.
[code: unreachable-glyphs]⚠️ WARN Glyph names are all valid?
⚠️ WARNThe following glyph names may be too long for some legacy systems which may expect a maximum 31-characters length limit:
alefMaksura_jehar.fina.rlig.short and alefMaksura_zainar.fina.rlig.short
[code: legacy-long-names]
⚠️ WARN Validate size, and resolution of article images, and ensure article page has minimum length and includes visual assets.
⚠️ WARNFamily metadata at ofl/ibmplexsansarabic does not have an article.
[code: lacks-article]
⚠️ WARN Check for codepoints not covered by METADATA subsets.
⚠️ WARNThe following codepoints supported by the font are not covered by
any subsets defined in the font's metadata file, and will never
be served. You can solve this by either manually adding additional
subset declarations to METADATA.pb, or by editing the glyphset
definitions.
- U+02D8 BREVE: try adding one of: canadian-aboriginal, yi
- U+02D9 DOT ABOVE: try adding one of: canadian-aboriginal, yi
- U+02DB OGONEK: try adding one of: canadian-aboriginal, yi
- U+0302 COMBINING CIRCUMFLEX ACCENT: try adding one of: math, coptic, cherokee, tifinagh
- U+0307 COMBINING DOT ABOVE: try adding one of: math, hebrew, duployan, coptic, syriac, tai-le, malayalam, tifinagh, canadian-aboriginal, old-permic, todhri
- U+030A COMBINING RING ABOVE: try adding one of: syriac, duployan
- U+030B COMBINING DOUBLE ACUTE ACCENT: try adding one of: osage, cherokee
- U+030C COMBINING CARON: try adding one of: cherokee, tai-le
- U+0315 COMBINING COMMA ABOVE RIGHT: try adding math
- U+0327 COMBINING CEDILLA: try adding math 82 more.
Use -F or --full-lists to disable shortening of long lists.
Or you can add the above codepoints to one of the subsets supported by the font: arabic
, cyrillic-ext
, latin
, latin-ext
, menu
⚠️ WARN DESCRIPTION.en_us.html should end in a linebreak.
⚠️ WARNThe last characther on DESCRIPTION.en_us.html is not a line-break. Please add it.
[code: missing-eof-linebreak]
⚠️ WARN Check OFL body text is correct.
⚠️ WARNThe OFL.txt body text is incorrect. Please use https://github.com/googlefonts/Unified-Font-Repository/blob/main/OFL.txt as a template. You should only modify the first line.
Lines changed:
+ \n
- This license is copied below, and is also available with a FAQ at:\n
+ This license is copied below, and is also available with a FAQ at: https://openfontlicense.org\n
[code: incorrect-ofl-body-text]⚠️ WARN Check copyright namerecords match license file.
-
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description] -
⚠️ WARNPlease consider updating the url from 'https://scripts.sil.org/OFL' to 'https://openfontlicense.org'.
[code: old-url]
⚠️ WARN License URL matches License text on name table?
-
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description] -
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description] -
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description]
⚠️ WARN Ensure soft_dotted characters lose their dot when combined with marks that replace the dot.
⚠️ WARNThe dot of soft dotted characters should disappear in other cases, for example: ĩ̧ ī̧ i̧̇ i̧̊ i̧̋ ǐ̧ į̃ į̄ į̇ į̊ į̋ į̌ j̧̀ j̧́ j̧̃ j̧̄ j̧̇ j̧̈ j̧̊ j̧̋
Your font fully covers the following languages that require the soft-dotted feature: Lithuanian (Latn, 2,357,094 speakers), Dutch (Latn, 31,709,104 speakers).
Your font does not cover the following languages that require the soft-dotted feature: Avokaya (Latn, 100,000 speakers), Southern Tutchone (Latn, 65 speakers), Kaska (Latn, 125 speakers), Southern Kisi (Latn, 360,000 speakers), Northern Tutchone (Latn, 85 speakers), Ijo, Southeast (Latn, 2,471,000 speakers), Longto (Latn, 5,000 speakers), Mango (Latn, 77,000 speakers), Ejagham (Latn, 120,000 speakers), Dan (Latn, 1,099,244 speakers), South Central Banda (Latn, 244,000 speakers), Abua (Latn, 25,000 speakers), Koonzime (Latn, 40,000 speakers), Kom (Latn, 360,685 speakers), Kpelle, Guinea (Latn, 622,000 speakers), Igbo (Latn, 27,823,640 speakers), Mfumte (Latn, 79,000 speakers), Sar (Latn, 500,000 speakers), Basaa (Latn, 332,940 speakers), Keliko (Latn, 63,000 speakers), Yala (Latn, 200,000 speakers), Han (Latn, 6 speakers), Gulay (Latn, 250,478 speakers), Ikwere (Latn, 717,000 speakers), Zapotec (Latn, 490,000 speakers), Teke-Ebo (Latn, 260,000 speakers), Dii (Latn, 71,000 speakers), Nateni (Latn, 100,000 speakers), Western Krahn (Latn, 97,800 speakers), Belarusian (Cyrl, 10,064,517 speakers), Navajo (Latn, 166,319 speakers), Vute (Latn, 21,000 speakers), Ekpeye (Latn, 226,000 speakers), Cicipu (Latn, 44,000 speakers), Aghem (Latn, 38,843 speakers), Lugbara (Latn, 2,200,000 speakers), Makaa (Latn, 221,000 speakers), Mundani (Latn, 34,000 speakers), Bete-Bendi (Latn, 100,000 speakers), Ebira (Latn, 2,200,000 speakers), Ma’di (Latn, 584,000 speakers), Nzakara (Latn, 50,000 speakers), Fur (Latn, 1,230,163 speakers), Heiltsuk (Latn, 300 speakers), Ngbaka (Latn, 1,020,000 speakers), Ukrainian (Cyrl, 29,273,587 speakers), Bafut (Latn, 158,146 speakers).
[code: soft-dotted]⚠️ WARN Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering?
- ℹ️ INFO
These are the ppm ranges declared on the gasp table:
PPM <= 8: flag = 0x0A - Use grayscale rendering - Use smoothing along multiple axes with ClearType® PPM <= 16: flag = 0x07 - Use grid-fitting - Use grayscale rendering - Use gridfitting with ClearType symmetric smoothing PPM <= 65535: flag = 0x0F - Use grid-fitting - Use grayscale rendering - Use gridfitting with ClearType symmetric smoothing - Use smoothing along multiple axes with ClearType®
[code: ranges]-
⚠️ WARNThe gasp table has a range of 8 that may be unneccessary.
[code: non-ffff-range] -
⚠️ WARNThe gasp table has a range of 16 that may be unneccessary.
[code: non-ffff-range]
ℹ️ INFO Show hinting filesize impact.
- ℹ️ INFO
Hinting filesize impact:
ofl/ibmplexsansarabic/IBMPlexSansArabic-Thin.ttf | |
---|---|
Dehinted Size | 169.0kb |
Hinted Size | 236.5kb |
Increase | 67.5kb |
Change | 39.9 % |
ℹ️ INFO Font contains all required tables?
- ℹ️ INFO
This font contains the following optional tables:
- cvt
- fpgm
- loca
- prep
- GPOS
- GSUB
- gasp
[code: optional-tables]
ℹ️ INFO METADATA.pb: Validate family.minisite_url field.
- ℹ️ INFO
Please consider adding a family.minisite_url entry.
[code: lacks-minisite-url]
ℹ️ INFO Check for presence of an ARTICLE.en_us.html file
- ℹ️ INFO
This font doesn't have an ARTICLE.en_us.html file.
[code: missing-article]
ℹ️ INFO EPAR table present in font?
- ℹ️ INFO
EPAR table not present in font. To learn more see When missing EPAR table, just emit INFO alert fonttools/fontbakery#818
[code: lacks-EPAR]
[34] IBMPlexSansArabic-SemiBold.ttf
💥 ERROR Shapes languages in all GF glyphsets.
- 💥 ERROR
Failed with AttributeError: 'NoneType' object has no attribute 'get'
File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/fontbakery/checkrunner.py", line 213, in _run_check
subresults = list(subresults)
File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/fontbakery/checks/vendorspecific/googlefonts/glyphset.py", line 140, in check_glyphsets_shape_languages
reporter = shaperglot_checker.check(shaperglot_languages[language_code])
File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/shaperglot/checker.py", line 54, in check
for check_object in self.lang.get("shaperglot_checks", []):
[code: failed-check]
🔥 FAIL Check that glyph for U+0675 ARABIC LETTER HIGH HAMZA is not a mark.
- 🔥 FAIL
The arabic letter high hamza (U+0675) should have roughly the same size the arabic letter hamza (U+0621), but a different glyph outline area was detected.
[code: glyph-area]
🔥 FAIL Check that Arabic spacing symbols U+FBB2–FBC1 aren't classified as marks.
-
🔥 FAIL
"uniFBB2" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB3" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB4" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB5" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB6" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB7" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB8" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB9" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBA" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBB" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBD" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBE" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBF" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBC1" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef]
🔥 FAIL Ensure the font supports case swapping for all its glyphs.
- 🔥 FAIL
The following glyphs lack their case-swapping counterparts:
Glyph present in the font | Missing case-swapping counterpart |
---|---|
U+0110: LATIN CAPITAL LETTER D WITH STROKE | U+0111: LATIN SMALL LETTER D WITH STROKE |
U+0135: LATIN SMALL LETTER J WITH CIRCUMFLEX | U+0134: LATIN CAPITAL LETTER J WITH CIRCUMFLEX |
🔥 FAIL Ensure smart dropout control is enabled in "prep" table instructions.
- 🔥 FAIL
The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the
gftools fix-nonhinting
script.
[code: lacks-smart-dropout]
🔥 FAIL Are there unwanted tables?
- 🔥 FAIL
The following unwanted font tables were found:
- DSIG - This font has a digital signature (DSIG table) which is only required - even if only a placeholder - on old programs like MS Office 2013 in order to work properly. The current recommendation is to completely remove the DSIG table.
They can be removed with the 'fix-unwanted-tables' script provided by gftools.
[code: unwanted-tables]🔥 FAIL Does DESCRIPTION file contain a upstream Git repo URL?
- 🔥 FAIL
Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file.
[code: lacks-git-url]
🔥 FAIL Copyright notices match canonical pattern in fonts
- 🔥 FAIL
Name Table entry: Copyright notices should match a pattern similar to:
"Copyright 2020 The Familyname Project Authors (git url)"
But instead we have got:
"Copyright 2019 IBM Corp. All rights reserved."
[code: bad-notice-format]- 🔥 FAIL
METADATA.pb: Copyright notices should match a pattern similar to:
"Copyright 2020 The Familyname Project Authors (git url)"
But instead we have got:
"Copyright 2019 IBM Corp. All rights reserved."
[code: bad-notice-format]🔥 FAIL Check license file has good copyright string.
- 🔥 FAIL
First line in license file is:
"copyright © 2017 ibm corp. with reserved font name "plex""
which does not match the expected format, similar to:
"Copyright 2022 The Familyname Project Authors (git url)"
[code: bad-format]🔥 FAIL Ensure dotted circle glyph is present and can attach marks.
- 🔥 FAIL
The following glyphs could not be attached to the dotted circle glyph:
- uni0300
- uni0301
- uni0302
- uni0303
- uni0304
- uni0307
- uni0308
- uni030A
- uni030B
- uni030C
- 5 more.
Use -F or --full-lists to disable shortening of long lists.
[code: unattached-dotted-circle-marks]⚠️ WARN Check GDEF mark glyph class doesn't have characters that are not marks.
⚠️ WARNThe following non-mark characters should not be in the GDEF mark glyph class:
U+FBB2, U+FBB3, U+FBB4, U+FBB5, U+FBB6, U+FBB7, U+FBB8, U+FBB9, U+FBBA, U+FBBB and 4 more.
Use -F or --full-lists to disable shortening of long lists.
[code: non-mark-chars]⚠️ WARN Check if each glyph has the recommended amount of contours.
⚠️ WARNThis check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are infered from the typical ammounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.
The following glyphs do not have the recommended number of contours:
- Glyph name: uni00AD Contours detected: 1 Expected: 0
-
Glyph name: uni20A8 Contours detected: 2 Expected: 3
-
Glyph name: fi Contours detected: 2 Expected: 3
Glyph name: uni00AD Contours detected: 1 Expected: 0
[code: contour-count]
⚠️ WARN Are there caret positions declared for every ligature?
⚠️ WARNThis font lacks caret position values for ligature glyphs on its GDEF table.
[code: lacks-caret-pos]
⚠️ WARN Is there kerning info for non-ligated sequences?
⚠️ WARNGPOS table lacks kerning info for the following non-ligated sequences:
- f + i
[code: lacks-kern-info]
⚠️ WARN Does the font contain a soft hyphen?
⚠️ WARNThis font has a 'Soft Hyphen' character.
[code: softhyphen]
⚠️ WARN Check font contains no unreachable glyphs
⚠️ WARNThe following glyphs could not be reached by codepoint or substitution rules:
- comp.barar
- comp.doublebarar
- comp.foururduar
- comp.threedotsdown
- comp.twodotsvertical
- comp.var
- comp.vinvertedar
- comp.wavyhamzaar
- fourdotscenterar
- foururducenterar
- 11 more.
Use -F or --full-lists to disable shortening of long lists.
[code: unreachable-glyphs]⚠️ WARN Glyph names are all valid?
⚠️ WARNThe following glyph names may be too long for some legacy systems which may expect a maximum 31-characters length limit:
alefMaksura_jehar.fina.rlig.short and alefMaksura_zainar.fina.rlig.short
[code: legacy-long-names]
⚠️ WARN Validate size, and resolution of article images, and ensure article page has minimum length and includes visual assets.
⚠️ WARNFamily metadata at ofl/ibmplexsansarabic does not have an article.
[code: lacks-article]
⚠️ WARN Check for codepoints not covered by METADATA subsets.
⚠️ WARNThe following codepoints supported by the font are not covered by
any subsets defined in the font's metadata file, and will never
be served. You can solve this by either manually adding additional
subset declarations to METADATA.pb, or by editing the glyphset
definitions.
- U+02D8 BREVE: try adding one of: canadian-aboriginal, yi
- U+02D9 DOT ABOVE: try adding one of: canadian-aboriginal, yi
- U+02DB OGONEK: try adding one of: canadian-aboriginal, yi
- U+0302 COMBINING CIRCUMFLEX ACCENT: try adding one of: math, coptic, cherokee, tifinagh
- U+0307 COMBINING DOT ABOVE: try adding one of: math, hebrew, duployan, coptic, syriac, tai-le, malayalam, tifinagh, canadian-aboriginal, old-permic, todhri
- U+030A COMBINING RING ABOVE: try adding one of: syriac, duployan
- U+030B COMBINING DOUBLE ACUTE ACCENT: try adding one of: osage, cherokee
- U+030C COMBINING CARON: try adding one of: cherokee, tai-le
- U+0315 COMBINING COMMA ABOVE RIGHT: try adding math
- U+0327 COMBINING CEDILLA: try adding math 82 more.
Use -F or --full-lists to disable shortening of long lists.
Or you can add the above codepoints to one of the subsets supported by the font: arabic
, cyrillic-ext
, latin
, latin-ext
, menu
⚠️ WARN DESCRIPTION.en_us.html should end in a linebreak.
⚠️ WARNThe last characther on DESCRIPTION.en_us.html is not a line-break. Please add it.
[code: missing-eof-linebreak]
⚠️ WARN Check OFL body text is correct.
⚠️ WARNThe OFL.txt body text is incorrect. Please use https://github.com/googlefonts/Unified-Font-Repository/blob/main/OFL.txt as a template. You should only modify the first line.
Lines changed:
+ \n
- This license is copied below, and is also available with a FAQ at:\n
+ This license is copied below, and is also available with a FAQ at: https://openfontlicense.org\n
[code: incorrect-ofl-body-text]⚠️ WARN Check copyright namerecords match license file.
-
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description] -
⚠️ WARNPlease consider updating the url from 'https://scripts.sil.org/OFL' to 'https://openfontlicense.org'.
[code: old-url]
⚠️ WARN License URL matches License text on name table?
-
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description] -
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description] -
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description]
⚠️ WARN Ensure soft_dotted characters lose their dot when combined with marks that replace the dot.
⚠️ WARNThe dot of soft dotted characters should disappear in other cases, for example: ĩ̧ ī̧ i̧̇ i̧̊ i̧̋ ǐ̧ į̃ į̄ į̇ į̊ į̋ į̌ j̧̀ j̧́ j̧̃ j̧̄ j̧̇ j̧̈ j̧̊ j̧̋
Your font fully covers the following languages that require the soft-dotted feature: Lithuanian (Latn, 2,357,094 speakers), Dutch (Latn, 31,709,104 speakers).
Your font does not cover the following languages that require the soft-dotted feature: Avokaya (Latn, 100,000 speakers), Southern Tutchone (Latn, 65 speakers), Kaska (Latn, 125 speakers), Southern Kisi (Latn, 360,000 speakers), Northern Tutchone (Latn, 85 speakers), Ijo, Southeast (Latn, 2,471,000 speakers), Longto (Latn, 5,000 speakers), Mango (Latn, 77,000 speakers), Ejagham (Latn, 120,000 speakers), Dan (Latn, 1,099,244 speakers), South Central Banda (Latn, 244,000 speakers), Abua (Latn, 25,000 speakers), Koonzime (Latn, 40,000 speakers), Kom (Latn, 360,685 speakers), Kpelle, Guinea (Latn, 622,000 speakers), Igbo (Latn, 27,823,640 speakers), Mfumte (Latn, 79,000 speakers), Sar (Latn, 500,000 speakers), Basaa (Latn, 332,940 speakers), Keliko (Latn, 63,000 speakers), Yala (Latn, 200,000 speakers), Han (Latn, 6 speakers), Gulay (Latn, 250,478 speakers), Ikwere (Latn, 717,000 speakers), Zapotec (Latn, 490,000 speakers), Teke-Ebo (Latn, 260,000 speakers), Dii (Latn, 71,000 speakers), Nateni (Latn, 100,000 speakers), Western Krahn (Latn, 97,800 speakers), Belarusian (Cyrl, 10,064,517 speakers), Navajo (Latn, 166,319 speakers), Vute (Latn, 21,000 speakers), Ekpeye (Latn, 226,000 speakers), Cicipu (Latn, 44,000 speakers), Aghem (Latn, 38,843 speakers), Lugbara (Latn, 2,200,000 speakers), Makaa (Latn, 221,000 speakers), Mundani (Latn, 34,000 speakers), Bete-Bendi (Latn, 100,000 speakers), Ebira (Latn, 2,200,000 speakers), Ma’di (Latn, 584,000 speakers), Nzakara (Latn, 50,000 speakers), Fur (Latn, 1,230,163 speakers), Heiltsuk (Latn, 300 speakers), Ngbaka (Latn, 1,020,000 speakers), Ukrainian (Cyrl, 29,273,587 speakers), Bafut (Latn, 158,146 speakers).
[code: soft-dotted]⚠️ WARN Do outlines contain any semi-vertical or semi-horizontal lines?
⚠️ WARNThe following glyphs have semi-vertical/semi-horizontal lines:
* uniFDF4 (U+FDF4): L<<819.0,5.0>--<820.0,-126.0>>
[code: found-semi-vertical]
⚠️ WARN Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering?
- ℹ️ INFO
These are the ppm ranges declared on the gasp table:
PPM <= 8: flag = 0x0A - Use grayscale rendering - Use smoothing along multiple axes with ClearType® PPM <= 16: flag = 0x07 - Use grid-fitting - Use grayscale rendering - Use gridfitting with ClearType symmetric smoothing PPM <= 65535: flag = 0x0F - Use grid-fitting - Use grayscale rendering - Use gridfitting with ClearType symmetric smoothing - Use smoothing along multiple axes with ClearType®
[code: ranges]-
⚠️ WARNThe gasp table has a range of 8 that may be unneccessary.
[code: non-ffff-range] -
⚠️ WARNThe gasp table has a range of 16 that may be unneccessary.
[code: non-ffff-range]
ℹ️ INFO Show hinting filesize impact.
- ℹ️ INFO
Hinting filesize impact:
ofl/ibmplexsansarabic/IBMPlexSansArabic-SemiBold.ttf | |
---|---|
Dehinted Size | 173.1kb |
Hinted Size | 238.9kb |
Increase | 65.8kb |
Change | 38.0 % |
ℹ️ INFO Font contains all required tables?
- ℹ️ INFO
This font contains the following optional tables:
- cvt
- fpgm
- loca
- prep
- GPOS
- GSUB
- gasp
[code: optional-tables]
ℹ️ INFO METADATA.pb: Validate family.minisite_url field.
- ℹ️ INFO
Please consider adding a family.minisite_url entry.
[code: lacks-minisite-url]
ℹ️ INFO Check for presence of an ARTICLE.en_us.html file
- ℹ️ INFO
This font doesn't have an ARTICLE.en_us.html file.
[code: missing-article]
ℹ️ INFO EPAR table present in font?
- ℹ️ INFO
EPAR table not present in font. To learn more see When missing EPAR table, just emit INFO alert fonttools/fontbakery#818
[code: lacks-EPAR]
[34] IBMPlexSansArabic-ExtraLight.ttf
💥 ERROR Shapes languages in all GF glyphsets.
- 💥 ERROR
Failed with AttributeError: 'NoneType' object has no attribute 'get'
File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/fontbakery/checkrunner.py", line 213, in _run_check
subresults = list(subresults)
File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/fontbakery/checks/vendorspecific/googlefonts/glyphset.py", line 140, in check_glyphsets_shape_languages
reporter = shaperglot_checker.check(shaperglot_languages[language_code])
File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/shaperglot/checker.py", line 54, in check
for check_object in self.lang.get("shaperglot_checks", []):
[code: failed-check]
🔥 FAIL Check that glyph for U+0675 ARABIC LETTER HIGH HAMZA is not a mark.
- 🔥 FAIL
The arabic letter high hamza (U+0675) should have roughly the same size the arabic letter hamza (U+0621), but a different glyph outline area was detected.
[code: glyph-area]
🔥 FAIL Check that Arabic spacing symbols U+FBB2–FBC1 aren't classified as marks.
-
🔥 FAIL
"uniFBB2" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB3" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB4" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB5" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB6" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB7" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB8" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB9" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBA" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBB" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBD" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBE" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBF" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBC1" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef]
🔥 FAIL Ensure the font supports case swapping for all its glyphs.
- 🔥 FAIL
The following glyphs lack their case-swapping counterparts:
Glyph present in the font | Missing case-swapping counterpart |
---|---|
U+0110: LATIN CAPITAL LETTER D WITH STROKE | U+0111: LATIN SMALL LETTER D WITH STROKE |
U+0135: LATIN SMALL LETTER J WITH CIRCUMFLEX | U+0134: LATIN CAPITAL LETTER J WITH CIRCUMFLEX |
🔥 FAIL Ensure smart dropout control is enabled in "prep" table instructions.
- 🔥 FAIL
The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the
gftools fix-nonhinting
script.
[code: lacks-smart-dropout]
🔥 FAIL Are there unwanted tables?
- 🔥 FAIL
The following unwanted font tables were found:
- DSIG - This font has a digital signature (DSIG table) which is only required - even if only a placeholder - on old programs like MS Office 2013 in order to work properly. The current recommendation is to completely remove the DSIG table.
They can be removed with the 'fix-unwanted-tables' script provided by gftools.
[code: unwanted-tables]🔥 FAIL Does DESCRIPTION file contain a upstream Git repo URL?
- 🔥 FAIL
Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file.
[code: lacks-git-url]
🔥 FAIL Copyright notices match canonical pattern in fonts
- 🔥 FAIL
Name Table entry: Copyright notices should match a pattern similar to:
"Copyright 2020 The Familyname Project Authors (git url)"
But instead we have got:
"Copyright 2019 IBM Corp. All rights reserved."
[code: bad-notice-format]- 🔥 FAIL
METADATA.pb: Copyright notices should match a pattern similar to:
"Copyright 2020 The Familyname Project Authors (git url)"
But instead we have got:
"Copyright 2019 IBM Corp. All rights reserved."
[code: bad-notice-format]🔥 FAIL Check license file has good copyright string.
- 🔥 FAIL
First line in license file is:
"copyright © 2017 ibm corp. with reserved font name "plex""
which does not match the expected format, similar to:
"Copyright 2022 The Familyname Project Authors (git url)"
[code: bad-format]🔥 FAIL Ensure dotted circle glyph is present and can attach marks.
- 🔥 FAIL
The following glyphs could not be attached to the dotted circle glyph:
- uni0300
- uni0301
- uni0302
- uni0303
- uni0304
- uni0307
- uni0308
- uni030A
- uni030B
- uni030C
- 5 more.
Use -F or --full-lists to disable shortening of long lists.
[code: unattached-dotted-circle-marks]⚠️ WARN Check GDEF mark glyph class doesn't have characters that are not marks.
⚠️ WARNThe following non-mark characters should not be in the GDEF mark glyph class:
U+FBB2, U+FBB3, U+FBB4, U+FBB5, U+FBB6, U+FBB7, U+FBB8, U+FBB9, U+FBBA, U+FBBB and 4 more.
Use -F or --full-lists to disable shortening of long lists.
[code: non-mark-chars]⚠️ WARN Check if each glyph has the recommended amount of contours.
⚠️ WARNThis check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are infered from the typical ammounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.
The following glyphs do not have the recommended number of contours:
- Glyph name: uni00AD Contours detected: 1 Expected: 0
-
Glyph name: uni20A8 Contours detected: 2 Expected: 3
-
Glyph name: fi Contours detected: 2 Expected: 3
Glyph name: uni00AD Contours detected: 1 Expected: 0
[code: contour-count]
⚠️ WARN Are there caret positions declared for every ligature?
⚠️ WARNThis font lacks caret position values for ligature glyphs on its GDEF table.
[code: lacks-caret-pos]
⚠️ WARN Is there kerning info for non-ligated sequences?
⚠️ WARNGPOS table lacks kerning info for the following non-ligated sequences:
- f + i
[code: lacks-kern-info]
⚠️ WARN Combined length of family and style must not exceed 32 characters.
⚠️ WARNName ID 6 'IBMPlexSansArabic-ExtraLight' exceeds 27 characters. This has been found to cause problems with PostScript printers, especially on Mac platforms.
[code: nameid6-too-long]
⚠️ WARN Does the font contain a soft hyphen?
⚠️ WARNThis font has a 'Soft Hyphen' character.
[code: softhyphen]
⚠️ WARN Check font contains no unreachable glyphs
⚠️ WARNThe following glyphs could not be reached by codepoint or substitution rules:
- comp.barar
- comp.doublebarar
- comp.foururduar
- comp.threedotsdown
- comp.twodotsvertical
- comp.var
- comp.vinvertedar
- comp.wavyhamzaar
- hamzacenterar
- jacute
- 6 more.
Use -F or --full-lists to disable shortening of long lists.
[code: unreachable-glyphs]⚠️ WARN Glyph names are all valid?
⚠️ WARNThe following glyph names may be too long for some legacy systems which may expect a maximum 31-characters length limit:
alefMaksura_jehar.fina.rlig.short and alefMaksura_zainar.fina.rlig.short
[code: legacy-long-names]
⚠️ WARN Validate size, and resolution of article images, and ensure article page has minimum length and includes visual assets.
⚠️ WARNFamily metadata at ofl/ibmplexsansarabic does not have an article.
[code: lacks-article]
⚠️ WARN Check for codepoints not covered by METADATA subsets.
⚠️ WARNThe following codepoints supported by the font are not covered by
any subsets defined in the font's metadata file, and will never
be served. You can solve this by either manually adding additional
subset declarations to METADATA.pb, or by editing the glyphset
definitions.
- U+02D8 BREVE: try adding one of: canadian-aboriginal, yi
- U+02D9 DOT ABOVE: try adding one of: canadian-aboriginal, yi
- U+02DB OGONEK: try adding one of: canadian-aboriginal, yi
- U+0302 COMBINING CIRCUMFLEX ACCENT: try adding one of: math, coptic, cherokee, tifinagh
- U+0307 COMBINING DOT ABOVE: try adding one of: math, hebrew, duployan, coptic, syriac, tai-le, malayalam, tifinagh, canadian-aboriginal, old-permic, todhri
- U+030A COMBINING RING ABOVE: try adding one of: syriac, duployan
- U+030B COMBINING DOUBLE ACUTE ACCENT: try adding one of: osage, cherokee
- U+030C COMBINING CARON: try adding one of: cherokee, tai-le
- U+0315 COMBINING COMMA ABOVE RIGHT: try adding math
- U+0327 COMBINING CEDILLA: try adding math 82 more.
Use -F or --full-lists to disable shortening of long lists.
Or you can add the above codepoints to one of the subsets supported by the font: arabic
, cyrillic-ext
, latin
, latin-ext
, menu
⚠️ WARN DESCRIPTION.en_us.html should end in a linebreak.
⚠️ WARNThe last characther on DESCRIPTION.en_us.html is not a line-break. Please add it.
[code: missing-eof-linebreak]
⚠️ WARN Check OFL body text is correct.
⚠️ WARNThe OFL.txt body text is incorrect. Please use https://github.com/googlefonts/Unified-Font-Repository/blob/main/OFL.txt as a template. You should only modify the first line.
Lines changed:
+ \n
- This license is copied below, and is also available with a FAQ at:\n
+ This license is copied below, and is also available with a FAQ at: https://openfontlicense.org\n
[code: incorrect-ofl-body-text]⚠️ WARN Check copyright namerecords match license file.
-
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description] -
⚠️ WARNPlease consider updating the url from 'https://scripts.sil.org/OFL' to 'https://openfontlicense.org'.
[code: old-url]
⚠️ WARN License URL matches License text on name table?
-
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description] -
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description] -
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description]
⚠️ WARN Ensure soft_dotted characters lose their dot when combined with marks that replace the dot.
⚠️ WARNThe dot of soft dotted characters should disappear in other cases, for example: ĩ̧ ī̧ i̧̇ i̧̊ i̧̋ ǐ̧ į̃ į̄ į̇ į̊ į̋ į̌ j̧̀ j̧́ j̧̃ j̧̄ j̧̇ j̧̈ j̧̊ j̧̋
Your font fully covers the following languages that require the soft-dotted feature: Lithuanian (Latn, 2,357,094 speakers), Dutch (Latn, 31,709,104 speakers).
Your font does not cover the following languages that require the soft-dotted feature: Avokaya (Latn, 100,000 speakers), Southern Tutchone (Latn, 65 speakers), Kaska (Latn, 125 speakers), Southern Kisi (Latn, 360,000 speakers), Northern Tutchone (Latn, 85 speakers), Ijo, Southeast (Latn, 2,471,000 speakers), Longto (Latn, 5,000 speakers), Mango (Latn, 77,000 speakers), Ejagham (Latn, 120,000 speakers), Dan (Latn, 1,099,244 speakers), South Central Banda (Latn, 244,000 speakers), Abua (Latn, 25,000 speakers), Koonzime (Latn, 40,000 speakers), Kom (Latn, 360,685 speakers), Kpelle, Guinea (Latn, 622,000 speakers), Igbo (Latn, 27,823,640 speakers), Mfumte (Latn, 79,000 speakers), Sar (Latn, 500,000 speakers), Basaa (Latn, 332,940 speakers), Keliko (Latn, 63,000 speakers), Yala (Latn, 200,000 speakers), Han (Latn, 6 speakers), Gulay (Latn, 250,478 speakers), Ikwere (Latn, 717,000 speakers), Zapotec (Latn, 490,000 speakers), Teke-Ebo (Latn, 260,000 speakers), Dii (Latn, 71,000 speakers), Nateni (Latn, 100,000 speakers), Western Krahn (Latn, 97,800 speakers), Belarusian (Cyrl, 10,064,517 speakers), Navajo (Latn, 166,319 speakers), Vute (Latn, 21,000 speakers), Ekpeye (Latn, 226,000 speakers), Cicipu (Latn, 44,000 speakers), Aghem (Latn, 38,843 speakers), Lugbara (Latn, 2,200,000 speakers), Makaa (Latn, 221,000 speakers), Mundani (Latn, 34,000 speakers), Bete-Bendi (Latn, 100,000 speakers), Ebira (Latn, 2,200,000 speakers), Ma’di (Latn, 584,000 speakers), Nzakara (Latn, 50,000 speakers), Fur (Latn, 1,230,163 speakers), Heiltsuk (Latn, 300 speakers), Ngbaka (Latn, 1,020,000 speakers), Ukrainian (Cyrl, 29,273,587 speakers), Bafut (Latn, 158,146 speakers).
[code: soft-dotted]⚠️ WARN Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering?
- ℹ️ INFO
These are the ppm ranges declared on the gasp table:
PPM <= 8: flag = 0x0A - Use grayscale rendering - Use smoothing along multiple axes with ClearType® PPM <= 16: flag = 0x07 - Use grid-fitting - Use grayscale rendering - Use gridfitting with ClearType symmetric smoothing PPM <= 65535: flag = 0x0F - Use grid-fitting - Use grayscale rendering - Use gridfitting with ClearType symmetric smoothing - Use smoothing along multiple axes with ClearType®
[code: ranges]-
⚠️ WARNThe gasp table has a range of 8 that may be unneccessary.
[code: non-ffff-range] -
⚠️ WARNThe gasp table has a range of 16 that may be unneccessary.
[code: non-ffff-range]
ℹ️ INFO Show hinting filesize impact.
- ℹ️ INFO
Hinting filesize impact:
ofl/ibmplexsansarabic/IBMPlexSansArabic-ExtraLight.ttf | |
---|---|
Dehinted Size | 169.8kb |
Hinted Size | 236.0kb |
Increase | 66.2kb |
Change | 39.0 % |
ℹ️ INFO Font contains all required tables?
- ℹ️ INFO
This font contains the following optional tables:
- cvt
- fpgm
- loca
- prep
- GPOS
- GSUB
- gasp
[code: optional-tables]
ℹ️ INFO METADATA.pb: Validate family.minisite_url field.
- ℹ️ INFO
Please consider adding a family.minisite_url entry.
[code: lacks-minisite-url]
ℹ️ INFO Check for presence of an ARTICLE.en_us.html file
- ℹ️ INFO
This font doesn't have an ARTICLE.en_us.html file.
[code: missing-article]
ℹ️ INFO EPAR table present in font?
- ℹ️ INFO
EPAR table not present in font. To learn more see When missing EPAR table, just emit INFO alert fonttools/fontbakery#818
[code: lacks-EPAR]
[34] IBMPlexSansArabic-Bold.ttf
💥 ERROR Shapes languages in all GF glyphsets.
- 💥 ERROR
Failed with AttributeError: 'NoneType' object has no attribute 'get'
File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/fontbakery/checkrunner.py", line 213, in _run_check
subresults = list(subresults)
File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/fontbakery/checks/vendorspecific/googlefonts/glyphset.py", line 140, in check_glyphsets_shape_languages
reporter = shaperglot_checker.check(shaperglot_languages[language_code])
File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/shaperglot/checker.py", line 54, in check
for check_object in self.lang.get("shaperglot_checks", []):
[code: failed-check]
🔥 FAIL Check that glyph for U+0675 ARABIC LETTER HIGH HAMZA is not a mark.
- 🔥 FAIL
The arabic letter high hamza (U+0675) should have roughly the same size the arabic letter hamza (U+0621), but a different glyph outline area was detected.
[code: glyph-area]
🔥 FAIL Check that Arabic spacing symbols U+FBB2–FBC1 aren't classified as marks.
-
🔥 FAIL
"uniFBB2" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB3" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB4" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB5" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB6" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB7" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB8" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBB9" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBA" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBB" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBD" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBE" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBBF" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef] -
🔥 FAIL
"uniFBC1" is defined in GDEF as a mark (class 3).
[code: mark-in-gdef]
🔥 FAIL Ensure the font supports case swapping for all its glyphs.
- 🔥 FAIL
The following glyphs lack their case-swapping counterparts:
Glyph present in the font | Missing case-swapping counterpart |
---|---|
U+0110: LATIN CAPITAL LETTER D WITH STROKE | U+0111: LATIN SMALL LETTER D WITH STROKE |
U+0135: LATIN SMALL LETTER J WITH CIRCUMFLEX | U+0134: LATIN CAPITAL LETTER J WITH CIRCUMFLEX |
🔥 FAIL Ensure smart dropout control is enabled in "prep" table instructions.
- 🔥 FAIL
The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the
gftools fix-nonhinting
script.
[code: lacks-smart-dropout]
🔥 FAIL Are there unwanted tables?
- 🔥 FAIL
The following unwanted font tables were found:
- DSIG - This font has a digital signature (DSIG table) which is only required - even if only a placeholder - on old programs like MS Office 2013 in order to work properly. The current recommendation is to completely remove the DSIG table.
They can be removed with the 'fix-unwanted-tables' script provided by gftools.
[code: unwanted-tables]🔥 FAIL Does DESCRIPTION file contain a upstream Git repo URL?
- 🔥 FAIL
Please host your font project on a public Git repo (such as GitHub or GitLab) and place a link in the DESCRIPTION.en_us.html file.
[code: lacks-git-url]
🔥 FAIL Copyright notices match canonical pattern in fonts
- 🔥 FAIL
Name Table entry: Copyright notices should match a pattern similar to:
"Copyright 2020 The Familyname Project Authors (git url)"
But instead we have got:
"Copyright 2019 IBM Corp. All rights reserved."
[code: bad-notice-format]- 🔥 FAIL
METADATA.pb: Copyright notices should match a pattern similar to:
"Copyright 2020 The Familyname Project Authors (git url)"
But instead we have got:
"Copyright 2019 IBM Corp. All rights reserved."
[code: bad-notice-format]🔥 FAIL Check license file has good copyright string.
- 🔥 FAIL
First line in license file is:
"copyright © 2017 ibm corp. with reserved font name "plex""
which does not match the expected format, similar to:
"Copyright 2022 The Familyname Project Authors (git url)"
[code: bad-format]🔥 FAIL Ensure dotted circle glyph is present and can attach marks.
- 🔥 FAIL
The following glyphs could not be attached to the dotted circle glyph:
- uni0300
- uni0301
- uni0302
- uni0303
- uni0304
- uni0307
- uni0308
- uni030A
- uni030B
- uni030C
- 5 more.
Use -F or --full-lists to disable shortening of long lists.
[code: unattached-dotted-circle-marks]⚠️ WARN Check GDEF mark glyph class doesn't have characters that are not marks.
⚠️ WARNThe following non-mark characters should not be in the GDEF mark glyph class:
U+FBB2, U+FBB3, U+FBB4, U+FBB5, U+FBB6, U+FBB7, U+FBB8, U+FBB9, U+FBBA, U+FBBB and 4 more.
Use -F or --full-lists to disable shortening of long lists.
[code: non-mark-chars]⚠️ WARN Check if each glyph has the recommended amount of contours.
⚠️ WARNThis check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are infered from the typical ammounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.
The following glyphs do not have the recommended number of contours:
- Glyph name: uni00AD Contours detected: 1 Expected: 0
-
Glyph name: uni20A8 Contours detected: 2 Expected: 3
-
Glyph name: fi Contours detected: 2 Expected: 3
Glyph name: uni00AD Contours detected: 1 Expected: 0
[code: contour-count]
⚠️ WARN Are there caret positions declared for every ligature?
⚠️ WARNThis font lacks caret position values for ligature glyphs on its GDEF table.
[code: lacks-caret-pos]
⚠️ WARN Is there kerning info for non-ligated sequences?
⚠️ WARNGPOS table lacks kerning info for the following non-ligated sequences:
- f + i
[code: lacks-kern-info]
⚠️ WARN Does the font contain a soft hyphen?
⚠️ WARNThis font has a 'Soft Hyphen' character.
[code: softhyphen]
⚠️ WARN Check font contains no unreachable glyphs
⚠️ WARNThe following glyphs could not be reached by codepoint or substitution rules:
- comp.barar
- comp.doublebarar
- comp.foururduar
- comp.threedotsdown
- comp.twodotsvertical
- comp.var
- comp.vinvertedar
- comp.wavyhamzaar
- fourdotscenterar
- foururducenterar
- 11 more.
Use -F or --full-lists to disable shortening of long lists.
[code: unreachable-glyphs]⚠️ WARN Glyph names are all valid?
⚠️ WARNThe following glyph names may be too long for some legacy systems which may expect a maximum 31-characters length limit:
alefMaksura_jehar.fina.rlig.short and alefMaksura_zainar.fina.rlig.short
[code: legacy-long-names]
⚠️ WARN Validate size, and resolution of article images, and ensure article page has minimum length and includes visual assets.
⚠️ WARNFamily metadata at ofl/ibmplexsansarabic does not have an article.
[code: lacks-article]
⚠️ WARN Check for codepoints not covered by METADATA subsets.
⚠️ WARNThe following codepoints supported by the font are not covered by
any subsets defined in the font's metadata file, and will never
be served. You can solve this by either manually adding additional
subset declarations to METADATA.pb, or by editing the glyphset
definitions.
- U+02D8 BREVE: try adding one of: canadian-aboriginal, yi
- U+02D9 DOT ABOVE: try adding one of: canadian-aboriginal, yi
- U+02DB OGONEK: try adding one of: canadian-aboriginal, yi
- U+0302 COMBINING CIRCUMFLEX ACCENT: try adding one of: math, coptic, cherokee, tifinagh
- U+0307 COMBINING DOT ABOVE: try adding one of: math, hebrew, duployan, coptic, syriac, tai-le, malayalam, tifinagh, canadian-aboriginal, old-permic, todhri
- U+030A COMBINING RING ABOVE: try adding one of: syriac, duployan
- U+030B COMBINING DOUBLE ACUTE ACCENT: try adding one of: osage, cherokee
- U+030C COMBINING CARON: try adding one of: cherokee, tai-le
- U+0315 COMBINING COMMA ABOVE RIGHT: try adding math
- U+0327 COMBINING CEDILLA: try adding math 82 more.
Use -F or --full-lists to disable shortening of long lists.
Or you can add the above codepoints to one of the subsets supported by the font: arabic
, cyrillic-ext
, latin
, latin-ext
, menu
⚠️ WARN DESCRIPTION.en_us.html should end in a linebreak.
⚠️ WARNThe last characther on DESCRIPTION.en_us.html is not a line-break. Please add it.
[code: missing-eof-linebreak]
⚠️ WARN Check OFL body text is correct.
⚠️ WARNThe OFL.txt body text is incorrect. Please use https://github.com/googlefonts/Unified-Font-Repository/blob/main/OFL.txt as a template. You should only modify the first line.
Lines changed:
+ \n
- This license is copied below, and is also available with a FAQ at:\n
+ This license is copied below, and is also available with a FAQ at: https://openfontlicense.org\n
[code: incorrect-ofl-body-text]⚠️ WARN Check copyright namerecords match license file.
-
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description] -
⚠️ WARNPlease consider updating the url from 'https://scripts.sil.org/OFL' to 'https://openfontlicense.org'.
[code: old-url]
⚠️ WARN License URL matches License text on name table?
-
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description] -
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description] -
⚠️ WARNPlease consider using HTTPS URLs at name table entry [plat=3, enc=1, name=13]
[code: http-in-description]
⚠️ WARN Ensure soft_dotted characters lose their dot when combined with marks that replace the dot.
⚠️ WARNThe dot of soft dotted characters should disappear in other cases, for example: ĩ̧ ī̧ i̧̇ i̧̊ i̧̋ ǐ̧ į̃ į̄ į̇ į̊ į̋ į̌ j̧̀ j̧́ j̧̃ j̧̄ j̧̇ j̧̈ j̧̊ j̧̋
Your font fully covers the following languages that require the soft-dotted feature: Lithuanian (Latn, 2,357,094 speakers), Dutch (Latn, 31,709,104 speakers).
Your font does not cover the following languages that require the soft-dotted feature: Avokaya (Latn, 100,000 speakers), Southern Tutchone (Latn, 65 speakers), Kaska (Latn, 125 speakers), Southern Kisi (Latn, 360,000 speakers), Northern Tutchone (Latn, 85 speakers), Ijo, Southeast (Latn, 2,471,000 speakers), Longto (Latn, 5,000 speakers), Mango (Latn, 77,000 speakers), Ejagham (Latn, 120,000 speakers), Dan (Latn, 1,099,244 speakers), South Central Banda (Latn, 244,000 speakers), Abua (Latn, 25,000 speakers), Koonzime (Latn, 40,000 speakers), Kom (Latn, 360,685 speakers), Kpelle, Guinea (Latn, 622,000 speakers), Igbo (Latn, 27,823,640 speakers), Mfumte (Latn, 79,000 speakers), Sar (Latn, 500,000 speakers), Basaa (Latn, 332,940 speakers), Keliko (Latn, 63,000 speakers), Yala (Latn, 200,000 speakers), Han (Latn, 6 speakers), Gulay (Latn, 250,478 speakers), Ikwere (Latn, 717,000 speakers), Zapotec (Latn, 490,000 speakers), Teke-Ebo (Latn, 260,000 speakers), Dii (Latn, 71,000 speakers), Nateni (Latn, 100,000 speakers), Western Krahn (Latn, 97,800 speakers), Belarusian (Cyrl, 10,064,517 speakers), Navajo (Latn, 166,319 speakers), Vute (Latn, 21,000 speakers), Ekpeye (Latn, 226,000 speakers), Cicipu (Latn, 44,000 speakers), Aghem (Latn, 38,843 speakers), Lugbara (Latn, 2,200,000 speakers), Makaa (Latn, 221,000 speakers), Mundani (Latn, 34,000 speakers), Bete-Bendi (Latn, 100,000 speakers), Ebira (Latn, 2,200,000 speakers), Ma’di (Latn, 584,000 speakers), Nzakara (Latn, 50,000 speakers), Fur (Latn, 1,230,163 speakers), Heiltsuk (Latn, 300 speakers), Ngbaka (Latn, 1,020,000 speakers), Ukrainian (Cyrl, 29,273,587 speakers), Bafut (Latn, 158,146 speakers).
[code: soft-dotted]⚠️ WARN Do outlines contain any semi-vertical or semi-horizontal lines?
⚠️ WARNThe following glyphs have semi-vertical/semi-horizontal lines:
* uniFDF4 (U+FDF4): L<<835.0,7.0>--<836.0,-143.0>>
[code: found-semi-vertical]
⚠️ WARN Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering?
- ℹ️ INFO
These are the ppm ranges declared on the gasp table:
PPM <= 8: flag = 0x0A - Use grayscale rendering - Use smoothing along multiple axes with ClearType® PPM <= 16: flag = 0x07 - Use grid-fitting - Use grayscale rendering - Use gridfitting with ClearType symmetric smoothing PPM <= 65535: flag = 0x0F - Use grid-fitting - Use grayscale rendering - Use gridfitting with ClearType symmetric smoothing - Use smoothing along multiple axes with ClearType®
[code: ranges]-
⚠️ WARNThe gasp table has a range of 8 that may be unneccessary.
[code: non-ffff-range] -
⚠️ WARNThe gasp table has a range of 16 that may be unneccessary.
[code: non-ffff-range]
ℹ️ INFO Show hinting filesize impact.
- ℹ️ INFO
Hinting filesize impact:
ofl/ibmplexsansarabic/IBMPlexSansArabic-Bold.ttf | |
---|---|
Dehinted Size | 172.4kb |
Hinted Size | 241.2kb |
Increase | 68.8kb |
Change | 39.9 % |
ℹ️ INFO Font contains all required tables?
- ℹ️ INFO
This font contains the following optional tables:
- cvt
- fpgm
- loca
- prep
- GPOS
- GSUB
- gasp
[code: optional-tables]
ℹ️ INFO METADATA.pb: Validate family.minisite_url field.
- ℹ️ INFO
Please consider adding a family.minisite_url entry.
[code: lacks-minisite-url]
ℹ️ INFO Check for presence of an ARTICLE.en_us.html file
- ℹ️ INFO
This font doesn't have an ARTICLE.en_us.html file.
[code: missing-article]
ℹ️ INFO EPAR table present in font?
- ℹ️ INFO
EPAR table not present in font. To learn more see When missing EPAR table, just emit INFO alert fonttools/fontbakery#818
[code: lacks-EPAR]
Summary
💥 ERROR | ☠ FATAL | 🔥 FAIL | ⏩ SKIP | ℹ️ INFO | ✅ PASS | 🔎 DEBUG | |
---|---|---|---|---|---|---|---|
7 | 0 | 64 | 109 | 429 | 57 | 990 | 0 |
0% | 0% | 4% | 7% | 26% | 3% | 60% | 0% |
Note: The following loglevels were omitted in this report:
- SKIP
- PASS
- DEBUG
Hi @yanone, this is probably part of what you are saying here but not being an expert in Arabic I prefer to confirm these are the expected changes here :) RegularBold |
Yes, those are exactly the ligatures they added. These are expected changes. And that one letter in the upper line was just wrong entirely. |
Excellent! Thanks for the confirmation. |
Taken from the upstream repo https://github.com/googlefonts/plex at commit googlefonts/plex@e80bf92.
Resolves #7611
PR Checklist:
primary_script
definition in the METADATA.pb file for all projects that have a primary non-Latin based language support target