diff options
author | Tor Andersson <tor.andersson@artifex.com> | 2012-03-13 12:40:09 +0100 |
---|---|---|
committer | Tor Andersson <tor.andersson@artifex.com> | 2012-03-13 12:54:51 +0100 |
commit | 9cbfb766564d0e80d259e3e0a919d72a75bbb6ee (patch) | |
tree | b414efb4a9e5a286664270d9f98ad0c8d8467eda /xps | |
parent | 1f766b618e418b5a4d4e146506b75c89b6c416fb (diff) | |
download | mupdf-9cbfb766564d0e80d259e3e0a919d72a75bbb6ee.tar.xz |
Split XPS header. Update Makefile dependencies. Add pixmap w/h accessors.
Diffstat (limited to 'xps')
-rw-r--r-- | xps/muxps-internal.h | 242 | ||||
-rw-r--r-- | xps/muxps.h | 257 | ||||
-rw-r--r-- | xps/xps_common.c | 3 | ||||
-rw-r--r-- | xps/xps_doc.c | 3 | ||||
-rw-r--r-- | xps/xps_glyphs.c | 3 | ||||
-rw-r--r-- | xps/xps_gradient.c | 11 | ||||
-rw-r--r-- | xps/xps_image.c | 3 | ||||
-rw-r--r-- | xps/xps_outline.c | 3 | ||||
-rw-r--r-- | xps/xps_path.c | 23 | ||||
-rw-r--r-- | xps/xps_resource.c | 3 | ||||
-rw-r--r-- | xps/xps_tile.c | 3 | ||||
-rw-r--r-- | xps/xps_util.c | 3 | ||||
-rw-r--r-- | xps/xps_xml.c | 3 | ||||
-rw-r--r-- | xps/xps_zip.c | 3 |
14 files changed, 281 insertions, 282 deletions
diff --git a/xps/muxps-internal.h b/xps/muxps-internal.h new file mode 100644 index 00000000..3084bdfa --- /dev/null +++ b/xps/muxps-internal.h @@ -0,0 +1,242 @@ +#ifndef MUXPS_INTERNAL_H +#define MUXPS_INTERNAL_H + +#include "muxps.h" +#include "fitz-internal.h" + +typedef unsigned char byte; + +/* + * XPS and ZIP constants. + */ + +#define REL_START_PART \ + "http://schemas.microsoft.com/xps/2005/06/fixedrepresentation" +#define REL_DOC_STRUCTURE \ + "http://schemas.microsoft.com/xps/2005/06/documentstructure" +#define REL_REQUIRED_RESOURCE \ + "http://schemas.microsoft.com/xps/2005/06/required-resource" +#define REL_REQUIRED_RESOURCE_RECURSIVE \ + "http://schemas.microsoft.com/xps/2005/06/required-resource#recursive" + +#define ZIP_LOCAL_FILE_SIG 0x04034b50 +#define ZIP_DATA_DESC_SIG 0x08074b50 +#define ZIP_CENTRAL_DIRECTORY_SIG 0x02014b50 +#define ZIP_END_OF_CENTRAL_DIRECTORY_SIG 0x06054b50 + +/* + * Memory, and string functions. + */ + +int xps_strcasecmp(char *a, char *b); +void xps_resolve_url(char *output, char *base_uri, char *path, int output_size); +int xps_url_is_remote(char *path); +char *xps_parse_point(char *s_in, float *x, float *y); + +/* + * Container parts. + */ + +typedef struct xps_part_s xps_part; + +struct xps_part_s +{ + char *name; + int size; + int cap; + byte *data; +}; + +xps_part *xps_new_part(xps_document *doc, char *name, int size); +int xps_has_part(xps_document *doc, char *partname); +xps_part *xps_read_part(xps_document *doc, char *partname); +void xps_free_part(xps_document *doc, xps_part *part); + +/* + * Document structure. + */ + +typedef struct xps_fixdoc_s xps_fixdoc; +typedef struct xps_target_s xps_target; + +struct xps_fixdoc_s +{ + char *name; + char *outline; + xps_fixdoc *next; +}; + +struct xps_page_s +{ + char *name; + int number; + int width; + int height; + xml_element *root; + int links_resolved; + fz_link *links; + xps_page *next; +}; + +struct xps_target_s +{ + char *name; + int page; + xps_target *next; +}; + +void xps_read_page_list(xps_document *doc); +void xps_debug_page_list(xps_document *doc); +void xps_free_page_list(xps_document *doc); + +int xps_count_pages(xps_document *doc); +xps_page *xps_load_page(xps_document *doc, int number); +fz_link *xps_load_links(xps_document *doc, xps_page *page); +fz_rect xps_bound_page(xps_document *doc, xps_page *page); +void xps_free_page(xps_document *doc, xps_page *page); + +fz_outline *xps_load_outline(xps_document *doc); + +int xps_find_link_target(xps_document *doc, char *target_uri); +void xps_add_link(xps_document *doc, fz_rect area, char *base_uri, char *target_uri); +/* + * Images, fonts, and colorspaces. + */ + +typedef struct xps_font_cache_s xps_font_cache; + +struct xps_font_cache_s +{ + char *name; + fz_font *font; + xps_font_cache *next; +}; + +typedef struct xps_glyph_metrics_s xps_glyph_metrics; + +struct xps_glyph_metrics_s +{ + float hadv, vadv, vorg; +}; + +int xps_count_font_encodings(fz_font *font); +void xps_identify_font_encoding(fz_font *font, int idx, int *pid, int *eid); +void xps_select_font_encoding(fz_font *font, int idx); +int xps_encode_font_char(fz_font *font, int key); + +void xps_measure_font_glyph(xps_document *doc, fz_font *font, int gid, xps_glyph_metrics *mtx); + +void xps_debug_path(xps_document *doc); + +void xps_parse_color(xps_document *doc, char *base_uri, char *hexstring, fz_colorspace **csp, float *samples); +void xps_set_color(xps_document *doc, fz_colorspace *colorspace, float *samples); + +/* + * Resource dictionaries. + */ + +typedef struct xps_resource_s xps_resource; + +struct xps_resource_s +{ + char *name; + char *base_uri; /* only used in the head nodes */ + xml_element *base_xml; /* only used in the head nodes, to free the xml document */ + xml_element *data; + xps_resource *next; + xps_resource *parent; /* up to the previous dict in the stack */ +}; + +xps_resource * xps_parse_resource_dictionary(xps_document *doc, char *base_uri, xml_element *root); +void xps_free_resource_dictionary(xps_document *doc, xps_resource *dict); +void xps_resolve_resource_reference(xps_document *doc, xps_resource *dict, char **attp, xml_element **tagp, char **urip); + +void xps_debug_resource_dictionary(xps_resource *dict); + +/* + * Fixed page/graphics parsing. + */ + +void xps_run_page(xps_document *doc, xps_page *page, fz_device *dev, fz_matrix ctm, fz_cookie *cookie); + +void xps_parse_fixed_page(xps_document *doc, fz_matrix ctm, xps_page *page); +void xps_parse_canvas(xps_document *doc, fz_matrix ctm, fz_rect area, char *base_uri, xps_resource *dict, xml_element *node); +void xps_parse_path(xps_document *doc, fz_matrix ctm, char *base_uri, xps_resource *dict, xml_element *node); +void xps_parse_glyphs(xps_document *doc, fz_matrix ctm, char *base_uri, xps_resource *dict, xml_element *node); +void xps_parse_solid_color_brush(xps_document *doc, fz_matrix ctm, char *base_uri, xps_resource *dict, xml_element *node); +void xps_parse_image_brush(xps_document *doc, fz_matrix ctm, fz_rect area, char *base_uri, xps_resource *dict, xml_element *node); +void xps_parse_visual_brush(xps_document *doc, fz_matrix ctm, fz_rect area, char *base_uri, xps_resource *dict, xml_element *node); +void xps_parse_linear_gradient_brush(xps_document *doc, fz_matrix ctm, fz_rect area, char *base_uri, xps_resource *dict, xml_element *node); +void xps_parse_radial_gradient_brush(xps_document *doc, fz_matrix ctm, fz_rect area, char *base_uri, xps_resource *dict, xml_element *node); + +void xps_parse_tiling_brush(xps_document *doc, fz_matrix ctm, fz_rect area, char *base_uri, xps_resource *dict, xml_element *root, void(*func)(xps_document*, fz_matrix, fz_rect, char*, xps_resource*, xml_element*, void*), void *user); + +void xps_parse_matrix_transform(xps_document *doc, xml_element *root, fz_matrix *matrix); +void xps_parse_render_transform(xps_document *doc, char *text, fz_matrix *matrix); +void xps_parse_rectangle(xps_document *doc, char *text, fz_rect *rect); + +void xps_begin_opacity(xps_document *doc, fz_matrix ctm, fz_rect area, char *base_uri, xps_resource *dict, char *opacity_att, xml_element *opacity_mask_tag); +void xps_end_opacity(xps_document *doc, char *base_uri, xps_resource *dict, char *opacity_att, xml_element *opacity_mask_tag); + +void xps_parse_brush(xps_document *doc, fz_matrix ctm, fz_rect area, char *base_uri, xps_resource *dict, xml_element *node); +void xps_parse_element(xps_document *doc, fz_matrix ctm, fz_rect area, char *base_uri, xps_resource *dict, xml_element *node); + +void xps_clip(xps_document *doc, fz_matrix ctm, xps_resource *dict, char *clip_att, xml_element *clip_tag); + +/* + * The interpreter context. + */ + +typedef struct xps_entry_s xps_entry; + +struct xps_entry_s +{ + char *name; + int offset; + int csize; + int usize; +}; + +struct xps_document_s +{ + fz_document super; + + fz_context *ctx; + char *directory; + fz_stream *file; + int zip_count; + xps_entry *zip_table; + + char *start_part; /* fixed document sequence */ + xps_fixdoc *first_fixdoc; /* first fixed document */ + xps_fixdoc *last_fixdoc; /* last fixed document */ + xps_page *first_page; /* first page of document */ + xps_page *last_page; /* last page of document */ + int page_count; + + xps_target *target; /* link targets */ + + char *base_uri; /* base uri for parsing XML and resolving relative paths */ + char *part_uri; /* part uri for parsing metadata relations */ + + /* We cache font resources */ + xps_font_cache *font_table; + + /* Opacity attribute stack */ + float opacity[64]; + int opacity_top; + + /* Current color */ + fz_colorspace *colorspace; + float color[8]; + float alpha; + + /* Current device */ + fz_cookie *cookie; + fz_device *dev; + + /* Current page we are loading */ + xps_page *current_page; +}; + +#endif diff --git a/xps/muxps.h b/xps/muxps.h index caba3322..a485adca 100644 --- a/xps/muxps.h +++ b/xps/muxps.h @@ -1,37 +1,10 @@ -#ifndef _MUXPS_H_ -#define _MUXPS_H_ +#ifndef MUXPS_H +#define MUXPS_H -#include "fitz-internal.h" - -typedef unsigned char byte; - -/* - * XPS and ZIP constants. - */ +#include "fitz.h" typedef struct xps_document_s xps_document; - -#define REL_START_PART \ - "http://schemas.microsoft.com/xps/2005/06/fixedrepresentation" -#define REL_DOC_STRUCTURE \ - "http://schemas.microsoft.com/xps/2005/06/documentstructure" -#define REL_REQUIRED_RESOURCE \ - "http://schemas.microsoft.com/xps/2005/06/required-resource" -#define REL_REQUIRED_RESOURCE_RECURSIVE \ - "http://schemas.microsoft.com/xps/2005/06/required-resource#recursive" - -#define ZIP_LOCAL_FILE_SIG 0x04034b50 -#define ZIP_DATA_DESC_SIG 0x08074b50 -#define ZIP_CENTRAL_DIRECTORY_SIG 0x02014b50 -#define ZIP_END_OF_CENTRAL_DIRECTORY_SIG 0x06054b50 - -/* - * Memory, and string functions. - */ - -int xps_strcasecmp(char *a, char *b); -void xps_resolve_url(char *output, char *base_uri, char *path, int output_size); -int xps_url_is_remote(char *path); +typedef struct xps_page_s xps_page; /* * XML document model @@ -39,7 +12,7 @@ int xps_url_is_remote(char *path); typedef struct element xml_element; -xml_element *xml_parse_document(fz_context *doc, byte *buf, int len); +xml_element *xml_parse_document(fz_context *doc, unsigned char *buf, int len); xml_element *xml_next(xml_element *item); xml_element *xml_down(xml_element *item); char *xml_tag(xml_element *item); @@ -48,213 +21,6 @@ void xml_free_element(fz_context *doc, xml_element *item); void xml_print_element(xml_element *item, int level); /* - * Container parts. - */ - -typedef struct xps_part_s xps_part; - -struct xps_part_s -{ - char *name; - int size; - int cap; - byte *data; -}; - -xps_part *xps_new_part(xps_document *doc, char *name, int size); -int xps_has_part(xps_document *doc, char *partname); -xps_part *xps_read_part(xps_document *doc, char *partname); -void xps_free_part(xps_document *doc, xps_part *part); - -/* - * Document structure. - */ - -typedef struct xps_fixdoc_s xps_fixdoc; -typedef struct xps_page_s xps_page; -typedef struct xps_target_s xps_target; - -struct xps_fixdoc_s -{ - char *name; - char *outline; - xps_fixdoc *next; -}; - -struct xps_page_s -{ - char *name; - int number; - int width; - int height; - xml_element *root; - int links_resolved; - fz_link *links; - xps_page *next; -}; - -struct xps_target_s -{ - char *name; - int page; - xps_target *next; -}; - -void xps_read_page_list(xps_document *doc); -void xps_debug_page_list(xps_document *doc); -void xps_free_page_list(xps_document *doc); - -int xps_count_pages(xps_document *doc); -xps_page *xps_load_page(xps_document *doc, int number); -fz_link *xps_load_links(xps_document *doc, xps_page *page); -fz_rect xps_bound_page(xps_document *doc, xps_page *page); -void xps_free_page(xps_document *doc, xps_page *page); - -fz_outline *xps_load_outline(xps_document *doc); - -int xps_find_link_target(xps_document *doc, char *target_uri); -void xps_add_link(xps_document *doc, fz_rect area, char *base_uri, char *target_uri); -/* - * Images, fonts, and colorspaces. - */ - -typedef struct xps_font_cache_s xps_font_cache; - -struct xps_font_cache_s -{ - char *name; - fz_font *font; - xps_font_cache *next; -}; - -typedef struct xps_glyph_metrics_s xps_glyph_metrics; - -struct xps_glyph_metrics_s -{ - float hadv, vadv, vorg; -}; - -int xps_count_font_encodings(fz_font *font); -void xps_identify_font_encoding(fz_font *font, int idx, int *pid, int *eid); -void xps_select_font_encoding(fz_font *font, int idx); -int xps_encode_font_char(fz_font *font, int key); - -void xps_measure_font_glyph(xps_document *doc, fz_font *font, int gid, xps_glyph_metrics *mtx); - -void xps_debug_path(xps_document *doc); - -void xps_parse_color(xps_document *doc, char *base_uri, char *hexstring, fz_colorspace **csp, float *samples); -void xps_set_color(xps_document *doc, fz_colorspace *colorspace, float *samples); - -/* - * Resource dictionaries. - */ - -typedef struct xps_resource_s xps_resource; - -struct xps_resource_s -{ - char *name; - char *base_uri; /* only used in the head nodes */ - xml_element *base_xml; /* only used in the head nodes, to free the xml document */ - xml_element *data; - xps_resource *next; - xps_resource *parent; /* up to the previous dict in the stack */ -}; - -xps_resource * xps_parse_resource_dictionary(xps_document *doc, char *base_uri, xml_element *root); -void xps_free_resource_dictionary(xps_document *doc, xps_resource *dict); -void xps_resolve_resource_reference(xps_document *doc, xps_resource *dict, char **attp, xml_element **tagp, char **urip); - -void xps_debug_resource_dictionary(xps_resource *dict); - -/* - * Fixed page/graphics parsing. - */ - -void xps_run_page(xps_document *doc, xps_page *page, fz_device *dev, fz_matrix ctm, fz_cookie *cookie); - -void xps_parse_fixed_page(xps_document *doc, fz_matrix ctm, xps_page *page); -void xps_parse_canvas(xps_document *doc, fz_matrix ctm, fz_rect area, char *base_uri, xps_resource *dict, xml_element *node); -void xps_parse_path(xps_document *doc, fz_matrix ctm, char *base_uri, xps_resource *dict, xml_element *node); -void xps_parse_glyphs(xps_document *doc, fz_matrix ctm, char *base_uri, xps_resource *dict, xml_element *node); -void xps_parse_solid_color_brush(xps_document *doc, fz_matrix ctm, char *base_uri, xps_resource *dict, xml_element *node); -void xps_parse_image_brush(xps_document *doc, fz_matrix ctm, fz_rect area, char *base_uri, xps_resource *dict, xml_element *node); -void xps_parse_visual_brush(xps_document *doc, fz_matrix ctm, fz_rect area, char *base_uri, xps_resource *dict, xml_element *node); -void xps_parse_linear_gradient_brush(xps_document *doc, fz_matrix ctm, fz_rect area, char *base_uri, xps_resource *dict, xml_element *node); -void xps_parse_radial_gradient_brush(xps_document *doc, fz_matrix ctm, fz_rect area, char *base_uri, xps_resource *dict, xml_element *node); - -void xps_parse_tiling_brush(xps_document *doc, fz_matrix ctm, fz_rect area, char *base_uri, xps_resource *dict, xml_element *root, void(*func)(xps_document*, fz_matrix, fz_rect, char*, xps_resource*, xml_element*, void*), void *user); - -void xps_parse_matrix_transform(xps_document *doc, xml_element *root, fz_matrix *matrix); -void xps_parse_render_transform(xps_document *doc, char *text, fz_matrix *matrix); -void xps_parse_rectangle(xps_document *doc, char *text, fz_rect *rect); - -void xps_begin_opacity(xps_document *doc, fz_matrix ctm, fz_rect area, char *base_uri, xps_resource *dict, char *opacity_att, xml_element *opacity_mask_tag); -void xps_end_opacity(xps_document *doc, char *base_uri, xps_resource *dict, char *opacity_att, xml_element *opacity_mask_tag); - -void xps_parse_brush(xps_document *doc, fz_matrix ctm, fz_rect area, char *base_uri, xps_resource *dict, xml_element *node); -void xps_parse_element(xps_document *doc, fz_matrix ctm, fz_rect area, char *base_uri, xps_resource *dict, xml_element *node); - -void xps_clip(xps_document *doc, fz_matrix ctm, xps_resource *dict, char *clip_att, xml_element *clip_tag); - -/* - * The interpreter context. - */ - -typedef struct xps_entry_s xps_entry; - -struct xps_entry_s -{ - char *name; - int offset; - int csize; - int usize; -}; - -struct xps_document_s -{ - fz_document super; - - fz_context *ctx; - char *directory; - fz_stream *file; - int zip_count; - xps_entry *zip_table; - - char *start_part; /* fixed document sequence */ - xps_fixdoc *first_fixdoc; /* first fixed document */ - xps_fixdoc *last_fixdoc; /* last fixed document */ - xps_page *first_page; /* first page of document */ - xps_page *last_page; /* last page of document */ - int page_count; - - xps_target *target; /* link targets */ - - char *base_uri; /* base uri for parsing XML and resolving relative paths */ - char *part_uri; /* part uri for parsing metadata relations */ - - /* We cache font resources */ - xps_font_cache *font_table; - - /* Opacity attribute stack */ - float opacity[64]; - int opacity_top; - - /* Current color */ - fz_colorspace *colorspace; - float color[8]; - float alpha; - - /* Current device */ - fz_cookie *cookie; - fz_device *dev; - - /* Current page we are loading */ - xps_page *current_page; -}; - -/* xps_open_document: Open a document. Open a document for reading so the library is able to locate @@ -290,10 +56,13 @@ xps_document *xps_open_document_with_stream(fz_stream *file); */ void xps_close_document(xps_document *doc); -/* - * Parsing helper functions - */ -char *xps_get_real_params(char *s, int num, float *x); -char *xps_get_point(char *s_in, float *x, float *y); +int xps_count_pages(xps_document *doc); +xps_page *xps_load_page(xps_document *doc, int number); +fz_rect xps_bound_page(xps_document *doc, xps_page *page); +void xps_run_page(xps_document *doc, xps_page *page, fz_device *dev, fz_matrix ctm, fz_cookie *cookie); +fz_link *xps_load_links(xps_document *doc, xps_page *page); +void xps_free_page(xps_document *doc, xps_page *page); + +fz_outline *xps_load_outline(xps_document *doc); #endif diff --git a/xps/xps_common.c b/xps/xps_common.c index c8464459..4829ef9c 100644 --- a/xps/xps_common.c +++ b/xps/xps_common.c @@ -1,5 +1,4 @@ -#include "fitz-internal.h" -#include "muxps.h" +#include "muxps-internal.h" static inline int unhex(int a) { diff --git a/xps/xps_doc.c b/xps/xps_doc.c index 5515b47a..9988691f 100644 --- a/xps/xps_doc.c +++ b/xps/xps_doc.c @@ -1,5 +1,4 @@ -#include "fitz-internal.h" -#include "muxps.h" +#include "muxps-internal.h" static void xps_rels_for_part(char *buf, char *name, int buflen) diff --git a/xps/xps_glyphs.c b/xps/xps_glyphs.c index 6cdf420b..94baa918 100644 --- a/xps/xps_glyphs.c +++ b/xps/xps_glyphs.c @@ -1,5 +1,4 @@ -#include "fitz-internal.h" -#include "muxps.h" +#include "muxps-internal.h" #include <ft2build.h> #include FT_FREETYPE_H diff --git a/xps/xps_gradient.c b/xps/xps_gradient.c index 580a9cb6..fe88b295 100644 --- a/xps/xps_gradient.c +++ b/xps/xps_gradient.c @@ -1,5 +1,4 @@ -#include "fitz-internal.h" -#include "muxps.h" +#include "muxps-internal.h" #define MAX_STOPS 256 @@ -318,9 +317,9 @@ xps_draw_radial_gradient(xps_document *doc, fz_matrix ctm, yrad = 1.0; if (origin_att) - xps_get_point(origin_att, &x0, &y0); + xps_parse_point(origin_att, &x0, &y0); if (center_att) - xps_get_point(center_att, &x1, &y1); + xps_parse_point(center_att, &x1, &y1); if (radius_x_att) xrad = fz_atof(radius_x_att); if (radius_y_att) @@ -362,9 +361,9 @@ xps_draw_linear_gradient(xps_document *doc, fz_matrix ctm, x1 = y1 = 1; if (start_point_att) - xps_get_point(start_point_att, &x0, &y0); + xps_parse_point(start_point_att, &x0, &y0); if (end_point_att) - xps_get_point(end_point_att, &x1, &y1); + xps_parse_point(end_point_att, &x1, &y1); xps_draw_one_linear_gradient(doc, ctm, stops, count, 1, x0, y0, x1, y1); } diff --git a/xps/xps_image.c b/xps/xps_image.c index 665b6d11..1f46a756 100644 --- a/xps/xps_image.c +++ b/xps/xps_image.c @@ -1,5 +1,4 @@ -#include "fitz-internal.h" -#include "muxps.h" +#include "muxps-internal.h" typedef struct xps_image_s xps_image; diff --git a/xps/xps_outline.c b/xps/xps_outline.c index 577cdb6b..60e2f779 100644 --- a/xps/xps_outline.c +++ b/xps/xps_outline.c @@ -1,5 +1,4 @@ -#include "fitz-internal.h" -#include "muxps.h" +#include "muxps-internal.h" /* * Parse the document structure / outline parts referenced from fixdoc relationships. diff --git a/xps/xps_path.c b/xps/xps_path.c index b3dda187..337f144d 100644 --- a/xps/xps_path.c +++ b/xps/xps_path.c @@ -1,8 +1,7 @@ -#include "fitz-internal.h" -#include "muxps.h" +#include "muxps-internal.h" -char * -xps_get_real_params(char *s, int num, float *x) +static char * +xps_parse_float_array(char *s, int num, float *x) { int k = 0; @@ -25,12 +24,12 @@ xps_get_real_params(char *s, int num, float *x) } char * -xps_get_point(char *s_in, float *x, float *y) +xps_parse_point(char *s_in, float *x, float *y) { char *s_out = s_in; float xy[2]; - s_out = xps_get_real_params(s_out, 2, &xy[0]); + s_out = xps_parse_float_array(s_out, 2, &xy[0]); *x = xy[0]; *y = xy[1]; return s_out; @@ -516,8 +515,8 @@ xps_parse_arc_segment(fz_context *doc, fz_path *path, xml_element *root, int str if (!is_stroked) *skipped_stroke = 1; - xps_get_point(point_att, &point_x, &point_y); - xps_get_point(size_att, &size_x, &size_y); + xps_parse_point(point_att, &point_x, &point_y); + xps_parse_point(size_att, &size_x, &size_y); rotation_angle = fz_atof(rotation_angle_att); is_large_arc = !strcmp(is_large_arc_att, "true"); is_clockwise = !strcmp(sweep_direction_att, "Clockwise"); @@ -559,7 +558,7 @@ xps_parse_poly_quadratic_bezier_segment(fz_context *doc, fz_path *path, xml_elem while (*s != 0) { while (*s == ' ') s++; - s = xps_get_point(s, &x[n], &y[n]); + s = xps_parse_point(s, &x[n], &y[n]); n ++; if (n == 2) { @@ -607,7 +606,7 @@ xps_parse_poly_bezier_segment(fz_context *doc, fz_path *path, xml_element *root, while (*s != 0) { while (*s == ' ') s++; - s = xps_get_point(s, &x[n], &y[n]); + s = xps_parse_point(s, &x[n], &y[n]); n ++; if (n == 3) { @@ -645,7 +644,7 @@ xps_parse_poly_line_segment(fz_context *doc, fz_path *path, xml_element *root, i while (*s != 0) { while (*s == ' ') s++; - s = xps_get_point(s, &x, &y); + s = xps_parse_point(s, &x, &y); if (stroking && !is_stroked) fz_moveto(doc, path, x, y); else @@ -678,7 +677,7 @@ xps_parse_path_figure(fz_context *doc, fz_path *path, xml_element *root, int str if (is_filled_att) is_filled = !strcmp(is_filled_att, "true"); if (start_point_att) - xps_get_point(start_point_att, &start_x, &start_y); + xps_parse_point(start_point_att, &start_x, &start_y); if (!stroking && !is_filled) /* not filled, when filling */ return; diff --git a/xps/xps_resource.c b/xps/xps_resource.c index c65893a1..099f378d 100644 --- a/xps/xps_resource.c +++ b/xps/xps_resource.c @@ -1,5 +1,4 @@ -#include "fitz-internal.h" -#include "muxps.h" +#include "muxps-internal.h" static xml_element * xps_find_resource(xps_document *doc, xps_resource *dict, char *name, char **urip) diff --git a/xps/xps_tile.c b/xps/xps_tile.c index 93783ee1..5ec0463f 100644 --- a/xps/xps_tile.c +++ b/xps/xps_tile.c @@ -1,5 +1,4 @@ -#include "fitz-internal.h" -#include "muxps.h" +#include "muxps-internal.h" #define TILE diff --git a/xps/xps_util.c b/xps/xps_util.c index aed6c19f..cb84ba71 100644 --- a/xps/xps_util.c +++ b/xps/xps_util.c @@ -1,5 +1,4 @@ -#include "fitz-internal.h" -#include "muxps.h" +#include "muxps-internal.h" static inline int xps_tolower(int c) { diff --git a/xps/xps_xml.c b/xps/xps_xml.c index aee1568e..e2e958c8 100644 --- a/xps/xps_xml.c +++ b/xps/xps_xml.c @@ -1,5 +1,4 @@ -#include "fitz-internal.h" -#include "muxps.h" +#include "muxps-internal.h" struct attribute { diff --git a/xps/xps_zip.c b/xps/xps_zip.c index a2182d5c..be7ae221 100644 --- a/xps/xps_zip.c +++ b/xps/xps_zip.c @@ -1,5 +1,4 @@ -#include "fitz-internal.h" -#include "muxps.h" +#include "muxps-internal.h" #include <zlib.h> |