function decode_stream_data($stream) { $filters = $stream->data['/Filter']; if (!$filters) { $filters = array(); } if (count($filters) && !is_a($filters[0], 'NameObject')) { $filters = array($filters); } $data = $stream->stream; foreach ($filters as $filter_type) { if ($filter_type == '/FlateDecode') { $data = FlateDecode::decode($data, $stream->data['/DecodeParms']); } } return $data; }