summaryrefslogtreecommitdiff
path: root/source/xps
diff options
context:
space:
mode:
authorTor Andersson <tor.andersson@artifex.com>2016-11-14 13:03:07 +0100
committerTor Andersson <tor.andersson@artifex.com>2016-11-14 13:23:57 +0100
commit2216f9402a9ddf232e15fdd508b9123011af8bd3 (patch)
tree3b4e44be0e332bb9d957864fcde41057ed0fcb79 /source/xps
parent018253cfc8a34805c4fc1e0f955e3696db60886a (diff)
downloadmupdf-2216f9402a9ddf232e15fdd508b9123011af8bd3.tar.xz
Add/fix page coordinates to link targets.
Correctly transformed target coordinates for PDF. Target coordinates for EPUB and HTML.
Diffstat (limited to 'source/xps')
-rw-r--r--source/xps/xps-doc.c2
-rw-r--r--source/xps/xps-imp.h2
-rw-r--r--source/xps/xps-outline.c2
3 files changed, 3 insertions, 3 deletions
diff --git a/source/xps/xps-doc.c b/source/xps/xps-doc.c
index d530bdbd..8197f505 100644
--- a/source/xps/xps-doc.c
+++ b/source/xps/xps-doc.c
@@ -124,7 +124,7 @@ xps_add_link_target(fz_context *ctx, xps_document *doc, char *name)
}
int
-xps_lookup_link_target(fz_context *ctx, xps_document *doc, char *target_uri)
+xps_lookup_link_target(fz_context *ctx, xps_document *doc, char *target_uri, float *xp, float *yp)
{
xps_target *target;
char *needle = strrchr(target_uri, '#');
diff --git a/source/xps/xps-imp.h b/source/xps/xps-imp.h
index 4f21fb95..2ba78a50 100644
--- a/source/xps/xps-imp.h
+++ b/source/xps/xps-imp.h
@@ -105,7 +105,7 @@ void xps_read_page_list(fz_context *ctx, xps_document *doc);
void xps_print_page_list(fz_context *ctx, xps_document *doc);
void xps_drop_page_list(fz_context *ctx, xps_document *doc);
-int xps_lookup_link_target(fz_context *ctx, xps_document *doc, char *target_uri);
+int xps_lookup_link_target(fz_context *ctx, xps_document *doc, char *target_uri, float *xp, float *yp);
/*
* Images, fonts, and colorspaces.
diff --git a/source/xps/xps-outline.c b/source/xps/xps-outline.c
index 1fe294fb..bcb16509 100644
--- a/source/xps/xps-outline.c
+++ b/source/xps/xps-outline.c
@@ -34,7 +34,7 @@ xps_parse_document_outline(fz_context *ctx, xps_document *doc, fz_xml *root)
entry = fz_new_outline(ctx);
entry->title = fz_strdup(ctx, description);
entry->uri = fz_strdup(ctx, target);
- entry->page = xps_lookup_link_target(ctx, doc, target);
+ entry->page = xps_lookup_link_target(ctx, doc, target, NULL, NULL);
entry->down = NULL;
entry->next = NULL;