| Class | Origami::Filter::Flate |
| In: |
sources/parser/filters.rb
|
| Parent: | Object |
Decodes data using zlib/Inflate decompression method.
| stream: | The data to decode. |
# File sources/parser/filters.rb, line 645
645: def decode(stream)
646:
647: uncompressed = Zlib::Inflate.inflate(stream)
648:
649: if not @params[:Predictor].nil?
650: colors = @params.has_key?(:Colors) ? @params[:Colors].to_i : 1
651: bpc = @params.has_key?(:BitsPerComponent) ? @params[:BitsPerComponent].to_i : 8
652: columns = @params.has_key?(:Columns) ? @params[:Columns].to_i : 1
653:
654: uncompressed = Predictor.do_post_prediction(uncompressed, @params[:Predictor].to_i, colors, bpc, columns)
655: end
656:
657: uncompressed
658: end
Encodes data using zlib/Deflate compression method.
| stream: | The data to encode. |
# File sources/parser/filters.rb, line 628
628: def encode(stream)
629:
630: if not @params[:Predictor].nil?
631: colors = @params.has_key?(:Colors) ? @params[:Colors].to_i : 1
632: bpc = @params.has_key?(:BitsPerComponent) ? @params[:BitsPerComponent].to_i : 8
633: columns = @params.has_key?(:Columns) ? @params[:Columns].to_i : 1
634:
635: stream = Predictor.do_pre_prediction(stream, @params[:Predictor].to_i, colors, bpc, columns)
636: end
637:
638: Zlib::Deflate.deflate(stream, Zlib::BEST_COMPRESSION)
639: end