Skip to content
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

Bad Script: Version 2.000; ttfautohint (v1.8.4.7-5d5b) added #8476

Merged
merged 5 commits into from
Nov 13, 2024

Conversation

emmamarichal
Copy link
Collaborator

Taken from the upstream repo https://github.com/alexeiva/badscript at commit alexeiva/badscript@dca2962.

PR Checklist:

  • minisite_url definition in the METADATA.pb file for commissioned projects
  • tags are added for NEW FONTS
  • primary_script definition in the METADATA.pb file for all projects that have a primary non-Latin based language support target
  • subsets definitions in the METADATA.pb reflect the actual subsets and languages present in the font files (in alphabetic order). For CJK fonts, only include one of the following subsets chinese-hongkong, chinese-simplified, chinese-traditional, korean, japanese.
  • Fontbakery checks are reviewed and failing checks are resolved in collaboration with the upstream font development team
  • Diffenator2 regression checks for revisions on all projects that are currently in production
  • Designers bio info have to be present in the designer catalog (at least an issue should be opened for tracking this, if they are not)
  • Check designers order in metadata.pb, since the first one of the list appears as “principal designer”
  • Social media formatted visual assets for all new commissioned projects in the Drive directory, communicate with the repository Maintainer so that they can push this content to the Social Media tracker spreadsheet
  • Social media content draft for all new commissioned projects in the Drive directory and Social Media tracker spreadsheet, communicate with the repository Maintainer so that they can push this content to the Social Media tracker spreadsheet

@emmamarichal emmamarichal added I Font Upgrade III Expand glyphset more features and more language coverage labels Nov 8, 2024

This comment was marked as outdated.

@emmamarichal emmamarichal linked an issue Nov 8, 2024 that may be closed by this pull request
@emmamarichal
Copy link
Collaborator Author

⚠️ WARN Check if uppercase glyphs are vertically centered.
-> I suggested to update that WARN, so it concerns only new fonts: fonttools/fontbakery#4877

This comment was marked as outdated.

Copy link

github-actions bot commented Nov 8, 2024

FontBakery report

fontbakery version: 0.13.0a4

Check results

[22] BadScript-Regular.ttf
⚠️ WARN Check if uppercase glyphs are vertically centered.
  • ⚠️ WARN

    Uppercase glyphs are not vertically centered in the em box.


    [code: vertical-metrics-not-centered]
⚠️ WARN Check if each glyph has the recommended amount of contours.
  • ⚠️ WARN

    This 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: two	Contours detected: 2	Expected: 1
  • Glyph name: at Contours detected: 1 Expected: 2

  • Glyph name: G Contours detected: 2 Expected: 1

  • Glyph name: O Contours detected: 1 Expected: 2

  • Glyph name: Q Contours detected: 1 Expected: 2

  • Glyph name: y Contours detected: 2 Expected: 1

  • Glyph name: copyright Contours detected: 2 Expected: 3

  • Glyph name: uni00B3 Contours detected: 2 Expected: 1

  • Glyph name: Eth Contours detected: 3 Expected: 2

  • Glyph name: Ograve Contours detected: 2 Expected: 3

  • 213 more.

Use -F or --full-lists to disable shortening of long lists.

[code: contour-count]
⚠️ WARN Is there kerning info for non-ligated sequences?
  • ⚠️ WARN

    GPOS table lacks kerning info for the following non-ligated sequences:

- f + f

- f + i

- f + l

[code: lacks-kern-info]

⚠️ WARN Check math signs have the same width.
  • ⚠️ WARN

    The most common width is 456 among a set of 5 math glyphs.
    The following math glyphs have a different width, though:

Width = 441: plus

Width = 484: logicalnot

Width = 422: plusminus

Width = 364: multiply

Width = 438: divide

Width = 425: minus

Width = 600: lessequal, greaterequal

[code: width-outliers]
⚠️ WARN Check there are no overlapping path segments
  • ⚠️ WARN

    The following glyphs have overlapping path segments:

* A (U+0041): B<<601.0,24.0>-<601.0,21.0>-<601.0,21.0>> has the same coordinates as a previous segment.

* Aacute (U+00C1): B<<601.0,24.0>-<601.0,21.0>-<601.0,21.0>> has the same coordinates as a previous segment.

* Abreve (U+0102): B<<601.0,24.0>-<601.0,21.0>-<601.0,21.0>> has the same coordinates as a previous segment.

* uni1EAE (U+1EAE): B<<601.0,24.0>-<601.0,21.0>-<601.0,21.0>> has the same coordinates as a previous segment.

* uni1EB6 (U+1EB6): B<<601.0,24.0>-<601.0,21.0>-<601.0,21.0>> has the same coordinates as a previous segment.

* uni1EB0 (U+1EB0): B<<601.0,24.0>-<601.0,21.0>-<601.0,21.0>> has the same coordinates as a previous segment.

* uni1EB2 (U+1EB2): B<<601.0,24.0>-<601.0,21.0>-<601.0,21.0>> has the same coordinates as a previous segment.

* uni1EB4 (U+1EB4): B<<601.0,24.0>-<601.0,21.0>-<601.0,21.0>> has the same coordinates as a previous segment.

* Acircumflex (U+00C2): B<<601.0,24.0>-<601.0,21.0>-<601.0,21.0>> has the same coordinates as a previous segment.

* uni1EA4 (U+1EA4): B<<601.0,24.0>-<601.0,21.0>-<601.0,21.0>> has the same coordinates as a previous segment.

* 18 more.

Use -F or --full-lists to disable shortening of long lists.

[code: overlapping-path-segments]
⚠️ WARN Validate size, and resolution of article images, and ensure article page has minimum length and includes visual assets.
  • ⚠️ WARN

    Family metadata at ofl/badscript does not have an article.


    [code: lacks-article]
⚠️ WARN Check for codepoints not covered by METADATA subsets.
  • ⚠️ WARN

    The 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: yi, canadian-aboriginal
  • U+02D9 DOT ABOVE: try adding one of: yi, canadian-aboriginal
  • U+02DB OGONEK: try adding one of: yi, canadian-aboriginal
  • U+0302 COMBINING CIRCUMFLEX ACCENT: try adding one of: tifinagh, coptic, math, cherokee
  • U+0306 COMBINING BREVE: try adding one of: tifinagh, old-permic
  • U+0307 COMBINING DOT ABOVE: try adding one of: hebrew, todhri, math, tai-le, malayalam, syriac, canadian-aboriginal, tifinagh, old-permic, coptic, duployan
  • 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: tai-le, cherokee
  • U+030F COMBINING DOUBLE GRAVE ACCENT: not included in any glyphset definition 22 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: cyrillic, cyrillic-ext, latin, latin-ext, menu, vietnamese

[code: unreachable-subsetting]
⚠️ WARN Shapes languages in all GF glyphsets.
  • ⚠️ WARN

    GF_Phonetics_SinoExt glyphset:

WARN messages Languages
Some auxiliary glyphs were missing: ſ de_Latn (German) and fr_Latn (French)
Some auxiliary glyphs were missing: Ʒ, Ǥ, ǥ, Ǯ, ǯ, ʒ fi_Latn (Finnish)
Some auxiliary glyphs were missing: IJ, ij nl_Latn (Dutch)
[code: warning-language-shaping]
⚠️ WARN Ensure dotted circle glyph is present and can attach marks.
  • ⚠️ WARN

    No dotted circle glyph present


    [code: missing-dotted-circle]
⚠️ WARN Ensure soft_dotted characters lose their dot when combined with marks that replace the dot.
  • ⚠️ WARN

    The dot of soft dotted characters used in orthographies must disappear in the following strings: į̀ į́ į̂ į̃ į̄ į̌ і́ ị̀ ị́ ị̂ ị̃ ị̄

The dot of soft dotted characters should disappear in other cases, for example: į̆ į̇ į̈ į̉ į̊ į̋ į̏ į̑ į̒ į̛̀ į̛́ į̛̂ į̛̃ į̛̄ į̛̆ į̛̇ į̛̈ į̛̉ į̛̊ į̛̋

Your font fully covers the following languages that require the soft-dotted feature: Navajo (Latn, 166,319 speakers), Southern Tutchone (Latn, 65 speakers), Ekpeye (Latn, 226,000 speakers), Ijo, Southeast (Latn, 2,471,000 speakers), Abua (Latn, 25,000 speakers), Ma’di (Latn, 584,000 speakers), Kaska (Latn, 125 speakers), Ikwere (Latn, 717,000 speakers), Ebira (Latn, 2,200,000 speakers), Belarusian (Cyrl, 10,064,517 speakers), Lithuanian (Latn, 2,357,094 speakers), Igbo (Latn, 27,823,640 speakers), Ukrainian (Cyrl, 29,273,587 speakers), Northern Tutchone (Latn, 85 speakers), Dutch (Latn, 31,709,104 speakers), Han (Latn, 6 speakers).

Your font does not cover the following languages that require the soft-dotted feature: Gulay (Latn, 250,478 speakers), Cicipu (Latn, 44,000 speakers), Kom (Latn, 360,685 speakers), Nzakara (Latn, 50,000 speakers), Mfumte (Latn, 79,000 speakers), Fur (Latn, 1,230,163 speakers), Makaa (Latn, 221,000 speakers), Dan (Latn, 1,099,244 speakers), Sar (Latn, 500,000 speakers), Nateni (Latn, 100,000 speakers), Zapotec (Latn, 490,000 speakers), Avokaya (Latn, 100,000 speakers), Vute (Latn, 21,000 speakers), Koonzime (Latn, 40,000 speakers), Dii (Latn, 71,000 speakers), Ejagham (Latn, 120,000 speakers), Bafut (Latn, 158,146 speakers), Mundani (Latn, 34,000 speakers), Aghem (Latn, 38,843 speakers), Keliko (Latn, 63,000 speakers), Teke-Ebo (Latn, 260,000 speakers), Southern Kisi (Latn, 360,000 speakers), Western Krahn (Latn, 97,800 speakers), Basaa (Latn, 332,940 speakers), Yala (Latn, 200,000 speakers), Bete-Bendi (Latn, 100,000 speakers), South Central Banda (Latn, 244,000 speakers), Heiltsuk (Latn, 300 speakers), Ngbaka (Latn, 1,020,000 speakers), Lugbara (Latn, 2,200,000 speakers), Longto (Latn, 5,000 speakers), Kpelle, Guinea (Latn, 622,000 speakers), Mango (Latn, 77,000 speakers).

[code: soft-dotted]
⚠️ WARN Do any segments have colinear vectors?
  • ⚠️ WARN

    The following glyphs have colinear vectors:

* OE (U+0152): L<<823.0,467.0>--<739.0,468.0>> -> L<<739.0,468.0>--<723.0,468.0>>

* eng (U+014B): L<<277.0,-7.0>--<285.0,32.0>> -> L<<285.0,32.0>--<332.0,313.0>>

* f_f_i: L<<861.0,781.0>--<861.0,781.0>> -> L<<861.0,781.0>--<861.0,781.0>>

* f_f_i: L<<861.0,784.0>--<861.0,782.0>> -> L<<861.0,782.0>--<861.0,781.0>>

* fi (U+FB01): L<<518.0,781.0>--<518.0,781.0>> -> L<<518.0,781.0>--<518.0,781.0>>

* fi (U+FB01): L<<518.0,784.0>--<518.0,782.0>> -> L<<518.0,782.0>--<518.0,781.0>>

* numbersign (U+0023): L<<431.0,410.0>--<438.0,410.0>> -> L<<438.0,410.0>--<615.0,409.0>>

* numbersign (U+0023): L<<608.0,363.0>--<431.0,364.0>> -> L<<431.0,364.0>--<423.0,364.0>>

* onequarter (U+00BC): L<<165.0,149.0>--<393.0,630.0>> -> L<<393.0,630.0>--<589.0,1027.0>>

* seven (U+0037): L<<37.0,41.0>--<130.0,41.0>> -> L<<130.0,41.0>--<194.0,40.0>>

* 25 more.

Use -F or --full-lists to disable shortening of long lists.

[code: found-colinear-vectors]
⚠️ WARN Do outlines contain any jaggy segments?
  • ⚠️ WARN

    The following glyphs have jaggy segments:

* B (U+0042): B<<340.0,522.5>-<304.0,501.0>-<266.0,496.0>>/B<<266.0,496.0>-<308.0,493.0>-<346.5,473.0>> = 11.581474419704742

* B.ss01: B<<340.0,522.5>-<304.0,501.0>-<266.0,496.0>>/B<<266.0,496.0>-<308.0,493.0>-<346.5,473.0>> = 11.581474419704742

* P (U+0050): B<<127.5,451.5>-<141.0,446.0>-<141.0,445.0>>/L<<141.0,445.0>--<241.0,914.0>> = 12.036343107068564

* a (U+0061): B<<293.0,75.0>-<293.0,137.0>-<326.0,285.0>>/B<<326.0,285.0>-<305.0,242.0>-<276.5,198.5>> = 13.45980038383478

* aacute (U+00E1): B<<293.0,75.0>-<293.0,137.0>-<326.0,285.0>>/B<<326.0,285.0>-<305.0,242.0>-<276.5,198.5>> = 13.45980038383478

* abreve (U+0103): B<<293.0,75.0>-<293.0,137.0>-<326.0,285.0>>/B<<326.0,285.0>-<305.0,242.0>-<276.5,198.5>> = 13.45980038383478

* acircumflex (U+00E2): B<<293.0,75.0>-<293.0,137.0>-<326.0,285.0>>/B<<326.0,285.0>-<305.0,242.0>-<276.5,198.5>> = 13.45980038383478

* adieresis (U+00E4): B<<293.0,75.0>-<293.0,137.0>-<326.0,285.0>>/B<<326.0,285.0>-<305.0,242.0>-<276.5,198.5>> = 13.45980038383478

* agrave (U+00E0): B<<293.0,75.0>-<293.0,137.0>-<326.0,285.0>>/B<<326.0,285.0>-<305.0,242.0>-<276.5,198.5>> = 13.45980038383478

* amacron (U+0101): B<<293.0,75.0>-<293.0,137.0>-<326.0,285.0>>/B<<326.0,285.0>-<305.0,242.0>-<276.5,198.5>> = 13.45980038383478

* 101 more.

Use -F or --full-lists to disable shortening of long lists.

[code: found-jaggy-segments]
⚠️ WARN Do outlines contain any semi-vertical or semi-horizontal lines?
  • ⚠️ WARN

    The following glyphs have semi-vertical/semi-horizontal lines:

* f (U+0066): L<<186.0,500.0>--<313.0,499.0>>

* f_f: L<<528.0,500.0>--<655.0,499.0>>

* florin (U+0192): L<<186.0,500.0>--<313.0,499.0>>

* four.lf: L<<413.0,265.0>--<58.0,263.0>>

* numbersign (U+0023): L<<438.0,410.0>--<615.0,409.0>>

* numbersign (U+0023): L<<608.0,363.0>--<431.0,364.0>>

* one.lf: L<<331.0,-2.0>--<13.0,-4.0>>

* uni01C5 (U+01C5): L<<858.0,501.0>--<1073.0,500.0>>

* uni01C6 (U+01C6): L<<586.0,501.0>--<801.0,500.0>>

* uni01F2 (U+01F2): L<<858.0,501.0>--<1073.0,500.0>>

* 7 more.

Use -F or --full-lists to disable shortening of long lists.

[code: found-semi-vertical]
⚠️ WARN Ensure fonts have ScriptLangTags declared on the 'meta' table.
  • ⚠️ WARN

    This font file does not have a 'meta' table.


    [code: lacks-meta-table]
⚠️ WARN Checking OS/2 achVendID.
  • ⚠️ WARN

    OS/2 VendorID value 'NONE' is not yet recognized. If you registered it recently, then it's safe to ignore this warning message. Otherwise, you should set it to your own unique 4 character code, and register it with Microsoft at https://www.microsoft.com/typography/links/vendorlist.aspx


    [code: unknown]
ℹ️ INFO List all superfamily filepaths
  • ℹ️ INFO

    ofl/badscript


    [code: family-path]
ℹ️ INFO Show hinting filesize impact.
  • ℹ️ INFO

    Hinting filesize impact:

ofl/badscript/BadScript-Regular.ttf
Dehinted Size 122.4kb
Hinted Size 179.9kb
Increase 57.5kb
Change 47.0 %
[code: size-impact]
ℹ️ 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 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 <= 65535: flag = 0x0F - Use grid-fitting - Use grayscale rendering - Use gridfitting with ClearType symmetric smoothing - Use smoothing along multiple axes with ClearType®

[code: ranges]
[1] Family checks
ℹ️ INFO Check axis ordering on the STAT table.
  • ℹ️ INFO

    All of the fonts lack a STAT table.


    [code: summary]

Summary

💥 ERROR ☠ FATAL 🔥 FAIL ⚠️ WARN ⏩ SKIP ℹ️ INFO ✅ PASS 🔎 DEBUG
0 0 0 15 68 8 161 0
0% 0% 0% 6% 27% 3% 64% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • PASS
  • DEBUG

@vv-monsalve
Copy link
Collaborator

It has a Warn status here. Being a font upgrade we know we'll need to accept the previous VM.

  • The new R could be considered a regression for this script font. Would it remain accessible to users in a stylistic set?

bad-script-ba

@vv-monsalve vv-monsalve added the -- Needs confirmation from upstream or onboarder label Nov 8, 2024
@emmamarichal
Copy link
Collaborator Author

emmamarichal commented Nov 13, 2024

@vv-monsalve

It has a Warn status here. Being a font upgrade we know we'll need to accept the previous VM.

Ah yes, I meant it would be great if we can update the warn itself, so it can check centered caps only on new fonts.

The new R could be considered a regression for this script font. Would it remain accessible to users in a stylistic set?

Yeah, it is now in a .fina feature. I think it was actually the first intention, because it looks weird in the middle or beginning of a word!

@vv-monsalve vv-monsalve removed the -- Needs confirmation from upstream or onboarder label Nov 13, 2024
@vv-monsalve vv-monsalve merged commit d2ebba0 into main Nov 13, 2024
8 checks passed
@vv-monsalve vv-monsalve deleted the gftools_packager_ofl_badscript branch November 13, 2024 20:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
I Font Upgrade III Expand glyphset more features and more language coverage
Projects
Status: In Dev / PR Merged
Development

Successfully merging this pull request may close these issues.

Bad Script: ћЋ mixed up
2 participants