support run-length encoding in bitmaps
parent
367623e375
commit
f31c3f867a
|
@ -0,0 +1,7 @@
|
||||||
|
! Copyright (C) 2009 Doug Coleman.
|
||||||
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
|
USING: arrays grouping sequences ;
|
||||||
|
IN: compression.run-length
|
||||||
|
|
||||||
|
: run-length-uncompress8 ( byte-array -- byte-array' )
|
||||||
|
2 group [ first2 <array> ] map concat ;
|
|
@ -1,9 +1,10 @@
|
||||||
! Copyright (C) 2007, 2009 Doug Coleman.
|
! Copyright (C) 2007, 2009 Doug Coleman.
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: accessors alien alien.c-types arrays byte-arrays columns
|
USING: accessors alien alien.c-types arrays byte-arrays columns
|
||||||
combinators fry grouping io io.binary io.encodings.binary io.files
|
combinators compression.run-length endian fry grouping images
|
||||||
kernel macros math math.bitwise math.functions namespaces sequences
|
images.loader io io.binary io.encodings.binary io.files kernel
|
||||||
strings images endian summary locals images.loader ;
|
locals macros math math.bitwise math.functions namespaces
|
||||||
|
sequences strings summary ;
|
||||||
IN: images.bitmap
|
IN: images.bitmap
|
||||||
|
|
||||||
: assert-sequence= ( a b -- )
|
: assert-sequence= ( a b -- )
|
||||||
|
@ -54,7 +55,7 @@ ERROR: unsupported-bitmap-compression compression ;
|
||||||
: uncompress-bitmap ( loading-bitmap -- loading-bitmap' )
|
: uncompress-bitmap ( loading-bitmap -- loading-bitmap' )
|
||||||
dup compression>> {
|
dup compression>> {
|
||||||
{ 0 [ ] }
|
{ 0 [ ] }
|
||||||
{ 1 [ "run-length encoding 8" unsupported-bitmap-compression ] }
|
{ 1 [ [ run-length-uncompress8 ] change-color-index ] }
|
||||||
{ 2 [ "run-length encoding 4" unsupported-bitmap-compression ] }
|
{ 2 [ "run-length encoding 4" unsupported-bitmap-compression ] }
|
||||||
{ 3 [ "bitfields" unsupported-bitmap-compression ] }
|
{ 3 [ "bitfields" unsupported-bitmap-compression ] }
|
||||||
{ 4 [ "jpeg" unsupported-bitmap-compression ] }
|
{ 4 [ "jpeg" unsupported-bitmap-compression ] }
|
||||||
|
|
Loading…
Reference in New Issue