Module: PDF::Reader::Filter

Defined in:
lib/pdf/reader/filter.rb,
lib/pdf/reader/filter/lzw.rb,
lib/pdf/reader/filter/null.rb,
lib/pdf/reader/filter/flate.rb,
lib/pdf/reader/filter/ascii85.rb,
lib/pdf/reader/filter/depredict.rb,
lib/pdf/reader/filter/ascii_hex.rb,
lib/pdf/reader/filter/run_length.rb

Overview

:nodoc:

Defined Under Namespace

Classes: Ascii85, AsciiHex, Depredict, Flate, Lzw, Null, RunLength

Class Method Summary collapse

Class Method Details

.with(name, options = {}) ⇒ Object

creates a new filter for decoding content.

Filters that are only used to encode image data are accepted, but the data is returned untouched. At this stage PDF::Reader has no need to decode images.


42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# File 'lib/pdf/reader/filter.rb', line 42

def self.with(name, options = {})
  case name.to_sym
  when :ASCII85Decode   then PDF::Reader::Filter::Ascii85.new(options)
  when :ASCIIHexDecode  then PDF::Reader::Filter::AsciiHex.new(options)
  when :CCITTFaxDecode  then PDF::Reader::Filter::Null.new(options)
  when :DCTDecode       then PDF::Reader::Filter::Null.new(options)
  when :FlateDecode     then PDF::Reader::Filter::Flate.new(options)
  when :JBIG2Decode     then PDF::Reader::Filter::Null.new(options)
  when :JPXDecode       then PDF::Reader::Filter::Null.new(options)
  when :LZWDecode       then PDF::Reader::Filter::Lzw.new(options)
  when :RunLengthDecode then PDF::Reader::Filter::RunLength.new(options)
  else
    raise UnsupportedFeatureError, "Unknown filter: #{name}"
  end
end