shithub: fnt

Download patch

ref: df052be4b98c368684f1c26b206a5a80c67eaf03
parent: 8824c6a75e260270b385cfd4d5865350a71ea320
author: Sigrid Solveig Haflínudóttir <sigrid@ftrv.se>
date: Sun Jun 16 21:20:51 EDT 2024

hhea, post; remove some of the unused fields

--- a/otf.rkt
+++ b/otf.rkt
@@ -410,23 +410,40 @@
                    {int16 glyphDataFormat unused (= 0)})
          #:tag "head")
 
+(mkcmplx TableHhea
+         (mkfields {uint16 majorVersion (= 1)}
+                   {uint16 minorVersion (= 0)}
+                   {FWORD ascender}
+                   {FWORD descender}
+                   {FWORD lineGap}
+                   {UFWORD advanceWidthMax}
+                   {FWORD minLeftSideBearing}
+                   {FWORD minRightSideBearing}
+                   {FWORD xMaxExtent}
+                   {int16 caretSlopeRise}
+                   {int16 caretSlopeRun}
+                   {int16 caretOffset}
+                   {int16 reserved [4] unused}
+                   {int16 metricDataFormat (= 0)}
+                   {uint16 numberOfHMetrics})
+         #:tag "hhea")
+
 (mkcmplx TableMaxp
          (mkfields {Version16Dot16 version (= #x05000 #x10000)}
                    {uint16 numGlyphs}
-                   {uint16 maxPoints (>= version #x10000)}
-                   {uint16 maxContours (>= version #x10000)}
-                   {uint16 maxCompositePoints (>= version #x10000)}
-                   {uint16 maxCompositeContours (>= version #x10000)}
-                   {uint16 maxZones (>= version #x10000)}
-                   {uint16 maxTwilightPoints (>= version #x10000)}
-                   {uint16 maxStorage (>= version #x10000)}
-                   {uint16 maxFunctionDefs (>= version #x10000)}
-                   {uint16 maxInstructionDefs (>= version #x10000)}
-                   {uint16 maxStackElements (>= version #x10000)}
-                   {uint16 maxSizeOfInstructions (>= version #x10000)}
-                   {uint16 maxComponentElements (>= version #x10000)}
-                   {uint16 maxComponentDepth (>= version #x10000)})
+                   ; a bunch of fields ignored here
+                   )
          #:tag "maxp")
+
+(mkcmplx TablePost
+         (mkfields {Version16Dot16 version (= #x10000 #x20000 #x25000 #x30000)}
+                   {Fixed italicAngle}
+                   {FWORD underlinePosition}
+                   {FWORD underlineThickness}
+                   {uint32 isFixedPitch}
+                   ; a bunch of fields ignored here
+                   )
+         #:tag "post")
 
 (mkcmplx TableOS∕2
          (mkfields {uint16 version (<= 5)}