summaryrefslogtreecommitdiff
path: root/source
AgeCommit message (Collapse)Author
2015-05-05Fix typo in fz_pack_path that caused us to malloc much more than needed.Tor Andersson
2015-05-04epub: Parse rgb(x,y,z) type colors.Tor Andersson
2015-05-04epub: Fix 695971: Don't confuse id selectors (#name) with colors in CSS.Tor Andersson
2015-05-04epub: Anchor list mark to first flow node in list item.Tor Andersson
2015-04-28epub: Only apply border widths when the border is visible.Tor Andersson
The border_style field was changed from an enum to an array of enums, but one place where it was used was not updated.
2015-04-27epub: Ugly hack so that table rows end up on their own lines at least.Tor Andersson
We don't support tables yet, so this is a stop gap measure.
2015-04-27epub: Support individual T,B,L,R border styles and colors.Tor Andersson
2015-04-27epub: Fix (incorrectly) recursively multiplied relative font sizes.Tor Andersson
2015-04-23epub: Support roman and alphabetic numbering in ordered lists.Tor Andersson
2015-04-20epub: list items with bullets and countersTor Andersson
2015-04-20epub: Also accept ".htm" file extension.Tor Andersson
2015-04-16mutool clean -z option to compress streams.Tor Andersson
2015-04-16ASCIIHexEncode inline images during sanitization if do_ascii is set.Tor Andersson
2015-04-16Fix typo in html-layout.cRobin Watts
The find_accumulated_margins function should be a void return type.
2015-04-15epub: Take margins into account when scaling images to fit the page.Tor Andersson
2015-04-15epub: Tighten the comparison for when an image is on the current page.Tor Andersson
This solves the issue with slivers of images appearing in the margin at the bottom of the previous page.
2015-04-15epub: Be resilient in the face of broken CSS.Tor Andersson
Try to recover from syntax errors in CSS rules by skipping to the end of the declaration block. Don't abort HTML parsing on CSS errors.
2015-04-15epub: Check version number and warn if it's not an EPUB 2.0 file.Tor Andersson
2015-04-14epub: Ignore CSS3 ::before pseudo-element syntax.Tor Andersson
2015-04-14Fix 695918: "mudraw -sm" format string on win32.Tor Andersson
2015-04-14Split fz_meta into separate querying functions.Tor Andersson
Add fz_has_permission function to fz_document. Add fz_lookup_metadata function to fz_document. Remove fz_meta function from fz_document.
2015-04-14epub: Parse url() tokens.Tor Andersson
Fix bug 695922.
2015-04-09Add -v option to mutool and mudraw to print MuPDF version number.Tor Andersson
2015-04-09Remove the _no_run functions.Tor Andersson
The new pdfclean sanitize functionality mean that mutool now needs the data files, so maintaining the split that was designed to keep data files out of mutool is no longer viable.
2015-04-08Fix windows builds of epub-doc.cRobin Watts
Variables need to be defined at the top of blocks.
2015-04-07Fix whitespace.Tor Andersson
2015-04-07Add some basic page margins to EPUB layout.Tor Andersson
Add margins of 1 em at the top and bottom of every page at the top level. TODO: This should be set from the CSS using the @page selector, and be collapsed with the body margins at the start and end of each chapter, as well as the left and right body margins.
2015-04-07Fix some warnings.Tor Andersson
2015-04-07Add EPUB layout options to mupdf-x11 and mudraw.Tor Andersson
2015-04-07Trigger default layout in fz_document layer.Tor Andersson
Trigger the default layout when needed, but only if no manual layout has been done. This avoids doing a pointless double layout (once with default when loading the document, then with the manual layout call with the desired layout options).
2015-04-07Rename mutool show 'pages' to 'pagetree' to reduce possible confusion.Tor Andersson
Fixes bug 695909.
2015-04-07Fix structured text extraction in vertical mode.Robin Watts
When advancing a glyph in vertical mode, it should advance down the page. The origin of the glyph as supplied is bottom left, not top right - allow for this in calculations. Previously glyphs were not being collated into spans because of this.
2015-04-07Structured text extraction; improve glyph bounding box calculations.Robin Watts
In vertical motion mode, when calculating bboxes we should use horizontal rather vertical displacements from the 'axis of movement'. In horizontal mode, we displace by 'ascender' and 'descender'. Those concepts don't rotate with the motion mode, so repurpose those fields to hold bbox.x0 and bbox.x1 in vertical mode.
2015-04-07Use fz_advance_glyph rather than direct FT calls during PDF layout.Robin Watts
2015-04-06Add some simple debug code to dump fz_gels.Robin Watts
Just for internal use, no external interface.
2015-04-06Antidropout followup: cope with stroking too.Robin Watts
Stroke segments that are horizontal or vertical get the same antidropout treatment as filled rectangles.
2015-04-06Bug 694367: Attempt to avoid dropouts of rectangles.Robin Watts
This is not a complete general fix for features dropping out of rendered line art, but merely a fix for one of the more common cases. When rendering rectangles (currently, specifically only those rectangles that are actually defined as rectangles within the path structure), if they are axis aligned, then ensure that they always fill the subpixel line they are on.
2015-04-06Update mutool subtools to use PDF_NAME_xxx rather than "xxx".Robin Watts
2015-04-06Add mutool pages subcommand.Robin Watts
Inspired by bug 695823. Mutool can now dump the sizes and orientations for pages within a given file.
2015-04-06Move the guts of pdfclean into the lib.Robin Watts
Michael needs to be able to call pdfclean from gsview. At the moment he's having to do this by including the pdfclean.c file into the lib build, and then calling pdfclean_main with a faked up command line. This isn't nice. pdfclean.c is implemented by pdfclean_main parsing the options/filenames out of argv and then passing the filenames/options on to a pdfclean_clean function. This seems like a much nicer API to offer to the world. We therefore pull the guts of pdfclean.c (pdfclean_clean and its subsidiary structures/functions) into pdf-clean-file.c and include this in the library build. This leaves pdfclean.c just as the command line parsing. This should not affect the size of any of the resulting binaries.
2015-04-06Fix oddity with pdfinfoRobin Watts
If pdfinfo is invoked as: mutool info file.pdf 1,2,3 then it will show the items found on page 1, then the items found on pages 1 and 2, then the items shown on pages 1,2 and 3. Fix this by clearing the data after each show operation.
2015-04-03Pages created with pdf_create_page were duff.Robin Watts
They hadn't been updated with recent changes. Extract the pdf page creation code from pdf_load_page into a new static function, pdf_new_page, and use that from both places.
2015-04-03Bug 694713: Avoid assert when using pdf_page_writeRobin Watts
When writing a pdf page, we pass page->contents to pdf_new_pdf_device. This object is assumed to be a dictionary (stream) that can be updated with the Length and stream contents once the page writing process has completed. When we are rewriting a pdf page however, this can go wrong; page->contents can be an array of objects. Not only this, in general it would be possible for several pages to share the same page contents (or maybe some of the elements of a page contents array). Updating one page should not update the others. We therefore update pdf_page_write to always create a new page->contents object and use that. Thanks to Michael Cadilhac for spotting the basic problem here.
2015-04-02Bug 695900: pdfclean return code is inverted.Robin Watts
Silly typo. Thanks to Daniel Bloemer for pointing this out.
2015-04-01fix bug #695895. Uninitialized variable in pdf_parse_file_specfredrossperry
2015-04-01Bug 693719: Attempt #2. Broken trailer repair.Robin Watts
Calling pdf_is_dict causes the file to seek. This is a bad thing in a process that is running through the file. It's doubly bad, as the thing it seeks to read may not be there as it might not have been repaired yet. So, instead of just keeping the 'most recent root that is a dictionary', we change to keeping a list of the roots we have found while parsing the doc. At the end we then check for the most recent one that is a dictionary and use that.
2015-04-01Update manpages.Tor Andersson
2015-04-01Fix scan for %d in mudraw.Tor Andersson
2015-04-01Bug 693719: Improve repairing of files with broken trailers.Robin Watts
When repairing a file we keep track of the most recent 'Root' entry we have found. Only accept a new Root entry as a replacement if it is a dictionary.
2015-04-01Clean up mudraw command line syntax.Tor Andersson
... and move outline printing to mutool show.