We investigate the problem of finding the visible pieces of a scene of objects from a specified viewpoint. In particular, we are interested in the design of an efficient hidden surface removal algorithm for a scene comprised of iso-oriented rectangles. We propose an algorithm where given a set of $n$ iso-oriented rectangles we report all visible surfaces in $O((n+k)\log n)$ time and linear space, where $k$ is the number of surfaces reported. The previous best result by Bern, has the same time complexity but uses $O(n\log n)$ space.