summaryrefslogtreecommitdiff
path: root/source
AgeCommit message (Collapse)Author
2016-04-04epub: Simplify harfbuzz glyph cluster mapping and positioning.Tor Andersson
Remove the need for type punning, and make it behave more robustly for indic languages.
2016-04-04Always set glyph_count!Tor Andersson
We were setting it to zero if not building a bbox table, which caused havoc with the advance width caching.
2016-04-04Add glyph names to trace device output.Tor Andersson
2016-04-04epub: Add stripped Charis SIL font to use as the default font for EPUB.Tor Andersson
2016-04-04Fix typo in pdfwrite top-level matrix.Tor Andersson
2016-03-31Initialize pdf write options to zero in pdfclean.Tor Andersson
2016-03-31Initialize disabled document writing flags to zeroSebastian Rasmussen
Also remove redundant assignments. Fixes http://bugs.ghostscript.com/show_bug.cgi?id=695968
2016-03-31Clean up some whitespace.Tor Andersson
2016-03-31html: Tweak how builtin font families are loaded.Tor Andersson
2016-03-30Use the font bbox for bounding empty glyphs.Robin Watts
This avoids the displaylist device not playing back space glyphs.
2016-03-30Use fz_new_document for pdf and html docs.Robin Watts
In particular for html docs we were getting the refcount wrong, causing us to leak on closedown.
2016-03-30HTML Layout: avoid problems with emitting text several times.Robin Watts
If a "word" of HTML is split into several fragments by the string walker (due to glyphs not being available in the same font) then we'd previously have walked too much of the string when pulling glyphs out of the harfbuzz buffer. Only walk as much as we should.
2016-03-29Fix typo in "Tweak html-layout harfbuzz code" commit.Tor Andersson
2016-03-29pdf-crypt: Crypt filer keys must be at least of length 40.Sebastian Rasmussen
This is stated in table 3.22 in PDF Reference 1.7. Fixes valgrind errors for SIGABRT-090214-045131-116.pdf from bug 695040.
2016-03-29epub: Fix sign inversion in harfbuzz y-offsets.Tor Andersson
Combining marks were being offset in the wrong direction vertically.
2016-03-29bmp: Optimize reading of bitmap image data.Sebastian Rasmussen
2016-03-29bmp: Add support for decoding 24-bit RLE images.Sebastian Rasmussen
2016-03-29bmp: Add support for extra alpha mask.Sebastian Rasmussen
2016-03-29bmp: Add support for embedded PNG images.Sebastian Rasmussen
2016-03-29bmp: Add support for embedded JPEG images.Sebastian Rasmussen
Reintroduce fz_load_jpeg() (previously removed in 12c1466) improved with: * application agnostic memory handler support from 6a8abce * colorspace context from 93bd1ff * resolution detection from 4dc6cbe
2016-03-29bmp: Add support for 4-bit bitmasks.Sebastian Rasmussen
2016-03-29bmp: Improve fallback handling of palette color entries.Sebastian Rasmussen
* Use a better 4-bit fallback palette (use vga palette as indicated by variable name instead of 16 color web palette) * Determine if existing palette entries are grayscale and if so use a grayscale palette instead of the vga or web palette * Extend the web palette with black entries to make it eaiser to copy from.
2016-03-29bmp: Parse OS/2 header compression field correctly.Sebastian Rasmussen
2016-03-29bmp: Only allow in range bitcounts for uncompressed images.Sebastian Rasmussen
2016-03-29bmp: Add identifiers for compression instead of hardcoded values.Sebastian Rasmussen
2016-03-29bmp: Parse component bitmasks correctly.Sebastian Rasmussen
* The component bitmasks in the header are only valid for bitfields compression * The extra component bitmasks are only present if using bitfields compression and for 16-/32-bit images if not already present in header
2016-03-29bmp: Fix typo in bitmask comparison.Sebastian Rasmussen
2016-03-29bmp: Fix typo in end of input data check.Sebastian Rasmussen
The rle8 encoding already uses the same comparison
2016-03-29bmp: Fix typo in supported bits per pixel check.Sebastian Rasmussen
2016-03-29Tweak html-layout harfbuff code to placate gcc.Robin Watts
gcc whines about strict-aliasing rules. Tweak the code to avoid them. Short version = gcc dislikes accessing the same memory through different typed pointers unless they are void * or char *.
2016-03-28Label blocks that Harfbuzz leaks as leaked.Robin Watts
Tell Memento to treat all blocks allocated within given harfbuzz calls as being leaks.
2016-03-28Memento: Add facility to cope with 'known' leaked blocks.Robin Watts
Harfbuzz allocates blocks that it keeps around as statics. There are a finite number of these, and they are never freed (at least not in the build we use). Having Memento report them as leaks is a pain. So we extend Memento so that we can label blocks as being leaks, and thus never have to be bothered by them.
2016-03-28Strengthen Harfbuzz code against outside use.Robin Watts
2016-03-28Add missing hb_lock/unlock around shaper freeing.Robin Watts
This was causing blocks to be free'd rather than fz_free'd.
2016-03-28Fix fz_try typo in openssl code.Robin Watts
2016-03-26Memento: Cope with wrapped blocks.Robin Watts
If another routine 'wraps' memento blocks (such as a chunk allocator or the 'trace' allocator in mudraw), then the address passed to Memento_label, Memento_takeRef etc, can be inside the block rather than at the start of the block. Update Memento to cope with this.
2016-03-25Fix PS output banded mode operation.Robin Watts
2016-03-25Refactor pcl output to work in bands.Robin Watts
2016-03-25Tweak the PCL page size handling/options.Robin Watts
Introduce a 'generic' PCL setting (basically ljet4 with custom page sizes for now). Ensure we send explicit sizes before the custom page sizes, and don't use Ricoh page sizes unless we are allowed to.
2016-03-25Add 24 bit RGB PCL output mode.Robin Watts
Output uses adaptive compression mode.
2016-03-25Add optimised cmyk image plotters.Robin Watts
2016-03-25Optimise fz_paint_solid_color_5Robin Watts
2016-03-25Rename ARCH_ARM_CAN_LOAD_UNALIGNED to be ARCH_UNALIGNED_OKRobin Watts
Now covers non-ARM arch's too, and both load/stores.
2016-03-25More ARM code thresholding work.Robin Watts
Fix do_threshold_1 and implement do_threshold_4. do_threshold_1 checks for white and shortcuts the work if it can. There are 2 ARM variants of do_threshold_4. One for ARMs that support unaligned loads, and one for the (rare configurations) that don't. The former checks for white and shortcuts the work.
2016-03-25Speed CMYK pixmap clearing.Robin Watts
Both C and ARM versions. ARM version is noticably faster than C version.
2016-03-23js: Create 'argv' global containing arguments passed to mutool run.Tor Andersson
2016-03-23js: Add some low level document object access.Tor Andersson
pdf.createObject() will create a new (blank) object and return an indirect reference to it. This wraps pdf_create_object. ref.writeObject(obj) will update the object pointed to. This wraps pdf_update_object.
2016-03-23Fix declaration after statements.Tor Andersson
2016-03-23Fix MSVC builds.Robin Watts
Update generate.bat to generate generate/fontname.c files rather than generate/fontname.{ttc,ttf,cff} etc. Add a new libfonts target that builds those, and make libmupdf depend on it. Fix build problem in load-bmp.c - don't declare in the middle of blocks.
2016-03-23Bug 696630: Avoid needless (and potentially wrong) dereference.Robin Watts