summaryrefslogtreecommitdiff
path: root/base/gdevmplt.c
diff options
context:
space:
mode:
authorMichael Vrhel <michael.vrhel@artifex.com>2020-01-11 12:14:48 -0800
committerMichael Vrhel <michael.vrhel@artifex.com>2020-01-11 12:14:48 -0800
commit05c41c0dedaa512419f15798cbc3da92b6a90bbc (patch)
treeb021f4d5219d5f6762770e430339ffad06f9a86d /base/gdevmplt.c
parent5faf010d8e043d77ff10f3deee466e9fb2dc7b7e (diff)
downloadghostpdl-05c41c0dedaa512419f15798cbc3da92b6a90bbc.tar.gz
Squashed commit fill-stroke3 branch
This branch had several contributors including Robin Watts, Ken Sharp and Ray Johnston. The intent was to add a "fill and stroke" path device method to ensure we get proper rendering when doing fill/stroke methods with overprint and transparency. In addition, adding the method made it possible for pdfwrite to match the original pdf source file if it also had fill/stroke methods. The interaction with overprint and transparency led to significant changes in parts of the code related to those sections. In particular, overprint was reworked to ensure that the overprint compositor and the transparency compositor were aware if it was to be using the overprint drawn_comps for stroke or for fill. The code was rewritten so that the overprint compositor actions only occurred when an actual operation occurred (e.g. fill, stroke, image, text) as opposed to every time that the overprint graphic state values changed. When there is a fill-stroke operation with transparency, depending upon the graphic state values, a non-isolated knockout group may be pushed. From this, an issue with knockout groups within knockout groups was revealed, which was related to the backdrop selection. The backdrop selection code was simplified.
Diffstat (limited to 'base/gdevmplt.c')
-rw-r--r--base/gdevmplt.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/base/gdevmplt.c b/base/gdevmplt.c
index d10f194a2..c102639fa 100644
--- a/base/gdevmplt.c
+++ b/base/gdevmplt.c
@@ -152,7 +152,8 @@ gx_device_mplt gs_pcl_mono_palette_device =
default_subclass_strip_tile_rect_devn,
default_subclass_copy_alpha_hl_color,
default_subclass_process_page,
- default_subclass_transform_pixel_region
+ default_subclass_transform_pixel_region,
+ default_subclass_fill_stroke_path,
}
};