Age | Commit message (Collapse) | Author |
|
We do not support rich text content; remove the properties rather than
leave them untouched and out of sync with the simple contents and styles.
|
|
|
|
|
|
Now handles more annotation types, and does not use the pdf-write device.
Handles many of the usual annotation properties, such as border width,
color, interior color, line ending styles.
* Ink
* Highlight, Underline, Strike-Out, Squiggly
* Line (with arrow-heads)
* Polygon
* PolyLine
* Square
* Circle
* Caret
* Text (needs better icons)
* FileAttachment (needs better icons)
* Sound (needs better icons)
* Stamp
* FreeText
Partially complete:
* Widget (treats everything like a plain text field)
Not done, but on the to-do list:
* /BS style (solid/dashed/bevel/inset/underline)
* /BS dash pattern
Not done and not on the list:
* Movie
* Screen
* Printer's Mark
* Trap Network
* Watermark
* /Border corner radii (ignored by acrobat)
* /BE cloudy border effect
|
|
|
|
|
|
It is safe to save a document with unsaved signatures to an fz_output,
provided it supports fz_stream_from_output.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Also don't bother adding an indirect object for the top resource dict.
|
|
|
|
Previously if a glyphs units per em was 0 we'd try to divide
by zero, now mupdf assumes a default value and continues.
|
|
Previously if both cleaning and sanitizing content streams the
pages' resource dictionaries would retain the actually used
resources. If the content streams were only cleaned and not
sanitized the page's resource dictionaries were incorrectly
emptied. All resources, whether used or not, ought to be
retained, as is the case after this commit.
|
|
Add some missing convenience data objects: font, highlight, position, etc.
Add color.convert and color.equal functions.
|
|
|
|
A 'null' pdf_obj is also NULL.
|
|
|
|
|
|
|
|
|
|
Return TTC subfont index from fz_lookup_noto_font.
|
|
Also support Vertical WMode.
|
|
Use a sed script to strip comments and whitespace and add escapes
and quote it as a C string literal.
|
|
|
|
Created with the 'scripts/runcmapdump.sh' script.
|
|
Remove UTF8 and UTF32 CMap resources that are not needed for PDF.
Add Identity-H and Identity-V resources.
Process UCS2/UTF16 and GBK CMaps to usecmap a common subset.
|
|
|
|
Also remove useless pdf_new_null and pdf_new_bool functions.
Use the PDF_NULL, PDF_TRUE, and PDF_FALSE macros instead.
|
|
|
|
|
|
Add a PDF_NAME(Foo) macro that evaluates to a pdf_obj for /Foo.
Use the C preprocessor to create the enum values and string table
from one include file instead of using a separate code generator tool.
|
|
Previously if an xref entry looked like:
0000000000 65535 f
1 0 n
2
the xref entry parsing would try to access the scratch buffer
outside of the part populated by the read leading to possibly
using uninitalized data.
|
|
|
|
Increment the value after adding the mapping, not before.
|
|
Force the face_flags to include TRICKY if we detect a DynaLab font
name instead of trying to force hinting ourselves.
|
|
Previously these were not set to NULL, which caused
spurious segmentation errors.
|
|
|
|
|
|
|
|
Use pdf_dict_put_* convenience functions.
Use pdf_dict_get instead of pdf_dict_gets with constant strings.
|
|
|
|
Create a new empty dictionary, add it to the xref and return
a new indirect reference object that points to it.
This indirect reference needs to be dropped, since it was
created with a function using the 'new' keyword.
|
|
|
|
pdf_dict_put_dict creates a new empty dictionary, inserts it
into the parent dictionary, and returns a borrowed reference to it.
These functions should simplify document creation by removing the
need to wrap creation with try/catch for reference counting cleanup.
|
|
_WIN32 is always defined on windows (it means the WinAPI is available).
_WIN64 is also defined on 64-bit targets.
This means the test for defined(_WIN32) || defined(_WIN64) is redundant,
since if _WIN64 is defined, then _WIN32 is always also defined.
MSC_VER is only defined for MSVC, so split the ifdef sections in
include/fitz/system.h into separate MSVC and WIN32 parts so that
we can build with MinGW and other non-MSVC compilers on windows.
|
|
Filter out Link and Popup annotations.
Links are not comments, popup annotations are auxiliary information
for other annotations, so neither of these types should be present
in our list of annotations, but all other annotations should be there,
whether they have appearance streams or not.
Ensure has_new_ap is zero when first loaded, and changed if either
the active AP object is changed or the current AP content stream
is updated.
|