diff --git a/pitfall/fontkit/directory.rkt b/pitfall/fontkit/directory.rkt index 93572841..cd487728 100644 --- a/pitfall/fontkit/directory.rkt +++ b/pitfall/fontkit/directory.rkt @@ -65,7 +65,7 @@ https://github.com/mbutterick/fontkit/blob/master/src/tables/directory.js (define numTables (length table-headers)) - (define searchRange (* (floor (log (/ numTables (log 2)))) 16)) + (define searchRange (* (floor (/ (log numTables) (log 2))) 16)) (hash-set*! this-val 'tag "true" @@ -93,8 +93,12 @@ https://github.com/mbutterick/fontkit/blob/master/src/tables/directory.js (define (directory-decode ip [options (mhash)]) (send Directory decode (+DecodeStream (port->bytes ip)))) +(define (file-directory-decode ps) + (directory-decode (open-input-file ps))) + (test-module (define ip (open-input-file charter-path)) (define decoded-dir (deserialize (read (open-input-file charter-directory-path)))) (check-equal? (directory-decode ip) decoded-dir) + ) \ No newline at end of file diff --git a/pitfall/fontkit/font.rkt b/pitfall/fontkit/font.rkt index 3131c4a3..244079e8 100644 --- a/pitfall/fontkit/font.rkt +++ b/pitfall/fontkit/font.rkt @@ -284,4 +284,7 @@ https://github.com/mbutterick/fontkit/blob/master/src/TTFFont.js (send subset encode es) #;(with-output-to-file "subsetfont.rktd" (λ () (display (send es dump)) )) (check-equal? (send es dump) (file->bytes "subsetfont.rktd")) + + (file-directory-decode "subsetfont.rktd") + (file-directory-decode "../pitfall/test/out.bin") ) \ No newline at end of file diff --git a/pitfall/fontkit/subsetfont.rktd b/pitfall/fontkit/subsetfont.rktd index 61557a8d..08471459 100644 Binary files a/pitfall/fontkit/subsetfont.rktd and b/pitfall/fontkit/subsetfont.rktd differ