summaryrefslogtreecommitdiff
path: root/source/xps
diff options
context:
space:
mode:
authorTor Andersson <tor.andersson@artifex.com>2018-06-29 16:46:17 +0200
committerTor Andersson <tor.andersson@artifex.com>2018-07-05 15:32:34 +0200
commitea7403b4c172338dfe7f371302f82859921e60af (patch)
tree4a3fbf8ea35cb53fcbf395f096cf61ffda7b40be /source/xps
parent4a99615a609eec2b84bb2341d74fac46a5998137 (diff)
downloadmupdf-ea7403b4c172338dfe7f371302f82859921e60af.tar.xz
Pass matrices by value: device and document interface.
Diffstat (limited to 'source/xps')
-rw-r--r--source/xps/xps-glyphs.c5
-rw-r--r--source/xps/xps-gradient.c4
-rw-r--r--source/xps/xps-image.c2
-rw-r--r--source/xps/xps-imp.h2
-rw-r--r--source/xps/xps-path.c10
-rw-r--r--source/xps/xps-tile.c8
6 files changed, 15 insertions, 16 deletions
diff --git a/source/xps/xps-glyphs.c b/source/xps/xps-glyphs.c
index 1effccc2..de9b4f45 100644
--- a/source/xps/xps-glyphs.c
+++ b/source/xps/xps-glyphs.c
@@ -606,15 +606,14 @@ xps_parse_glyphs(fz_context *ctx, xps_document *doc, fz_matrix ctm,
samples[0] *= fz_atof(fill_opacity_att);
xps_set_color(ctx, doc, colorspace, samples);
- fz_fill_text(ctx, dev, text, &ctm,
- doc->colorspace, doc->color, doc->alpha, NULL);
+ fz_fill_text(ctx, dev, text, ctm, doc->colorspace, doc->color, doc->alpha, NULL);
}
/* If it's a complex brush, use the charpath as a clip mask */
if (fill_tag)
{
- fz_clip_text(ctx, dev, text, &ctm, &area);
+ fz_clip_text(ctx, dev, text, ctm, &area);
xps_parse_brush(ctx, doc, ctm, area, fill_uri, dict, fill_tag);
fz_pop_clip(ctx, dev);
}
diff --git a/source/xps/xps-gradient.c b/source/xps/xps-gradient.c
index 73022790..aefb6f21 100644
--- a/source/xps/xps-gradient.c
+++ b/source/xps/xps-gradient.c
@@ -240,7 +240,7 @@ xps_draw_one_radial_gradient(fz_context *ctx, xps_document *doc, fz_matrix ctm,
shade->u.l_or_r.coords[1][1] = y1;
shade->u.l_or_r.coords[1][2] = r1;
- fz_fill_shade(ctx, dev, shade, &ctm, 1, fz_default_color_params(ctx));
+ fz_fill_shade(ctx, dev, shade, ctm, 1, fz_default_color_params(ctx));
fz_drop_shade(ctx, shade);
}
@@ -279,7 +279,7 @@ xps_draw_one_linear_gradient(fz_context *ctx, xps_document *doc, fz_matrix ctm,
shade->u.l_or_r.coords[1][1] = y1;
shade->u.l_or_r.coords[1][2] = 0;
- fz_fill_shade(ctx, dev, shade, &ctm, doc->opacity[doc->opacity_top], fz_default_color_params(ctx));
+ fz_fill_shade(ctx, dev, shade, ctm, doc->opacity[doc->opacity_top], fz_default_color_params(ctx));
fz_drop_shade(ctx, shade);
}
diff --git a/source/xps/xps-image.c b/source/xps/xps-image.c
index b5affe35..dca10178 100644
--- a/source/xps/xps-image.c
+++ b/source/xps/xps-image.c
@@ -22,7 +22,7 @@ xps_paint_image_brush(fz_context *ctx, xps_document *doc, fz_matrix ctm, fz_rect
xs = image->w * 96 / image->xres;
ys = image->h * 96 / image->yres;
ctm = fz_pre_scale(ctm, xs, ys);
- fz_fill_image(ctx, doc->dev, image, &ctm, doc->opacity[doc->opacity_top], fz_default_color_params(ctx));
+ fz_fill_image(ctx, doc->dev, image, ctm, doc->opacity[doc->opacity_top], fz_default_color_params(ctx));
}
static void
diff --git a/source/xps/xps-imp.h b/source/xps/xps-imp.h
index fc820033..ce372e21 100644
--- a/source/xps/xps-imp.h
+++ b/source/xps/xps-imp.h
@@ -12,7 +12,7 @@ fz_document *xps_open_document_with_stream(fz_context *ctx, fz_stream *file);
int xps_count_pages(fz_context *ctx, fz_document *doc);
fz_page *xps_load_page(fz_context *ctx, fz_document *doc, int number);
fz_outline *xps_load_outline(fz_context *ctx, fz_document *doc);
-void xps_run_page(fz_context *ctx, fz_page *page, fz_device *dev, const fz_matrix *ctm, fz_cookie *cookie);
+void xps_run_page(fz_context *ctx, fz_page *page, fz_device *dev, fz_matrix ctm, fz_cookie *cookie);
fz_link *xps_load_links(fz_context *ctx, fz_page *page);
int xps_lookup_link_target(fz_context *ctx, fz_document *doc, const char *target_uri, float *xp, float *yp);
diff --git a/source/xps/xps-path.c b/source/xps/xps-path.c
index ad8ea535..42ecd2b1 100644
--- a/source/xps/xps-path.c
+++ b/source/xps/xps-path.c
@@ -767,7 +767,7 @@ xps_clip(fz_context *ctx, xps_document *doc, fz_matrix ctm, xps_resource *dict,
path = xps_parse_path_geometry(ctx, doc, dict, clip_tag, 0, &fill_rule);
else
path = fz_new_path(ctx);
- fz_clip_path(ctx, dev, path, fill_rule == 0, &ctm, NULL);
+ fz_clip_path(ctx, dev, path, fill_rule == 0, ctm, NULL);
fz_drop_path(ctx, path);
}
@@ -1001,13 +1001,13 @@ xps_parse_path(fz_context *ctx, xps_document *doc, fz_matrix ctm, char *base_uri
if (fill_opacity_att)
samples[0] *= fz_atof(fill_opacity_att);
xps_set_color(ctx, doc, colorspace, samples);
- fz_fill_path(ctx, dev, path, fill_rule == 0, &ctm,
+ fz_fill_path(ctx, dev, path, fill_rule == 0, ctm,
doc->colorspace, doc->color, doc->alpha, NULL);
}
if (fill_tag)
{
- fz_clip_path(ctx, dev, path, fill_rule == 0, &ctm, &area);
+ fz_clip_path(ctx, dev, path, fill_rule == 0, ctm, &area);
xps_parse_brush(ctx, doc, ctm, area, fill_uri, dict, fill_tag);
fz_pop_clip(ctx, dev);
}
@@ -1018,13 +1018,13 @@ xps_parse_path(fz_context *ctx, xps_document *doc, fz_matrix ctm, char *base_uri
if (stroke_opacity_att)
samples[0] *= fz_atof(stroke_opacity_att);
xps_set_color(ctx, doc, colorspace, samples);
- fz_stroke_path(ctx, dev, stroke_path, stroke, &ctm,
+ fz_stroke_path(ctx, dev, stroke_path, stroke, ctm,
doc->colorspace, doc->color, doc->alpha, NULL);
}
if (stroke_tag)
{
- fz_clip_stroke_path(ctx, dev, stroke_path, stroke, &ctm, &area);
+ fz_clip_stroke_path(ctx, dev, stroke_path, stroke, ctm, &area);
xps_parse_brush(ctx, doc, ctm, area, stroke_uri, dict, stroke_tag);
fz_pop_clip(ctx, dev);
}
diff --git a/source/xps/xps-tile.c b/source/xps/xps-tile.c
index 6a75481f..83903dd2 100644
--- a/source/xps/xps-tile.c
+++ b/source/xps/xps-tile.c
@@ -33,7 +33,7 @@ xps_paint_tiling_brush_clipped(fz_context *ctx, xps_document *doc, fz_matrix ctm
fz_lineto(ctx, path, viewbox.x1, viewbox.y1);
fz_lineto(ctx, path, viewbox.x1, viewbox.y0);
fz_closepath(ctx, path);
- fz_clip_path(ctx, dev, path, 0, &ctm, NULL);
+ fz_clip_path(ctx, dev, path, 0, ctm, NULL);
fz_drop_path(ctx, path);
c->func(ctx, doc, ctm, viewbox, c->base_uri, c->dict, c->root, c->user);
fz_pop_clip(ctx, dev);
@@ -183,7 +183,7 @@ xps_parse_tiling_brush(fz_context *ctx, xps_document *doc, fz_matrix ctm, fz_rec
fz_rect bigview = viewbox;
bigview.x1 = bigview.x0 + xstep;
bigview.y1 = bigview.y0 + ystep;
- fz_begin_tile(ctx, dev, &area, &bigview, xstep, ystep, &ctm);
+ fz_begin_tile(ctx, dev, &area, &bigview, xstep, ystep, ctm);
xps_paint_tiling_brush(ctx, doc, ctm, viewbox, tile_mode, &c);
fz_end_tile(ctx, dev);
}
@@ -367,13 +367,13 @@ xps_parse_fixed_page(fz_context *ctx, xps_document *doc, fz_matrix ctm, xps_page
}
void
-xps_run_page(fz_context *ctx, fz_page *page_, fz_device *dev, const fz_matrix *ctm, fz_cookie *cookie)
+xps_run_page(fz_context *ctx, fz_page *page_, fz_device *dev, fz_matrix ctm, fz_cookie *cookie)
{
xps_page *page = (xps_page*)page_;
xps_document *doc = page->doc;
fz_matrix page_ctm;
- page_ctm = fz_pre_scale(*ctm, 72.0f / 96.0f, 72.0f / 96.0f);
+ page_ctm = fz_pre_scale(ctm, 72.0f / 96.0f, 72.0f / 96.0f);
doc->cookie = cookie;
doc->dev = dev;