summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorTor Andersson <tor@ghostscript.com>2004-11-05 07:57:47 +0100
committerTor Andersson <tor@ghostscript.com>2004-11-05 07:57:47 +0100
commit24ee8c1e74d613b1ec394c7380b39349f07d47d6 (patch)
tree07c964441d983c713c05090021ce6da1e1c132fe /include
parentcbbee31601e34f1f513a4d046d52963baebf07fa (diff)
downloadmupdf-24ee8c1e74d613b1ec394c7380b39349f07d47d6.tar.xz
tiling patterns
Diffstat (limited to 'include')
-rw-r--r--include/fitz/geometry.h1
-rw-r--r--include/mupdf/content.h8
-rw-r--r--include/mupdf/rsrc.h19
-rw-r--r--include/mupdf/xref.h1
4 files changed, 24 insertions, 5 deletions
diff --git a/include/fitz/geometry.h b/include/fitz/geometry.h
index 29a6b522..78e9e637 100644
--- a/include/fitz/geometry.h
+++ b/include/fitz/geometry.h
@@ -53,4 +53,5 @@ fz_irect fz_intersectirects(fz_irect a, fz_irect b);
fz_irect fz_mergeirects(fz_irect a, fz_irect b);
fz_point fz_transformpoint(fz_matrix m, fz_point p);
+fz_rect fz_transformaabb(fz_matrix m, fz_rect r);
diff --git a/include/mupdf/content.h b/include/mupdf/content.h
index 96b31f8e..6dae61da 100644
--- a/include/mupdf/content.h
+++ b/include/mupdf/content.h
@@ -18,8 +18,7 @@ enum
PDF_MCOLOR,
PDF_MLAB,
PDF_MINDEXED,
- PDF_MTILE,
- PDF_MSHADE
+ PDF_MPATTERN
};
struct pdf_material_s
@@ -28,9 +27,7 @@ struct pdf_material_s
fz_colorspace *cs;
float v[32];
pdf_indexed *indexed;
- // lookup
- // tile
- // shade
+ pdf_pattern *pattern;
};
struct pdf_gstate_s
@@ -86,6 +83,7 @@ struct pdf_csi_s
void pdf_initgstate(pdf_gstate *gs);
fz_error *pdf_setcolorspace(pdf_csi *csi, int what, fz_colorspace *cs);
fz_error *pdf_setcolor(pdf_csi *csi, int what, float *v);
+fz_error *pdf_setpattern(pdf_csi *csi, int what, pdf_pattern *pat, float *v);
fz_error *pdf_buildstrokepath(pdf_gstate *gs, fz_pathnode *path);
fz_error *pdf_buildfillpath(pdf_gstate *gs, fz_pathnode *path, int evenodd);
diff --git a/include/mupdf/rsrc.h b/include/mupdf/rsrc.h
index 896e4335..5c9c73be 100644
--- a/include/mupdf/rsrc.h
+++ b/include/mupdf/rsrc.h
@@ -44,6 +44,25 @@ extern fz_colorspace *pdf_devicecmyk;
fz_error *pdf_loadcolorspace(fz_colorspace **csp, pdf_xref *xref, fz_obj *obj);
/*
+ * Pattern
+ */
+
+typedef struct pdf_pattern_s pdf_pattern;
+
+struct pdf_pattern_s
+{
+ int ismask;
+ float xstep;
+ float ystep;
+ fz_matrix matrix;
+ fz_rect bbox;
+ fz_tree *tree;
+};
+
+fz_error *pdf_loadpattern(pdf_pattern **patp, pdf_xref *xref, fz_obj *obj, fz_obj *ref);
+void pdf_droppattern(pdf_pattern *pat);
+
+/*
* XObject
*/
diff --git a/include/mupdf/xref.h b/include/mupdf/xref.h
index ac01ca9d..2ccd3710 100644
--- a/include/mupdf/xref.h
+++ b/include/mupdf/xref.h
@@ -23,6 +23,7 @@ struct pdf_xref_s
pdf_rsrc *rfont;
pdf_rsrc *rimage;
pdf_rsrc *rxobject;
+ pdf_rsrc *rpattern;
pdf_rsrc *rcolorspace;
};