class PDF::Reader::Filter::Depredict

Public Class Methods

new(options = {}) click to toggle source
# File lib/pdf/reader/filter/depredict.rb, line 5
def initialize(options = {})
  @options = options || {}
end

Public Instance Methods

filter(data) click to toggle source

Streams can be preprocessed to improve compression. This reverses the preprocessing

# File lib/pdf/reader/filter/depredict.rb, line 13
def filter(data)
  predictor = @options[:Predictor].to_i

  case predictor
  when 0, 1 then
    data
  when 2    then
    tiff_depredict(data)
  when 10, 11, 12, 13, 14, 15 then
    png_depredict(data)
  else
    raise  MalformedPDFError, "Unrecognised predictor value (#{predictor})"
  end
end