'Iterate through the pages of the file.
Yields
Page
Details of all the text and box objects on the page.
The Page tuple contains lists of Text and Box tuples and
the page dimensions, and the Text and Box tuples contain
coordinates transformed into a standard Cartesian
coordinate system at the dpi value given when initializing.
The coordinates are floating point numbers, but otherwise
precision is not lost and coordinate values are not clipped to
integers.'

def __iter__(self):

    while True:
        have_page = self._read()
        if have_page:
            (yield self._output())
        else:
            break
