diff options
author | Robin Watts <robin.watts@artifex.com> | 2015-07-20 19:25:28 +0100 |
---|---|---|
committer | Robin Watts <robin.watts@artifex.com> | 2015-08-17 12:34:33 +0100 |
commit | 88003e46fa0db666d4cbccdfa81857ca7853e55f (patch) | |
tree | 51ecec7126a2e0c058b7e53d9ac41dfca5f685f1 /source/gprf | |
parent | ffcd1d4b197a33c7d2d9f500451a2a40b52c23e9 (diff) | |
download | mupdf-88003e46fa0db666d4cbccdfa81857ca7853e55f.tar.xz |
Add JNI interface to MuPDFCore to read/write separations on a page.
Get separation information out to the Java level.
Diffstat (limited to 'source/gprf')
-rw-r--r-- | source/gprf/gprf-doc.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/source/gprf/gprf-doc.c b/source/gprf/gprf-doc.c index 07714b8a..02562ca7 100644 --- a/source/gprf/gprf-doc.c +++ b/source/gprf/gprf-doc.c @@ -654,6 +654,26 @@ gprf_run_page(fz_context *ctx, fz_page *page_, fz_device *dev, const fz_matrix * fz_render_flags(ctx, dev, 0, FZ_DEVFLAG_GRIDFIT_AS_TILED); } +static int gprf_count_separations(fz_context *ctx, fz_page *page_) +{ + gprf_page *page = (gprf_page *)page_; + + return fz_count_separations(ctx, page->separations); +} + +static void gprf_control_separation(fz_context *ctx, fz_page *page_, int sep, int disable) +{ + gprf_page *page = (gprf_page *)page_; + + fz_control_separation(ctx, page->separations, sep, disable); +} + +static const char *gprf_get_separation(fz_context *ctx, fz_page *page_, int sep, uint32_t *rgba, uint32_t*cmyk) +{ + gprf_page *page = (gprf_page *)page_; + + return fz_get_separation(ctx, page->separations, sep, rgba, cmyk); +} static fz_page * gprf_load_page(fz_context *ctx, fz_document *doc_, int number) @@ -666,6 +686,9 @@ gprf_load_page(fz_context *ctx, fz_document *doc_, int number) page->super.bound_page = gprf_bound_page; page->super.run_page_contents = gprf_run_page; page->super.drop_page_imp = gprf_drop_page_imp; + page->super.count_separations = gprf_count_separations; + page->super.control_separation = gprf_control_separation; + page->super.get_separation = gprf_get_separation; page->doc = (gprf_document *)fz_keep_document(ctx, &doc->super); page->number = number; page->separations = fz_new_separations(ctx); |