Age | Commit message (Collapse) | Author |
|
This was causing blocks to be free'd rather than fz_free'd.
|
|
Avoid library warnings when including libfonts.
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
Output uses adaptive compression mode.
|
|
|
|
|
|
Now covers non-ARM arch's too, and both load/stores.
|
|
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.
|
|
Both C and ARM versions. ARM version is noticably faster than C
version.
|
|
I missed a font while reworking the generate.bat font generation.
|
|
(And presumably other platforms).
.align is broken - on some archs it wants the padding size, on others
(like ARM) it wants log2(padding size). Use .balign which is consistent.
Avoid using @ or # as these are comment chars on some archs.
Use the STT_OBJECT form instead.
|
|
|
|
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.
|
|
|
|
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This has caught a couple of oddities...
|
|
Also change unsigned char into const char for embedded data.
|
|
All the groundwork was in place for this, I'd just forgotten
to actually enable it.
|
|
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.
|
|
No clever SIMD tricks.
|
|
Simple unrolling.
|
|
|
|
Try to limit aliasing issues.
|
|
"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.
|
|
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.
|
|
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.
|
|
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.
|
|
Simple PS wrapped images with flate compression.
|
|
|
|
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.
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
|
|
|