summaryrefslogtreecommitdiff
path: root/source/fitz/load-tiff.c
AgeCommit message (Collapse)Author
2017-07-17Don't convert cmyka images to rgbaMichael Vrhel
We should handle the cmyka images in their native form now that we are holding the data inverted. Fixes fts_17_1700.pdf Also fixes fts_43xx.xps
2017-06-27tiff: Decoders drop encoded stream on their own.Sebastian Rasmussen
As a part of this, if the compression method is unknown drop the encoded stream before rethrowing the exception.
2017-06-11Ensure TIFF images have the correct colorspace.Robin Watts
CMYK+Alpha get resolved to RGB+Alpha as part of loading.
2017-06-02tiff: Avoid dropping wild pointer in case of error.Sebastian Rasmussen
2017-06-01tiff: Check for degenerate YCbCr subsampling factors.Sebastian Rasmussen
2017-05-31Avoid double literals causing casts to float.Sebastian Rasmussen
2017-05-08tiff: Fix bug where both tiff and fax decoders inverted the image.Sebastian Rasmussen
2017-05-02tiff: Fix typo in validation of tiles images.Sebastian Rasmussen
2017-05-02tiff: Scale Lab components to suit colorspace.Sebastian Rasmussen
TIFF already provides the a/b components prescaled. Previously the colorspace color conversion process scaled them again, causing out of range behaviour.
2017-04-30tiff: Set k>0 for CCITT fax group 3 1D/2D compression.Sebastian Rasmussen
Previously, if a TIFF file was encoded using CCITT fax group 3 compression and mixing 1D and 2D codes, the fax decoder was not instructed to parse the 1D/2D indication bit after EOL. This caused later issues when parsing the succeeding 1D/2D code, e.g. resulting in the decoder encountering a negative 1D code and returning with an error. Setting k>0 means the 1D/2D indication bit is parsed. The CCITT fax group 3 specification recommends setting k based on the vertical resolution. MuPDF's fax decoder depends only on if k is <0, 0 or >0, not its value (as recommended by the PDF specification). Therefore it is not necessary to use the vertical resolution to determine a particular value for k.
2017-04-27Include required system headers.Tor Andersson
2016-12-27Common code to ensure we only premultiply pixmaps with additive colors.Tor Andersson
2016-12-14Let pixmap colorspace conversion create new pixmap.Sebastian Rasmussen
This moves dropping the converted pixmap into fz_convert_pixmap(), which relieves every caller from doing so. Moreover resolution, position and interpolation are kept.
2016-12-14Plug pixmap leak when fz_convert_pixmap() throws.Sebastian Rasmussen
2016-11-03Fix signed/unsigned and size_t/int/fz_off_t warnings.Robin Watts
All seen in MSVC, mostly in 64bit builds.
2016-11-02Don't check for NULL before calls to fz_free.Sebastian Rasmussen
2016-11-01tiff: Plug leak where superflous pixmaps was created.Sebastian Rasmussen
2016-10-26tiff: Drop pixmap when exception is thrown.Sebastian Rasmussen
Also don't check for NULL unnecessarily.
2016-10-26tiff: Always set colorspace when reading image info.Sebastian Rasmussen
Commit 3059b6908208fbb9547e6876332a5b42a6406d1a accidentally caused colorspace to not be set when reading image information.
2016-10-18tiff: Support stripped YCbCr images.Sebastian Rasmussen
2016-10-18tiff: Cosmetic cleanup of code.Sebastian Rasmussen
In preparation for YCbCr support, rename some functions and make variable names more generic. Also remove fz_ prefix from static functions.
2016-10-16tiff: Plug pixmap leak should conversion fail.Sebastian Rasmussen
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 697163: gif: Fix integer overflow in image dimensions.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
2016-09-18tiff: Do not assume that images always have alpha component.Sebastian Rasmussen
2016-07-06Add optional support for JPEG-XR.Sebastian Rasmussen
2016-06-17Use 'size_t' instead of int as appropriate.Robin Watts
This silences the many warnings we get when building for x64 in windows. This does not address any of the warnings we get in thirdparty libraries - in particular harfbuzz. These look (at a quick glance) harmless though.
2016-06-15tiff: Add omitted static void return type.Sebastian Rasmussen
Commit 44d65838233baef2c16397847dca3061cde7ec4e accidentally omitted the return type when adding TIFF SGI LUV decoding.
2016-06-14Add TIFF SGI LUV decoding.Robin Watts
2016-06-14Update TIFF LZW decode.Robin Watts
TIFF 5.0 uses a slightly laxer set of rules for TIFF decode. Specifically, when we hit the maximum code, we are not required to send a clear code immediately, but it can overrrun. We don't bother storing codes > 12 bits, because they can never be used. This avoids the need to extend the table.
2016-05-24fz_pixmap revamp: add stride and make alpha optionalRobin Watts
fz_pixmaps now have an explicit stride value. By default no change from before, but code all copes with extra gaps at the end of the line. The alpha data in fz_pixmaps is no longer compulsory. mudraw: use rgb not rgba (ppmraw), cmyk not cmyka (pkmraw). Update halftone code to not expect alpha plane. Update PNG writing to cope with alpha less input. Also hide repeated params within the png output context. ARM code needs updating.
2016-04-27Remove useless try/catch/rethrows.Tor Andersson
2016-04-27Fix 696649: remove fz_rethrow_message calls.Tor Andersson
2015-07-29Support reading LZW codes in reverse order from each byte.Sebastian Rasmussen