summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTor Andersson <tor@ghostscript.com>2009-12-03 22:56:22 +0100
committerTor Andersson <tor@ghostscript.com>2009-12-03 22:56:22 +0100
commitfff37177cfa0a353cf056b0b07952c00a532c085 (patch)
treed6ab490d4e28930fea456b3c18299187b3447c2c
parentb2da3129d24d373b3b297460a31f293f613ce88d (diff)
downloadmupdf-fff37177cfa0a353cf056b0b07952c00a532c085.tar.xz
Clip XObjects to their bounding box.
-rw-r--r--mupdf/pdf_interpret.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/mupdf/pdf_interpret.c b/mupdf/pdf_interpret.c
index a2ce6f0c..a1405dbc 100644
--- a/mupdf/pdf_interpret.c
+++ b/mupdf/pdf_interpret.c
@@ -220,6 +220,16 @@ runxobject(pdf_csi *csi, pdf_xref *xref, fz_obj *rdb, pdf_xobject *xobj)
gstate->head = blend;
}
+ /* clip to the bounds */
+
+ fz_moveto(csi->path, xobj->bbox.x0, xobj->bbox.y0);
+ fz_lineto(csi->path, xobj->bbox.x1, xobj->bbox.y0);
+ fz_lineto(csi->path, xobj->bbox.x1, xobj->bbox.y1);
+ fz_lineto(csi->path, xobj->bbox.x0, xobj->bbox.y1);
+ fz_closepath(csi->path);
+ csi->clip = 1;
+ pdf_showpath(csi, 0, 0, 0, 0);
+
/* run contents */
xobj->contents->rp = xobj->contents->bp;