Font Validator 2.1 Release Notes and status

Font Validator is a tool for testing fonts prior to release.
It was initially developed by Microsoft, to ensure that fonts meet Microsoft's
high quality standards and perform exceptionally well on Microsoft's
platform.

In 2015 the source code was published under the MIT license ([see release
discussion](http://typedrawers.com/discussion/1222/microsoft-font-validato
r-lives))

Most (only?) active development happens at
http://github.com/HinTak/Font-Validator .

FontVal 2.1
===========

- Backend b70+10.5, based on FreeType 2.8+ (VER-2-8-73-g38bdf22bf)

  - 16 Errors/Warnings in 1.0 which has no FreeType equivalent
    are implemented. This includes incomplete conditionals (e.g.
    IF without THEN) and maths overflows, etc.

  - 15 FreeType-specific additions are added. This includes endless loops
    and backward jumps, etc.

  - C Python wrapper available ( https://github.com/HinTak/freetype-py
    fontval-diag branch ). Perl wrapper in dev.

- Robustness: still produce a report for some seriously buggy fonts

- Speed/Resources improvements:

  - avoid unnecessary repeated processing of identical EBDT/glyf tables
    and rasterization for TTCs
    (down from half-days to an hour or two in some cases)

  - much smaller memory foot-prints for EBDT check
    (down from 15 to 20+ GB RAM to 1 or 2 GB in some extreme cases)

- Windows-only problem fixed: can now accept non-ascii font names
  (2.0 did not, 1.0 did).

- New opentype tables supported: meta (partial)

- glyf table: cope with broken contours with hair pins, and extremely
  tight loops etc and correctly warn those.

- DSIG table: supports stronger cryptographic digest algorithms (Apparently
  Adobe started signing with those). correct previous mis-diagnosis of very
  old TTCs' signature.

- A lot of misc documentation updates.

- Known Caveats:
  - E6053 (Value exceeds capacity of 2 byte number) also warns on
    values exceeding Fixed 2.14 (FontVal 1.0 did not).
  - W6028 (number of twilight points unreasonably large) too frequent/noisy.
  - W6029 (Setting the loop variable to zero is an error) may be withdrawn
          later as ttfauthint does it and there is no known problem, despite
          some apple and macrosoft docs saying so.
  - The check for maths overflows in hinting instructions requires gcc 5+ to
    build, so it is not offered on the Mac OS X backend for the time being.

FontVal 2.0 , Jul 17 2016
===========

- backend b54, based on FreeType 2.6.4

FontVal 1.1, Apr 07 2009
===========
- Microsoft released to Github on Nov 11 2015; incomplete

FontVal 1.0 , Jul 10 2003
===========
- last known Microsoft's proprietary binary

Comments

  • Hin-Tak LeungHin-Tak Leung Posts: 263
    The summary of test result against the 3283 fonts shipped in fedora 26 was posted to create and freetype-devel. Unfortunately my dev computer went out of action before I can upload the details or tag and build the binaries. Those who want it (google font bakery looks like they do) please build from my git master.
  • Hin-Tak LeungHin-Tak Leung Posts: 263
    edited July 23
    Github lets me tag the release via the Web interface (without gpg) - so FontVal 2.1 is officially out. I'll gpg-sign the corresponding embedded-python release later, when I can.
  • Finally got round to build the binary - just get "FontVal-2.1.0-py-bin-net4.zip" from

    I recovered the test results I did almost a month ago from my old computer,
    on all fedora 26 shipped fonts - will upload at some point. Break-down is this:

    3283 fonts examined in total
    1493 fonts with CFF outlines (skipped for truetype hinting instruction check)
    1395 fonts with truetype outlines passed
    394 fonts with various degree of hinting instruction warnings/errors
    1 zero-length font file, filed as https://bugzilla.redhat.com/show_bug.cgi?id=1473437
                                      Redhat had already shipped an updated font package (I have not re-tested yet).

    1 + 394 + 1395 + 1493 == 3283

    i.e. roughly 400 (22%) out of 1800 of fonts with truetype hinting could do with some love on correcting the hinting instructions. Quite similar to a year ago.

    As you know the delay was due to computer broke and new computer, so please feel free to donate ( https://sourceforge.net/p/hp-pxl-jetready/donate/ ) . I want the Mac OS X binary to be as fully-featured (needs to build with a newer cross-compiler), so 2.1.1 will be a Mac OS X-specific release, whenever that might be.

    More details in the release notes about what changed in the last 12 months since 2.0:

    I have decided to revert the "Windows-only problem fixed: can now accept non-ascii font name" change, because it causes intermittent (about 1 in 10) failures. So the binary is built to work for english font file names only, as it did for the release 2.0 a year ago. Sorry about that.
  • Mac and Linux binaries for Font Validator

    So I just uploaded 4 tar balls:

    FontVal-2.1.1-osx-10.7-x64.tgz
    FontValGUI-2.1.1-osx-10.7.tgz
    FontVal-2.1.1-py-ubuntu-16.04-x64.tgz
    FontVal-2.1.1-py-ubuntu-14.04-x64.tgz
    (and their gpg signatures as *.sig for the security-conscious people)

    to

    Most people also want the FontValidatorHelp-2.1.chm file for reference too.

    Each of the tarballs is just one file inside, the command line tool for Mac OS X, GUI, for Ubuntu 16.04 and Ubuntu 14.04 . The Mac GUI still have the issue a year ago where it would say "Fontconfig error: Cannot load default config file", pause
    for a couple of minutes when run the first time, before showing.

    For trying out, most people do:

        FontValidator -file <fontfile> +all-tables +raster-tests -stdout

    whereas font designer might like to keep the report where the font is with:

        FontValidator -file <fontfile> +all-tables +raster-tests -report-in-font-dir

    Special thanks to Christian Demmer for multiple rounds of patient testing
    of the Mac OS X binaries!

    If you find it useful,please click https://sourceforge.net/p/hp-pxl-jetready/donate/ to donate.

    @Georg Seifert : please feel free to grab the command-line tool and wrap your GUI around. It is built differently from last year's and is just a single binary, nothing else.


    FontVal 2.1.1
    =============

    - This is an update from FontVal 2.1 on the FreeType backend only,
      to VER-2-8-100-g587264cfd .

      We now also offer all-in-one command-line binaries for Ubuntu Linux x86_64
      14.04 and 16.04, in addition to Mac OS X. ( Thanks to new functionality
      in mono introduced in 4.6.0 and matured in 4.8.0 in the last 12 months. )
      The Ubuntu 16.04 binary is preferred, as the 14.04 binary is limited
      by older compiler as mentioned in FontVal 2.1.

      - as rasterization tests now work on all major platforms, "+raster-tests"
        will become the default in FontVal 2.2 .

    The rest of release notes about what changed in the last 12 months since 2.0 :
    https://github.com/HinTak/Font-Validator/blob/master/Release-Notes

  • I updated the my version of the Mac UI with the latest binary. You can download it here: https://raw.githubusercontent.com/schriftgestalt/Font-Validator/master/MacUI/build/FontValidator0.1-4.zip

    I also added an help file that contains explanations about the various error/warning codes.
  • @Georg Seifert  : Thanks a lot for the update. I renamed it FontValGUI-Seifert-... and put it up at both
    https://sourceforge.net/projects/hp-pxl-jetready/files/Microsoft Font Validator/ and
    https://github.com/HinTak/Font-Validator/releases . Just to make life easier for people, it is the only Mac OS one in the latter. (I myself is not very happy with the minutes of pauses rebuilding the fontconfig cache of the windows-derived GUI).

    Others, please click https://sourceforge.net/p/hp-pxl-jetready/donate/ to donate. Since a larger proportion of FontVal users seem to be Mac users, I'll split a portion of donation (if there is any ;) ) with Georg.




Sign In or Register to comment.