PS: Use tight bounding box

Now that the page size is specified by %%DocumentMedia
we can make %%BoundingBox compliant.
This commit is contained in:
Adrian Johnson 2011-05-22 20:41:18 +09:30
parent d11b39ea27
commit 6936a2b417

View file

@ -3842,17 +3842,10 @@ _cairo_ps_surface_set_bounding_box (void *abstract_surface,
cairo_bool_t has_page_media, has_page_bbox;
const char *page_media;
if (surface->eps) {
x1 = floor (_cairo_fixed_to_double (bbox->p1.x));
y1 = floor (surface->height - _cairo_fixed_to_double (bbox->p2.y));
x2 = ceil (_cairo_fixed_to_double (bbox->p2.x));
y2 = ceil (surface->height - _cairo_fixed_to_double (bbox->p1.y));
} else {
x1 = 0;
y1 = 0;
x2 = ceil (surface->width);
y2 = ceil (surface->height);
}
x1 = floor (_cairo_fixed_to_double (bbox->p1.x));
y1 = floor (surface->height - _cairo_fixed_to_double (bbox->p2.y));
x2 = ceil (_cairo_fixed_to_double (bbox->p2.x));
y2 = ceil (surface->height - _cairo_fixed_to_double (bbox->p1.y));
surface->page_bbox.x = x1;
surface->page_bbox.y = y1;