summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-05-29Tweak plotter code slightly for speed.Robin Watts
Use do {} while(--w) rather than while(w--) {} as this safes a test each time around the loop.
2016-05-29Improve speed of fz_paint_solid_color and friends.Robin Watts
2016-05-29Split draw-paint.c plotters out into separate functions.Robin Watts
Again, mainly so profiling works nicely.
2016-05-27Improve speed of fz_paint_affine_N_near and friends.Robin Watts
For the common cases, avoid the loop.
2016-05-27Rejig draw-affine.c for improved profiling.Robin Watts
Profilers can't identify which of the switch arms we are in for the inlined function calls, so rejig the code so that each of these is a separate function. In theory this code should be faster too, as the function 'lookup' is only done one rather than once per line, but I don't expect this to make a huge difference.
2016-05-27Add facility to track usage of functions.Robin Watts
Use this for plotters so we can see which ones are being used in any given build. Build with -DTRACK_USAGE to enable.
2016-05-27Mudraw: Move halftoning into render threads.Robin Watts
2016-05-27Fix ARM code for bitmap scalingRobin Watts
2016-05-26Bug 696803: Fix pam output.Robin Watts
PAM output was broken in the absence of alpha. Fixed now.
2016-05-26Optimisations in draw-affine for 0 alpha pixels.Robin Watts
2016-05-26Cope better when asked to plot alpha only pixmaps.Robin Watts
Converting a pixmap to an alpha only pixmap means "just keep the alpha". If there IS no alpha, then a solid alpha is assumed.
2016-05-26Avoid unnecessary alphas when decompressing images from streams.Robin Watts
2016-05-26Ensure fz_invert_pixmap can cope with no alpha.Robin Watts
2016-05-26Update bitmap scaler to cope with lack of alpha.Robin Watts
If we have alpha on the input, we preserve it. If we have no alpha on the input, we have to create it in the output if the edges aren't pixel aligned.
2016-05-25iOS: Update after pixmap alpha made optionalJoseph Heenan
2016-05-24Skip alphas for "loaded" JPXs (where possible).Robin Watts
2016-05-24Fix fz_decode_tile in the absence of alpha.Robin Watts
When no alpha present, we were omitting to decode the last component.
2016-05-24Fix plotters; alpha being dropped.Robin Watts
In the absence of the source image having an alpha plane, we were dropping the constant alpha during linear interpolated plotting.
2016-05-24Fix optimisation in fz_paint_affine_N_nearRobin Watts
Only do int to int copying if we have an int to copy from. Also, when copying int to int, copy int32_t to int32_t to make us more future proof.
2016-05-24Skip alphas for "loaded" JPEGs.Robin Watts
2016-05-24Fix 696796: clamp color values in PDF to valid range.Tor Andersson
2016-05-24Fix issues uncovered by coverity.Tor Andersson
2016-05-24Sprinkle some consts and restricts in plotters.Robin Watts
Try and help C avoid pointer aliasing issues. Some of this may not help at all. None of it should hurt though.
2016-05-24Silence "Variable might be used uninitialised" warning.Robin Watts
2016-05-24Fix ARM code in light of plotter changes.Robin Watts
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-05-24Fix -p password option for MuPDF on Windows.Robin Watts
2016-05-23Bug 696795: Proper fix.Robin Watts
When affine plotting with linear interpolation, we need to perform different calculations for the texture and for the edge of the shape. The edge of the shape needs to be calculated in exactly the same way as for non-linear interpolated shapes. The 'texture' position needs to be offset by 1/2 a texture unit in each direction so that the 'pure' color is given in the middle of the texture cells image, not in the top left corner. To achieve these aims, we actually offset the u/v positions by 1/2 (32768, given the fixed point we are using) and adjust for this in the boundary tests. I have a test file that shows this working, which I will attach to the bug, and add to the regression suite.
2016-05-20murun: Add Buffer#writeBuffer to allow for concatenating buffers.Tor Andersson
2016-05-20murun: Add graftObject to javascript bindings.Tor Andersson
Add some paranoid checks to pdf_graft_object to prevent user errors from crashing mupdf.
2016-05-20html: Add SVG image support.Tor Andersson
2016-05-20Add images based on display lists.Tor Andersson
2016-05-20Fix typo.Robin Watts
2016-05-20Remove voodoo from draw-affine.Robin Watts
We had some code in draw-affine that we didn't really understand. Change this for some code that seems more plausible. The voodoo code was showing up problems with the plotter rework (don't really know why), but the non-voodoo code seems happier.
2016-05-16Fit another mistake in cmyk plotters.Robin Watts
2016-05-13Fix error in CMYK plotters.Robin Watts
2016-05-13Fix potential double free in pdfmerge.Tor Andersson
Remove unnecessary extra indirect object; pdf_add_object returns an indirect reference already, so we don't need to duplicate it.
2016-05-13Add common page range parsing function for tools.Tor Andersson
2016-05-13murun: Add document writer object.Tor Andersson
2016-05-13Reference count fz_device.Tor Andersson
Language bindings sometimes require objects to be reference counted.
2016-05-13Fix double free and memory leak.Tor Andersson
2016-05-13Add pdf write support to mutool convert.Tor Andersson
2016-05-13Add long output option parsing.Tor Andersson
Use comma-separated list of flags and key/value pairs, for example: "linearize,resolution=72,colorspace=gray"
2016-05-13Update script that generates browsable hyperlinked html source.Tor Andersson
2016-05-13Update MuJS.Tor Andersson
2016-05-13Remove fz_lookup_device_colorspace().Sebastian Rasmussen
It is not used by mupdf itself and was added in commit 9915a386ea1dab21c5bbd4a0c8012dd13dbda301 to make it easier for sumatrapdf, but sumatrapdf has stopped using the interface.
2016-05-13Make document handler reference counting thread-safe.Sebastian Rasmussen
2016-05-13Introduce a general output context.Sebastian Rasmussen
This makes it possible to redirect standard out and standard error output streams to output streams of your liking. This means that now you can, in gdb, type: (gdb) call pdf_print_obj(ctx, fz_stdout(ctx), obj, 0) (gdb) call fflush(0) or when dealing with an unresolved indirect reference: (gdb) call pdf_print_obj(ctx, fz_stdout(ctx), pdf_resolve_indirect(ctx, ref), 0) (gdb) call fflush(0)
2016-05-13Makefile: list all source dependencies for cmapdump.Sebastian Rasmussen
2016-05-13Move string compare helper to other string functions.Sebastian Rasmussen