module PDF::Reader::Filter

def self.with(name, options = {})


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

creates a new filter for decoding content.
###############################################################################
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 :Fl              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