summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gs/Resource/Init/pdf_draw.ps18
-rw-r--r--gs/Resource/Init/pdf_main.ps14
2 files changed, 28 insertions, 4 deletions
diff --git a/gs/Resource/Init/pdf_draw.ps b/gs/Resource/Init/pdf_draw.ps
index bdc02143a..fe788abbe 100644
--- a/gs/Resource/Init/pdf_draw.ps
+++ b/gs/Resource/Init/pdf_draw.ps
@@ -2153,7 +2153,7 @@ end
2153 pop 2153 pop
2154 false 2154 false
2155 }{ 2155 }{
2156 (invalid color specified for FreeText annotation /C entry) 2156 (invalid color specified for annotation /C entry)
2157 pdfformaterror false 2157 pdfformaterror false
2158 } ifelse 2158 } ifelse
2159 } ifelse 2159 } ifelse
@@ -2776,6 +2776,14 @@ currentdict /set_bc_color undef
2776 2776
2777 dup annotrect rectclip 2777 dup annotrect rectclip
2778 2778
2779 dup /CA knownoget {
2780 .setopacityalpha
2781 } if
2782
2783 dup /ca knownoget {
2784 .setopacityalpha
2785 } if
2786
2779 dup /C knownoget { 2787 dup /C knownoget {
2780 dup length 4 eq { 2788 dup length 4 eq {
2781 aload pop setcmykcolor true 2789 aload pop setcmykcolor true
@@ -2797,7 +2805,13 @@ currentdict /set_bc_color undef
2797 } ifelse 2805 } ifelse
2798 } ifelse 2806 } ifelse
2799 } if 2807 } if
2800 {dup annotrect rectfill} if 2808 {dup annotrect
2809 %% Somewhat horrifyingly, rectfill maps directly to the device fill_rectangle
2810 %% method, which bypasses transparency (!!) So we construct the rectangle,
2811 %% and fill it, manually instead....
2812 gsave 4 2 roll moveto 1 index 0 rlineto
2813 0 exch rlineto neg 0 rlineto closepath fill grestore
2814 } if
2801 2815
2802 %% get and process the default appearance string, if we don't have one, use a default 2816 %% get and process the default appearance string, if we don't have one, use a default
2803 dup /DA knownoget { 2817 dup /DA knownoget {
diff --git a/gs/Resource/Init/pdf_main.ps b/gs/Resource/Init/pdf_main.ps
index 3ab2a3c19..c2c7693c6 100644
--- a/gs/Resource/Init/pdf_main.ps
+++ b/gs/Resource/Init/pdf_main.ps
@@ -2194,11 +2194,21 @@ currentdict /PDF2PS_matrix_key undef
2194 pop pop //true exit % as transparency. 2194 pop pop //true exit % as transparency.
2195 } if 2195 } if
2196 } if 2196 } if
2197 /AP knownoget { % Get appearance dict for the annoation 2197 dup /AP knownoget { % Get appearance dict for the annoation
2198 /N knownogetdict { % Get the /N (i.e. normal) appearance stream 2198 /N knownogetdict { % Get the /N (i.e. normal) appearance stream
2199 4 dict exch resourceusestransparency { pop //true exit } if 2199 4 dict exch resourceusestransparency { pop pop //true exit } if
2200 } if 2200 } if
2201 } if % If AP dict known 2201 } if % If AP dict known
2202 dup /CA knownoget {
2203 1 le {
2204 pop pop //true exit
2205 } if
2206 } if
2207 /ca knownoget {
2208 1 le {
2209 pop //true exit
2210 } if
2211 } if
2202 } { 2212 } {
2203 pop 2213 pop
2204 } ifelse 2214 } ifelse