From 7f9a818c2187960bda0cf3cae515ee8a7ad91481 Mon Sep 17 00:00:00 2001 From: Simon Tatham Date: Tue, 13 Apr 2004 15:05:03 +0000 Subject: Implement PDF link annotations: both internal hyperlinks within the document, and references to external URLs for which acroread will start a web browser. [originally from svn r4060] --- paper.h | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'paper.h') diff --git a/paper.h b/paper.h index 3b4a944..4ba0908 100644 --- a/paper.h +++ b/paper.h @@ -17,6 +17,8 @@ typedef struct line_data_Tag line_data; typedef struct page_data_Tag page_data; typedef struct subfont_map_entry_Tag subfont_map_entry; typedef struct text_fragment_Tag text_fragment; +typedef struct xref_Tag xref; +typedef struct xref_dest_Tag xref_dest; /* * This data structure represents the overall document, in the form @@ -215,6 +217,11 @@ struct page_data_Tag { text_fragment *first_text; text_fragment *last_text; /* + * Cross-references. + */ + xref *first_xref; + xref *last_xref; + /* * This spare pointer field is for use by the client backends. */ void *spare; @@ -228,6 +235,18 @@ struct text_fragment_Tag { char *text; }; +struct xref_dest_Tag { + enum { NONE, PAGE, URL } type; + page_data *page; + char *url; +}; + +struct xref_Tag { + xref *next; + int lx, rx, ty, by; + xref_dest dest; +}; + /* * Functions and data exported from psdata.c. */ -- cgit v1.1