diff options
author | Sebastian Rasmussen <sebras@gmail.com> | 2017-10-24 15:41:38 +0200 |
---|---|---|
committer | Tor Andersson <tor.andersson@artifex.com> | 2017-11-22 23:09:51 +0100 |
commit | f5ac2007f11147cdc59bd1a9a3f8d43d72690b2d (patch) | |
tree | 7d4a98bd54e6c8d3a5dd518cfc03a7a0650c927a /source | |
parent | 4dbc82dac40cc8fa4c97a9835e4c4b80a13f5dac (diff) | |
download | mupdf-f5ac2007f11147cdc59bd1a9a3f8d43d72690b2d.tar.xz |
jni: Return correct quadpoints coordinates.
Diffstat (limited to 'source')
-rw-r--r-- | source/pdf/pdf-annot-edit.c | 10 | ||||
-rw-r--r-- | source/tools/murun.c | 2 |
2 files changed, 4 insertions, 8 deletions
diff --git a/source/pdf/pdf-annot-edit.c b/source/pdf/pdf-annot-edit.c index dbca68c6..d0ad0915 100644 --- a/source/pdf/pdf-annot-edit.c +++ b/source/pdf/pdf-annot-edit.c @@ -654,29 +654,25 @@ pdf_annot_quad_point_count(fz_context *ctx, pdf_annot *annot) pdf_obj *quad_points; check_allowed_subtypes(ctx, annot, PDF_NAME_QuadPoints, quad_point_subtypes); quad_points = pdf_dict_get(ctx, annot->obj, PDF_NAME_QuadPoints); - return pdf_array_len(ctx, quad_points); + return pdf_array_len(ctx, quad_points) / 8; } void pdf_annot_quad_point(fz_context *ctx, pdf_annot *annot, int idx, float v[8]) { pdf_obj *quad_points; - pdf_obj *quad_point; fz_matrix page_ctm; int i; check_allowed_subtypes(ctx, annot, PDF_NAME_QuadPoints, quad_point_subtypes); - quad_points = pdf_dict_get(ctx, annot->obj, PDF_NAME_QuadPoints); - quad_point = pdf_array_get(ctx, quad_points, idx); - pdf_page_transform(ctx, annot->page, NULL, &page_ctm); for (i = 0; i < 8; i += 2) { fz_point point; - point.x = pdf_to_real(ctx, pdf_array_get(ctx, quad_point, i+0)); - point.y = pdf_to_real(ctx, pdf_array_get(ctx, quad_point, i+1)); + point.x = pdf_to_real(ctx, pdf_array_get(ctx, quad_points, idx * 8 + i + 0)); + point.y = pdf_to_real(ctx, pdf_array_get(ctx, quad_points, idx * 8 + i + 1)); fz_transform_point(&point, &page_ctm); v[i+0] = point.x; v[i+1] = point.y; diff --git a/source/tools/murun.c b/source/tools/murun.c index 2e407c99..a4c25791 100644 --- a/source/tools/murun.c +++ b/source/tools/murun.c @@ -4117,7 +4117,7 @@ static void ffi_PDFAnnotation_setQuadPoints(js_State *J) fz_context *ctx = js_getcontext(J); pdf_annot *annot = js_touserdata(J, 0, "pdf_annot"); float *qp = NULL; - int k, i, n = 0; + int k, i, n; n = js_getlength(J, 1); |