Class: Pdfrb::Filter::LZWDecode

Inherits:
Object
  • Object
show all
Includes:
Base
Defined in:
lib/pdfrb/filter/lzw_decode.rb

Overview

LZWDecode (s7.4.4). LZW decompression with optional DeLZW predictor handling (same PNG predictor as FlateDecode).

Constant Summary collapse

CLEAR_TABLE =
256
EOD_MARKER =
257
INITIAL_DICT_SIZE =
258

Class Method Summary collapse

Class Method Details

.decoder(bytes, parms, _document) ⇒ Object



17
18
19
20
# File 'lib/pdfrb/filter/lzw_decode.rb', line 17

def decoder(bytes, parms, _document)
  decoded = decompress(bytes)
  apply_predictor(decoded, parms)
end

.encoder(_bytes, _parms, _document) ⇒ Object

Raises:



22
23
24
25
26
27
# File 'lib/pdfrb/filter/lzw_decode.rb', line 22

def encoder(_bytes, _parms, _document)
  raise Pdfrb::FilterError.new(
    "LZWDecode encoder not implemented",
    filter_name: "LZWDecode"
  )
end