diff options
author | Paul Gardiner <paulg.artifex@glidos.net> | 2012-10-29 11:22:29 +0000 |
---|---|---|
committer | Paul Gardiner <paulg.artifex@glidos.net> | 2012-10-29 11:28:03 +0000 |
commit | c16cadec123f6150cee4008aa4836fbb8ffb0db6 (patch) | |
tree | ac0bb7787e37045e69ed7ad64e1a0e9d95e311e4 /pdf/pdf_xobject.c | |
parent | 246d59d7c4a41bda9ef28ca38eba3be5f67726cc (diff) | |
download | mupdf-c16cadec123f6150cee4008aa4836fbb8ffb0db6.tar.xz |
Add fz_update_page
Regenerate dirty appearance streams and report changed annotations since
last call.
Also include a partial revert of changes in 96f335bc, that turn out not
to be necessary.
fz_update_page must now be called between each document-changing event and
the next render. pdfapp.c and the android app have been updated to do so,
but do not yet take advantage of the possibility to render only the updated
areas of the screen.
Diffstat (limited to 'pdf/pdf_xobject.c')
-rw-r--r-- | pdf/pdf_xobject.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/pdf/pdf_xobject.c b/pdf/pdf_xobject.c index 19de0363..4d7243b6 100644 --- a/pdf/pdf_xobject.c +++ b/pdf/pdf_xobject.c @@ -52,6 +52,7 @@ pdf_load_xobject(pdf_document *xref, pdf_obj *dict) form->contents = NULL; form->colorspace = NULL; form->me = NULL; + form->iteration = 0; /* Store item immediately, to avoid possible recursion if objects refer back to this one */ pdf_store_item(ctx, dict, form, pdf_xobject_size(form)); @@ -182,6 +183,7 @@ pdf_new_xobject(pdf_document *xref, fz_rect *bbox, fz_matrix *mat) form->contents = NULL; form->colorspace = NULL; form->me = NULL; + form->iteration = 0; form->bbox = *bbox; @@ -235,6 +237,7 @@ void pdf_update_xobject_contents(pdf_document *xref, pdf_xobject *form, fz_buffe pdf_dict_dels(form->contents, "Filter"); pdf_dict_puts(form->contents, "Length", len); pdf_update_stream(xref, pdf_to_num(form->contents), buffer); + form->iteration ++; } fz_always(ctx) { |