Age | Commit message (Collapse) | Author |
|
|
|
|
|
Same mechanism as the x11 version:
mupdf.exe in.pdf 10
|
|
The java sources were pushed down into 'src' which broke the
.bat file.
|
|
This is very common and not a problem. Let's keep warnings
for problematic things, and not use them for informational
messages such as these.
|
|
|
|
|
|
|
|
|
|
The ant is dead, long live the gradle wrapper!
|
|
This avoids a macOS compilation error due to
strlen() being redeclared.
|
|
|
|
This is intended to be a way to allow us to implement
compiletime/runtime selection of different scan converter
implementations.
|
|
CMYK+Alpha get resolved to RGB+Alpha as part of loading.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Passing a pdf_document to pdf_graft_object to specify the source
document is redundant, as if we need to know the document, it will
be pickled into the object we are copying.
Similarly, repeatedly having to pass the destination document
seems silly when we can just pickle it into the map too (and this
removes the possibility of people using a different destination
document part way through).
This leaves to simplifying the pdf_graft_object call, at the expense
of splitting it into 2 calls - one with a map, and one without.
Also, we can delay the creation of the mapping table until we are
first asked to copy an object that requires deep copying. This
avoids us ever having to manually pass in the source document.
This has knock-on effects in the java and javascript classes, but
with the advantage of being clearer in the end (IMHO).
Conflicts:
include/mupdf/pdf/document.h
|
|
|
|
|
|
We have pdf_drop_document, so a pdf_keep_document seems justified
too.
|
|
Expose pdf_new_output_processor.
Remove pdf_document argument to pdf_new_filter_processor. It is
only ever used when copying resources from the old resource
dictionary to the new one, whereupon it must agree with the bound
pdf_document in the old resource dictionary.
|
|
This causes breakages of rendering for non-rectangular clipping
paths, as seen on page 10 of Transparency-DesignGuide.pdf in
the "Knockout group on" image, if we disable the rectangular
optimisation case in fz_draw_clip_path.
|
|
This bug caused an indeterminism with issue726.j2k.
|
|
|
|
|
|
|
|
|
|
|
|
when building packages (e.g. for openSUSE Linux)
(random) filesystem order of input files
influences ordering of functions in the output,
thus without the patch, builds (in disposable VMs) would differ.
See https://reproducible-builds.org/ for why this matters.
|
|
|
|
|
|
PDF 1.2 and prior treats # in PDF names to be regular characters.
PDF 1.2 and later treats # as escape characters for character hex
codes. Previously illegal hex codes, e.g. #BX, were partially
parsed as escaped hex codes and the illegal remainder parsed as
regular characters. Now illegal hex codes are handled as
consisting entirely of regular characters. Note that character
code 0 is also considered to be an illegal hex code.
|
|
Previously the parser would cut these names short
and then parse the remainder as a separate name.
|
|
This warning should help us not break Windows builds when working on Linux.
Clang claims to support this warning, but seems to silently ignore it.
To get any use from this we should make sure to test build with GCC.
|
|
Fix for bug 697943.
Set the initial replacement font bbox to the empty rectangle for type3 fonts,
and let the type3 glyph loading initialize by taking the union of all glyph
bboxes.
Set the replacement font bbox for non-Type3 fonts to the unit rectangle.
Also remove unused flag from fz_font struct.
|
|
Add an option to the structured text device to preserve images.
If the PDF processor does not have ops to process images, then skip
loading them in the interpreter if possible. If the device does not
have any image callbacks, then don't set the image processing ops in
the run device.
This accomplishes the same effect as the device hints were intended
to do, but without needing to expose them to the PDF interpreter
which may not even have a device since we now have multiple PDF op
processors.
|
|
|
|
|
|
For now, treat auto in margins as zero.
|
|
|
|
|
|
|
|
We were passing in the wrong source alpha value in one of the
plotter calls. This is not a call used in our standard builds,
hence us not having seen the problem before.
Credit to Sebastian for spotting the problem and suggesting the
fix.
|
|
Should be 0..256 not 0..1
|