summaryrefslogtreecommitdiff
path: root/source/fitz
AgeCommit message (Collapse)Author
2016-10-12Regularize band writer interface.Robin Watts
We have various functions that, for different image formats, write a header, then a band, then (sometimes) a trailer. Push them all through a single interface. This change also fixes potential problems caused by the trailer writing being an implicit destructor, which can cause problems in cleanup code if the trailer writing throws an error.
2016-10-11Free document in fz_drop_document(), not in subclassing documents.Sebastian Rasmussen
2016-10-10PDF Images: Add a flag for if we need to apply the decode arrayRobin Watts
This avoids us having to check the entire array each time, and makes the next commit simpler.
2016-10-10Remove unused variable.Robin Watts
2016-10-10Bug 697075: Fix tile repeat calculations.Robin Watts
When calculating how many repeats of tiles are required, we need to allow for the fact that the bbox of the tile can be larger than the repeat step in PDF. The calculation to do this before was incorrectly being done using the scissor bbox, when it should have been the tile bbox.
2016-10-09Open document file in fz_open_document().Sebastian Rasmussen
This relieves all document formats from reimplementing opening a fz_stream unless the format wants to do something more than just opening the raw file.
2016-10-09Fix HAVE_JPEGXR and HAVE_LURATECH code for colorspace changes.Sebastian Rasmussen
2016-10-07Ensure we always layout the document before loading the outlines.Robin Watts
Intended as a fix for bug 697123, but the problem turns out to be something else entirely. Nonetheless, this is worth having.
2016-10-07More SWAR optimisation in plotters.Robin Watts
Slightly revised blending, making use of the fact that we can no longer overflow due to ma + masa <= 0x100.
2016-10-07SWAR optimisation in plotters.Robin Watts
2016-10-07Correct maths error in painters.Robin Watts
As part of the blending calculations, we do: dst = src * mask_alpha + dst * (1-mask_alpha.src_alpha) We calculate mask_alpha as ma, and 1-mask_alpha.src_alpha as masa. In full accuracy, we should never have ma + masa >= 1. Unfortunately, with the formulation used in the painters at the moment, we can. We therefore rejig the calculations slightly.
2016-10-07Optimise painters: Use SWAR to accelerate plotting.Robin Watts
Used for the file from bug 697122. Makes a small improvement overall. (31.3s to 31s for a cutdown file). The equivalent code using 64bit operations is slower.
2016-10-07Tweak painters: If painting 0 alpha, skip it.Robin Watts
2016-10-07Tweak painters.Robin Watts
If we have a source alpha, and it's 0, then nothing to paint.
2016-10-07Fix signed/unsigned warning in filter-thunder.cRobin Watts
2016-10-07Rename fz_process_mesh to fz_process_shade.Robin Watts
Better name as not all shadings are meshes.
2016-10-07Add ctx to fz_font functions.Robin Watts
2016-10-07Fix HAVE_JPEGXR code for colorspace changes.Robin Watts
2016-10-07Update Noto fonts.Tor Andersson
New Devanagari serif font, several other updated fonts.
2016-10-06Squash compiler warning.Robin Watts
font->name can never be NULL as it is an array.
2016-10-06Hide internals of fz_colorspaceRobin Watts
The implementation does not need to be in the public API.
2016-10-05Add a const to a lookup function.Robin Watts
2016-10-05Simplify fz_new_type3_fontRobin Watts
Call fz_calloc rather than fz_malloc_array and then manually clearing.
2016-10-05Uncouple font shaper data from harfbuzz.Robin Watts
The fz_font structure now doesn't know anything about harfbuzz at all, it merely offers an abstract 'fz_shaper_data_t' entry.
2016-10-05Move fz_font definition to be private.Robin Watts
Move the definition of fz_font to be in a private header file rather than in the public API. Add accessors for specific parts of the structure and use them as appropriate. The font flags, and the harfbuzz records remain public. This means that only 3 files now need access to the font implementation (font.c, pdf-font.c and pdf-type3.c). This may be able to be improved further in future.
2016-09-27Fix typo in fz_valgrind_pixmapRobin Watts
Function exists purely for doing valgrind testing of pixmap definedness.
2016-09-28tiff: Do not clobber input buffer if fill order is reversed.Sebastian Rasmussen
2016-09-28tiff: Do error handling for decoders in a single place.Sebastian Rasmussen
2016-09-28tiff: Validate that tag/tile/strip offsets are within bounds.Sebastian Rasmussen
2016-09-28Bug 697166: tiff: Avoid freeing offset/bytecount arrays twice.Sebastian Rasmussen
2016-09-28Bug 697165: tiff: Do not allow duplicate array tags.Sebastian Rasmussen
Previously this caused a memory leak.
2016-09-28Bug 697155: tiff: Drop stream if compression is unknown.Sebastian Rasmussen
m5-299787ea764c0a88bc481364eded5556.tif
2016-09-28Bug 697157: tiff: Rational tag denominators may not be zero.Sebastian Rasmussen
2016-09-28Bug 697156: tiff: Free tile arrays after use.Sebastian Rasmussen
2016-09-28Bug 697154: tiff: Detect error when decoding strip/tile data.Sebastian Rasmussen
2016-09-27Bug 697153: tiff: Image dimensions must always be bigger than 0.Sebastian Rasmussen
2016-09-27Bug 697152: jpeg: Use correct macro to get client data.Sebastian Rasmussen
In commit 6a8abce9603f69b57e407f0df4044be919f507d7 an agnostic memory handler was introduced for libjpeg. While this commit changed error_exit_dct() it forgot to make a similar change in error_exit().
2016-09-27Bug 697163: gif: Fix integer overflow in image dimensions.Sebastian Rasmussen
2016-09-27Bug 697162: gif: Color index must be inside color table.Sebastian Rasmussen
2016-09-27Bug 697161: gif: Frames may not be bigger than the image.Sebastian Rasmussen
2016-09-27Bug 697160: gif: Transparency index must be inside color table.Sebastian Rasmussen
2016-09-26Update OpenJPEG to the latest (git) version.Robin Watts
Part of the change in this code is to require opj_malloc and co. Sadly, opj_malloc and co do not take a context field, so a we need to wrap calls to openjpeg with a lock. I am reusing the freetype lock here for simplicity.
2016-09-27tiff: Fix typo in thunder decoder.Sebastian Rasmussen
2016-09-26tiff: Support tiled images.Sebastian Rasmussen
2016-09-26tiff: Estimate uncompressed strip sizes if missing.Sebastian Rasmussen
2016-09-26tiff: Reorganize code, preparing for tiled image support.Sebastian Rasmussen
2016-09-26tiff: Add support for thunder decoding.Sebastian Rasmussen
2016-09-26tiff: Support flate compression under differnent name.Sebastian Rasmussen
2016-09-26tiff: Support images with 2 and 16 bits per palette color.Sebastian Rasmussen
2016-09-26tiff: Support images using Lab colorspace.Sebastian Rasmussen