summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-03-22Simplify string formatter API.Tor Andersson
Emit characters with callbacks so we don't need to do two passes using vsnprintf to count, format, and copy the result.
2017-03-22Always use %g for short-as-possible format character.Tor Andersson
Call fz_append_string instead of fz_append_printf for static strings. Call fz_write_string instead of fz_write_printf for static strings.
2017-03-22Rename fz_putc/puts/printf to fz_write_*.Tor Andersson
Rename fz_write to fz_write_data. Rename fz_write_buffer_* and fz_buffer_printf to fz_append_*. Be consistent in naming: fz_write_* calls write to fz_output. fz_append_* calls append to fz_buffer. Update documentation.
2017-03-22Optimize fz_write_xxx functions.Tor Andersson
Call out->write directly.
2017-03-22Fix windows GLFW build.Tor Andersson
2017-03-22Rename libjpeg submodule.Tor Andersson
2017-03-22Clean up makefiles.Tor Andersson
2017-03-21Replace fontdump, bin2hex and cquote with one tool: hexdump.Tor Andersson
Still need specialty tools for namedump and cmapdump.
2017-03-20Remove fz_drop_image_base.Robin Watts
2017-03-20Add Memento_label to fz_new_imageRobin Watts
2017-03-20Fix threaded mutool build breakage.Robin Watts
2017-03-20Update API header documentationRobin Watts
Images, Document and Document Handlers.
2017-03-20epub: Fix disappearing images bug.Tor Andersson
The bug was introduced in commit ad09b038 where we adjust the y coordinate in draw calls instead of using the top level matrix so that high level output devices get reasonable page coordinates for objects. We forgot to adjust the y coordinate for images.
2017-03-15Silence warning.Tor Andersson
2017-03-15Split fz_band_writer into its own header file.Tor Andersson
2017-03-15svgwrite: Use width of glyph to position characters in cluster maps.Tor Andersson
This evenly spaces the sub-parts of a ligature.
2017-03-15svgwrite: Use #RRGGBB color syntax.Tor Andersson
2017-03-15svgwrite: Fix pen advance for ligatures.Tor Andersson
harfbuzz puts all ligature component characters at the same coordinate as the glyph.
2017-03-15gl: implement fullscreen supportTuncer Ayaz
2017-03-15gl: use fix title for X11 class and instanceTuncer Ayaz
When creating the GLFW window, filename was used as the title. That makes it impossible to apply window manager rules based on class or instance since each invocation gets a different string based on the filename.
2017-03-15Only include pthread library when needed.Tor Andersson
Rename HAVE_PTHREADS to HAVE_PTHREAD to match naming of other defines, where the macro is named after the library that is linked.
2017-03-15Update GLFW submodule.Tor Andersson
2017-03-15Add PDF_ANNOT_UNKNOWN enum.Tor Andersson
2017-03-15Optimize svg text output.Tor Andersson
Emit one <tspan> per line, so we only need to emit one 'y' coordinate for the whole line, instead of repeating it for each character.
2017-03-14Update PWG writer to be a band_writer.Robin Watts
Update mutool to call it.
2017-03-14Recast TGA output as a band writer.Robin Watts
Annoyingly TGA requires lines to be written from bottom to top, so require callers to flip the image. Also fix TGA to cope with alpha or not. Update mutool draw to use band writer interface for TGA.
2017-03-14Add MSVC project file forgotten from previous commitRobin Watts
2017-03-11Fix PS image output.Robin Watts
Appears to have been broken since alphas were optional.
2017-03-11Simplify fz_band_writer API.Robin Watts
Remove needless parameter passing in fz_band_writer API. We always know the bandstart, so why make the caller keep track of it and pass it in? Similarly, we know when we hit the end of the page, so why require us to trigger the trailer writing manually?
2017-03-11Fix MSVC solution.Robin Watts
If we have mutool depend on libluratech, then it won't build when luratech is not installed. If we don't have mutool depend on libluratech, then it won't build the Commercial versions. The basic problem is that dependencies in MSVC can't be dependent on configuration. Therefore, move the guts of mutool into libmutool, and have mutool and mutool-lura projects that depend on it. mutool-lura can also depend on libluratech. mutool builds in non commercial configurations, and mutool-lura in the commercial ones.
2017-03-11Improve API documentation for fz_output.Robin Watts
Move implementation to be more in line with fz_streams. Much closer parallels now.
2017-03-10Fix potential double frees in error cases.Robin Watts
fz_new_stream cleans up the passed in state if the allocation fails, so don't free it in the caller too.
2017-03-10Improve API documentation for fz_streams.Robin Watts
2017-03-03Add warning message when we trigger a repair pass.Tor Andersson
2017-03-03Fix 697554: Use the first 'cmap' table that matches.Tor Andersson
The bug report has an embedded truetype font with 7 different mac roman cmaps. Only the first one has the expected behavior, but we were picking up the last one.
2017-03-03pdf: Additional entries in Mac OS Roman encoding not in MacRomanEncoding.Tor Andersson
When encoding truetype fonts via the mac roman cmap table, we should be using the additional entries introduced in PDF 1.5, which are different from the standard MacRomanEncoding table in the appendix.
2017-03-02Improve SVG text output.Tor Andersson
Use xml:space="preserve" to remove the whitespace workaround. Fix output of glyph clusters.
2017-03-01epub: Adjust y coordinate for page_top in draw calls, not by top matrix.Tor Andersson
We used to bake in the page_top in all the y coordinates of all objects, and use the top level matrix to subtract page_top. If we subtract page_top from the y coordinates instead of using the matrix to do it, we get smaller numbers in the device calls.
2017-03-01Optimize pdf-device text output.Tor Andersson
Use TJ array with individual glyph positioning adjustments when possible.
2017-03-01Don't truncate page height when loading links.Tor Andersson
We accidentally used int for the page height when loading links, and in the case where the page dimension is not an integer number of points that would lead to rounding accumulation errors in the resulting bounding boxes.
2017-03-01Add page lookup cache for faster link destination lookups in outlines.Tor Andersson
Loading outlines wants to look up all link destinations, and doing the normal link destination lookups triggers loading all page objects used. This means we need to parse a lot of objects, which can be quite slow. We can load the page tree faster by only looking at intermediate page tree nodes. If we load the page tree and create a reverse lookup table for use when loading the outline, we can speed up the time to run 'mutool show pdfref17.pdf outline' from 900ms to 100ms.
2017-03-01Add PDFPage and PDFAnnotation subclasses.Tor Andersson
2017-03-01Bug 697620: Avoid clash with "isprint".Robin Watts
2017-03-01Bug 697395: Fix underflow in special case scaler.Robin Watts
When scaling a single row pixmap with a flip, I was getting the offset to the far end of the line wrong due to forgetting to allow for the alpha plane. Fixed here.
2017-02-28Update OpenJPEG thirdparty with getenv fixMichael Vrhel
2017-02-23Improve return codes from pdf_authenticate_password.Robin Watts
Customer request to enable finer control based on which password authenticates.
2017-02-22Move PATH_MAX to system.hMichael Vrhel
Better to have this defined at the system level rather than scattered about in various files.
2017-02-21Fix typo in ffi_PDFAnnotation_setColor.Tor Andersson
2017-02-21The 'count' array in pdf_annot_set_ink_list takes number of points.Tor Andersson
Not number of coordinates.
2017-02-21java: Fix typo in authenticatePassword.Tor Andersson