Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Always ignore a line break immediately after an opening tag and
before a closing tag.
|
|
|
|
This algorithm can handle flow nodes that has non-zero width when they
break a line of text. The previous algorithm could not handle this.
This paves the way for supporting soft hyphens.
|
|
This paves the way for supporting soft hyphens.
|
|
|
|
|
|
|
|
The scissor argument is an optional (potentially NULL) rectangle
that can give hints to devices about the area that can be scissored.
This is used by the draw device and display list device to minimize
the size of temporary clip mask buffers.
The scissor rectangle, if used, must have been transformed by the
current transform matrix.
|
|
The Forms object should have been dropped once the reference was
created for it. Also needed to clean up the group and font
objects that the device maintains.
|
|
When cleaning a file, we discard any Annot entries that no longer
point to genuine pages. Or at least, we should have done, were it
not for the fact that we only handled the /A form of Annots, and
not the /Dest form of annots. Fixed here.
|
|
When printing a PDF object to a file, if it was a name, then we'd
output without a required \n. For example:
10 0 obj
/SomeNameOrOtherendobj
This would trip gs up.
|
|
|
|
|
|
Extraneous explicit type casts can mask errors, especially if a
function prototype or return value changes in the future.
|
|
Image objects are immutable and opaque once constructed.
Therefore there is no need for the const keyword.
|
|
Shading objects are immutable and opaque once constructed.
Therefore there is no need for the const keyword.
|
|
Match naming of fz_moveto/lineto etc for paths.
|
|
|
|
We compile with -Wno-unused-parameters instead.
|
|
Don't just cast an enum to another.
|
|
|
|
The PCL monochrome output code was unfinished. This now produces
PCL accepted by ghostpcl for ljet4 and dj500 presets at least.
|
|
Writing individual bytes using fwrite is VERY slow (profile of debug
code shows 93% of runtime is in system fwrite). Fix this by collating
into a buffer and writing (now 2.5%).
|
|
|
|
Use putc for single byte writes instead of fwrite.
|
|
|
|
|
|
Use the flags when selecting a fallback font.
|
|
We walk the text in a node to shape it in 2 different places
in the code. Reformulate the code so that the 'walking' logic
is commoned up.
|
|
|
|
|
|
|
|
|
|
Fixes http://bugs.ghostscript.com/show_bug.cgi?id=696004
|
|
Also fix a memory leak.
|
|
Wrap the unsafe _snprintf to ensure that the string is null-terminated
even on overflow.
|
|
fz_fonts gain a 'shaper' field that will be filled in as
required. Use a void * rather than an hb_font_t to avoid
polluting top level include space.
Harfbuff handles mirroring for us, so lose the 'mirror'
fields. This simplifies our wrappers around the 'standard'
bidi code in that we don't need to split fragments upon
mirroring.
We do need to split our fragments at script changes though
as harfbuzz only operates on a single font at a time.
Update the html flow structure so that each flow node contains
details of the the direction specified for it in the markup,
the language specified for it in the markup and the script
detected by the bidi code.
Get the bidi code to pass out the script for each fragment
as part of the callback and populate that field in the node.
Ensure that we pass in the markup direction to the bidi
splitting code as the 'base' direction.
When feeding the bidi code, rather than feeding it paragraphs
at a time, break those paragraphs if different parts of them
have different marked up directions.
|
|
Thanks to Simon Reinhardt for these.
|
|
Spot (broken) values that will require special 'acrobat
compatible' handling and use the old code for that.
|