diff options
Diffstat (limited to 'xps')
-rw-r--r-- | xps/muxps.h | 3 | ||||
-rw-r--r-- | xps/xps_tile.c | 10 |
2 files changed, 13 insertions, 0 deletions
diff --git a/xps/muxps.h b/xps/muxps.h index 188935c8..95b68860 100644 --- a/xps/muxps.h +++ b/xps/muxps.h @@ -173,6 +173,8 @@ void xps_debug_resource_dictionary(xps_resource *dict); * Fixed page/graphics parsing. */ +void xps_run_page(xps_document *doc, xps_page *page, fz_device *dev, fz_matrix ctm, fz_cookie *cookie); + void xps_parse_fixed_page(xps_document *doc, fz_matrix ctm, xps_page *page); void xps_parse_canvas(xps_document *doc, fz_matrix ctm, fz_rect area, char *base_uri, xps_resource *dict, xml_element *node); void xps_parse_path(xps_document *doc, fz_matrix ctm, char *base_uri, xps_resource *dict, xml_element *node); @@ -244,6 +246,7 @@ struct xps_document_s float alpha; /* Current device */ + fz_cookie *cookie; fz_device *dev; }; diff --git a/xps/xps_tile.c b/xps/xps_tile.c index 1acdd369..842e4cda 100644 --- a/xps/xps_tile.c +++ b/xps/xps_tile.c @@ -356,3 +356,13 @@ xps_parse_fixed_page(xps_document *doc, fz_matrix ctm, xps_page *page) if (dict) xps_free_resource_dictionary(doc, dict); } + +void +xps_run_page(xps_document *doc, xps_page *page, fz_device *dev, fz_matrix ctm, fz_cookie *cookie) +{ + doc->cookie = cookie; + doc->dev = dev; + xps_parse_fixed_page(doc, ctm, page); + doc->cookie = NULL; + doc->dev = NULL; +} |