summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-03-23Update halftoning to use shorter line buffer.Robin Watts
Use the LCM of the different tile widths rather than a complete line copy. This should play better with caches on devices like the pi.
2016-03-23ARM code do_threshold_1Robin Watts
No clever SIMD tricks.
2016-03-22Optimise the C for do_threshold_1.Robin Watts
Simple unrolling.
2016-03-22Remove dead code.Robin Watts
2016-03-22Tweak paint-glyph.hRobin Watts
Try to limit aliasing issues.
2016-03-22Add Google Perf Tools build.Robin Watts
"make build=gperf" will now build and link the google perf tools library into mutool. When mutool is then run, a mutool.prof file is dropped into the current directory that can be analysed.
2016-03-21Bug 696668: Update the downscaling logic.Robin Watts
An l2factor of 3 is equivalent to downscaling by a factor of 8. We can get an l2factor of 3 downscale out of the jpeglib. We can reasonably downscale by a further l2factor of 3 manually. Any more than that and we start to completely drop pixels without them having any effect. Therefore it's pointless us keeping any tiles around with l2factors > 6. Fix the bug (which was that we were using < instead of <=) and update the value to a more reasonable one anyway.
2016-03-21Tweak NULL output code.Robin Watts
In the quest for better mutool draw timings, make fz_outputs going to /dev/null be represented by a NULL pointer. Spot this in the output routines and just exit.
2016-03-21Mudraw: Avoid reopening output files.Robin Watts
It makes a strangely large difference in timings if we close and reopen the output file for every page. Only close and reopen the output file for each page if we really need to.
2016-03-21Add .ps output to mutool draw.Robin Watts
Simple PS wrapped images with flate compression.
2016-03-21Update freetype to version 2.6.3.Tor Andersson
2016-03-21jni: Use system freetype and zlib.Tor Andersson
AWT pulls in the system freetype library, which in turn pulls in system zlib. Avoid symbol collisions and possible header/library conflicts by using the system libraries for desktop java builds.
2016-03-21Allow building with old versions of freetype.Tor Andersson
Debian stable still ships with freetype 2.5.2. We normally wouldn't care, but desktop java builds need to use the system freetype library as that's what AWT links against.
2016-03-21Fix uninitialized value errors.Tor Andersson
2016-03-21Add thirdparty sources to 'tags' file.Tor Andersson
2016-03-21Fix 696661: Missing annotations.Tor Andersson
Add an explicit 'page setup' matrix to pdf-write device, which is only used when creating top level page content stream and not the child annotation content streams.
2016-03-21Fix compiler warnings in murun.c and pdf-js.c by tagging rethrow as noreturn.Tor Andersson
2016-03-21Fix error handling in fz_save_pixmap_as_pam.Tor Andersson
2016-03-18Add 1bpp cmyk output to mutool draw.Robin Watts
A request for a .pkm file will produce the same as a pamcmyk4 does on ghostscript. Ghostscripts pkmraw device does a 1bpp cmyk and then converts to rgb as writing to ppm, but that seems silly.
2016-03-16mutool draw: Add banded mode output for pbm files.Robin Watts
2016-03-16Avoid unused var warnings in Memento ref counting code.Robin Watts
2016-03-16glyph plotter; Use repeated inclusion of headerRobin Watts
To avoid having to duplicate a fairly large block of code several times, use repeated inclusion of a header with some macros to generate optimised glyph plotters.
2016-03-16Add optimised CMYK plotters.Robin Watts
We have optimised plotters for 2 and 4 components (i.e. greyscale and rgb). Add equivalent ones for CMYK.
2016-03-16Spot when we are fz_outputting to /dev/null or nul:Robin Watts
2016-03-16Speed pam writing.Robin Watts
2016-03-16Bug 696648: Send -sm output to stderr.Robin Watts
Thanks to Marcos for spotting the missing case.
2016-03-16Minimize number of extra braces in the try/catch macros.Tor Andersson
2016-03-15Tweak fz_try/catch to fix overflow case.Robin Watts
In the current code, when we hit the fz_try(), we check to see if we are about to overflow the exception stack. If we are, we throw. This does NOT throw to the fz_catch following the try, but rather to the enclosing fz_always/fz_catch blocks. This can cause leaks, as it's very hard to code correctly. It would be a far nicer behaviour to have a failure in fz_try() cause us to throw to the immediately following fz_always/fz_catch. This commit achieves that.
2016-03-15Avoid shadowing 'stm' variable.Robin Watts
This leads to a leak.
2016-03-15Memento: Track fz_streams.Robin Watts
2016-03-15Memento: Fix specification of -ldl in memento builds.Robin Watts
Use LIBS, not LDFLAGS to ensure that the lib appears at the end of the link line.
2016-03-15Memento: Avoid warnings building without HAVE_LIBDLRobin Watts
2016-03-15Fix leak in PDF device.Robin Watts
2016-03-15Make PDF objects ref changes memento-trackable.Robin Watts
2016-03-15Memento: Rename memento 'globals' to 'memento'.Robin Watts
Neatness.
2016-03-15Make all ref changes on storable items Memento trackable.Robin Watts
2016-03-15Memento: Add Memento_{takeRef,dropRef,reference} functions.Robin Watts
These work with MEMENTO_DETAILS to allow us to store the events where reference counts change.
2016-03-15Fix leak in PDF inline image handling.Robin Watts
2016-03-15mudraw: Fix leak of fz_output in stdout case.Robin Watts
2016-03-15Fix mode2compress for PCL.Robin Watts
Previously this would overrun buffers in the pathological case (ABBABBABB...). We now only break from literals to runs for a run of at least 3 (except at the start).
2016-03-15Fix leak/missing error cleanup in halftoning code.Robin Watts
Ensure we free buffers if we fail to malloc, and that we drop the temporary buffer at the end of halftoning a pixmap.
2016-03-15Mutool draw: Simplify output handling code.Robin Watts
At the moment we have the output file being opened in several different places, leading to several different places having to cope with the '-' handling. Simplify the code so that files are only opened in 1 place.
2016-03-14Remove begin_page and end_page device calls.Tor Andersson
To be moved into a new document writer interface later.
2016-03-14Make pdf_is_stream work on loaded stream dictionary objects as well.Tor Andersson
2016-03-14Fix 696507: Clamp correct values in fz_invert_pixmap_rect.Tor Andersson
The loop is exclusive, but the clamp check was as if it were inclusive.
2016-03-14html: Use pair break table from UAX #14 to add soft breaks.Tor Andersson
Note: does not handle the case where certain classes of characters prohibit breaking at spaces between them.
2016-03-14ucdn: Add support for UAX#14 linebreaking classes.Sebastian Rasmussen
2016-03-14xml: Fix linebreak before closing tag test.Tor Andersson
2016-03-14Build java on 32-bit linux.Tor Andersson
2016-03-14Add C++ extern "C" guards in public header files.Tor Andersson