Skip to content

Commit

Permalink
tools.image-compressor: refactor
Browse files Browse the repository at this point in the history
  • Loading branch information
nomennescio committed May 16, 2024
1 parent e2cb771 commit 3231325
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions extra/tools/image-compressor/image-compressor.factor
Original file line number Diff line number Diff line change
Expand Up @@ -46,8 +46,10 @@ SYMBOL: compression-level
12 compression-level set-global ! level 12 seems the right balance between compression factor and compression speed

: compress ( byte-array -- compressed ) compression-level get zstd-compress-level ;
: compress-data ( image -- image' ) dup header>> [ escaped-data-size>> ] [ compressed-data-size>> ] bi = [ dup data>> compress >>data ] when ; ! only compress uncompressed data
: compress-code ( image -- image' ) dup header>> [ code-size>> ] [ compressed-code-size>> ] bi = [ dup code>> compress >>code ] when ; ! only compress uncompressed code
: uncompressed-data? ( image -- ? ) header>> [ escaped-data-size>> ] [ compressed-data-size>> ] bi = ;
: uncompressed-code? ( image -- ? ) header>> [ code-size>> ] [ compressed-code-size>> ] bi = ;
: compress-data ( image -- image' ) dup uncompressed-data? [ dup data>> compress >>data ] when ; ! only compress uncompressed data
: compress-code ( image -- image' ) dup uncompressed-code? [ dup code>> compress >>code ] when ; ! only compress uncompressed code
: compress-image ( image -- image' ) compress-data compress-code sync-header ;

! compress factor image
Expand Down

0 comments on commit 3231325

Please sign in to comment.