Age | Commit message (Collapse) | Author |
|
|
|
Bidirectional setting was not accounted for when advance width was set
in the XPS Indices Attribute.
|
|
|
|
|
|
Only direct PDF name objects should be used as arguments,
indirect PDF name objects cannot be used.
|
|
|
|
This avoids resolving object references which is
important for dictionary keys.
|
|
|
|
classes.
|
|
|
|
|
|
|
|
|
|
also, change DocPageView to paint a white background before doing anything else. Makes for smoother-looking scrolling.
And, re-introduce the slower scrolling (400 msec) when moving between pages.
|
|
The size listed in the central directory can be used to allocate an
output buffer and inflate can be told to not write more than this
number of bytes. The listed size cannot be assumed to be the size
of the output data however as the zip file may be corrupted. Instead
the size of the output data must be given by inflate and must be
less than or equal to the listed size.
The same reasoning goes for uncompressed entries and simply reading
the uncompressed data from the archive file (which may terminate
early).
Fixes indeterminism broken_png_image.xps.
|
|
|
|
ul/dr=upperLeft/lowerRight
|
|
|
|
page text (one page at a time) is converted to HTML and shown in
a class that extends WebView.
|
|
The JNI implementation is taken from core.textAsHtml() in the old
viewer.
|
|
- use FZ_ENABLE_GPRF everywhere
- chasing changed fz APIs in gprf-doc.c
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- move UI into the "mupdf" module.
The app simply sets up a DocView and starts it with a file path.
The app can call DocView.showUI to determine whether the built-in UI
is used. The plan is for apps to be able to use the built-in UI,
or supply their own.
Also includes some rudimentary UI for show/hiding annotations, and
listing links and outlines. Just for testing JNI features.
- add toolbar and tabs at the top of the view.
- refactoring
DocView becomes DocActivityView, DocViewInner becomes DocView.
- add Pages toolbar and page list view.
make the page list a little narrower.
give the document view and the pages view separate bitmaps,
and have DocPageView implement clipping when it draws.
- fix tabbing and brace style.
- add simple text selection and highlighting.
This is still a work in progress.
- various code review items.
fix tabs and brace styles
remove function calls from loop statements
use "highlight", not "hilight"
put a few strings into resources
avoid Right Hand Drift (tm)
Rects are inclusive...exclusive for the purpose of testing limits
put "else" on a separate line
put "catch" and "finally" on separate lines
|
|
added TextBlock, TextLine, TextSpan and TextChar inner classes to StructuredText.
Calling StructuredText.getBlocks() returns an array of TextBlocks, which in turn
contains an array of TextLines, etc.
|
|
|
|
Previously we might and up with prints such as:
error: malloc of array (%zu x %zu bytes) failed
because %zu was never interpreted on 32-bit platforms
where sizeof(size_t) < 8. After this fix we now get:
error: malloc of array (14445 x 118800 bytes) failed
|
|
|
|
|
|
|
|
|
|
Added methods:
* PDFDocument.hasUnsavedChanges()
* PDFDocument.canBeSavedIncrementally()
The interface for PDFDocument.save() now returns
the number of errors encountered while saving.
|
|
|
|
|
|
Commit c22e6a6dc2bf6acbac955bd5fbdd896329dfd725
accidentally removed the line endings for:
mutool show file.pdf grep
|
|
|
|
|
|
|
|
The type3 font(s) in the file have an invalid (0 sized) bbox, hence
the clipping of the chars goes wrong.
We now spot the invalid bbox, and suppress the clipping.
|
|
This allows compilation using older Android NDKs.
This was mistakenly omitted from commit
537a467dfd6392d70624805943ac65182ec881b4.
|
|
|
|
Fixes bug 696954.
|
|
The file is HORRIBLY corrupt, and triggers Sophos to think it's
PDF malware (which it isn't). It does however trigger a use
after free, worked around here.
|
|
Try to reduce contention on the glyphcache lock.
|
|
Divide up the work amongst the threads to solve the odd situation
of larger buffers producing slower runtimes.
Avoid creating (and hence clearing) larger bitmaps than required
at the end of the run.
|