class PDF::Reader::Buffer

def read (length)

length should be a positive integer.

reads the requested number of bytes from the underlying IO stream.
###############################################################################
def read (length)
  out = ""
  if @buffer and !@buffer.empty?
    out << head(length)
    length -= out.length
  end
  out << @io.read(length) if length > 0
  out
end