fonts/ruby-ttfunk: update to 1.8.0

1.8.0 (2024-03-05)

Fixed

* Corrupted CFF index data

  there was a subtle bug in cff index implementation that resulted in a data
  corruption.  in certain circumstances some items didn't get properly
  encoded.  this happened when items were not previously accessed.

  this resulted, for instance, in missing glyphs.  but only sometimes
  because indexes might've still contain data that shouldn't've been there.
  in combination with incorrect encoding (see further) this resulted in some
  glyphs still being rendered, sometimes even correctly.

  along with the fix a rather large api change landed.  this resulted in
  quite a big diff.

  Alexander Mankuta

* Incorrect CFF encoding in subsets

  TTFunk used to reuse encoding from the original font.  This mapping was
  incorrect for subset fonts which used not just a subset of glyphs but also
  a different encoding.

  A separate issue was that some fonts have empty CFF encoding.  This
  incorrect mapping resulted in encoding that mapped all codes to glyph 0.

  This had impact on Prawn in particular.  PDF spec explicitly says that CFF
  encoding is not to be used in OpenType fonts.  cmap table should directly
  index charstrings in the CFF table.  Despite this PDF renderers still use
  CFF encoding to retrieve glyphs.  So TTFunk has to discard the original
  CFF encoding and supply its own.

  Alexander Mankuta

* maxp table

  The table is now correctly parsed and encoded for both TrueType and
  CFF-based OpenType fonts.

  Cameron Dutro, Alexander Mankuta

* Files are closed sooner

  Files were garbage collected but could stay open for longer than necessary.

  Jon Burgess

* Long date time in the head table

  The created and modified fields we parsed and encoded with incorrect
  endiannes.  Additionally helper methods were added to convert these fields
  to and from Ruby Time.

  Jens Kutilek, Peter Goldstein

* Removed execution permissions on non-executable files

  Keenan Brock


Changes

* Minimum Ruby is 2.7

  Alexander Mankuta

* Performance improvement in subsets construction

  Thomas Leitner

* CI improvememnts

  Peter Goldstein
This commit is contained in:
taca 2024-03-05 13:25:58 +00:00
parent 80ec73bb3d
commit c846388ba6
2 changed files with 7 additions and 7 deletions

View File

@ -1,10 +1,10 @@
# $NetBSD: Makefile,v 1.12 2021/01/11 13:34:41 taca Exp $
# $NetBSD: Makefile,v 1.13 2024/03/05 13:25:58 taca Exp $
DISTNAME= ttfunk-1.7.0
DISTNAME= ttfunk-1.8.0
CATEGORIES= fonts
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= # unknown
HOMEPAGE= https://github.com/prawnpdf/ttfunk
COMMENT= TrueType Font Metrics Parser
LICENSE= gnu-gpl-v2 OR gnu-gpl-v3 OR ruby-license

View File

@ -1,5 +1,5 @@
$NetBSD: distinfo,v 1.13 2021/10/26 10:27:23 nia Exp $
$NetBSD: distinfo,v 1.14 2024/03/05 13:25:58 taca Exp $
BLAKE2s (ttfunk-1.7.0.gem) = 90355184d4ae5a7df0ec14a6793a8434a92933a2a1ec36b1e56a4b9a46ed72f8
SHA512 (ttfunk-1.7.0.gem) = f22245c295ab2c268915163bdace31075fc59557ef4aa7133904aaefbed970ab78827fbd7c929813bee02c5153f3cfef701a18762ad53b1126dd210076e4d79d
Size (ttfunk-1.7.0.gem) = 71168 bytes
BLAKE2s (ttfunk-1.8.0.gem) = 3432ad313ed442b630dfd687eab30145700635a4efb77a7e590ad010d700516d
SHA512 (ttfunk-1.8.0.gem) = 7d005729db7643dcd58ba54edb0dfee2753fa280fc7aa30205c8f6ee08fb574a7ae8112878d7d11b3925f6822114b6c3aef124955a772b97868c394b8f9e5114
Size (ttfunk-1.8.0.gem) = 84992 bytes