summaryrefslogtreecommitdiff
path: root/tex/context/base/mlib-pdf.lua
diff options
context:
space:
mode:
authorMarius <mariausol@gmail.com>2010-11-26 22:40:20 +0200
committerMarius <mariausol@gmail.com>2010-11-26 22:40:20 +0200
commitcc2e8cc985157fdab4e0122b27457d7cd21b2d38 (patch)
tree4cdac08071a209d3af472899db9bbd86b1e10563 /tex/context/base/mlib-pdf.lua
parent44d0f4fe01338d0f699e1f09ae13d17088c2db83 (diff)
downloadcontext-cc2e8cc985157fdab4e0122b27457d7cd21b2d38.tar.gz
beta 2010.11.26 21:21
Diffstat (limited to 'tex/context/base/mlib-pdf.lua')
-rw-r--r--tex/context/base/mlib-pdf.lua16
1 files changed, 12 insertions, 4 deletions
diff --git a/tex/context/base/mlib-pdf.lua b/tex/context/base/mlib-pdf.lua
index 5ca554292..80ab9b1d0 100644
--- a/tex/context/base/mlib-pdf.lua
+++ b/tex/context/base/mlib-pdf.lua
@@ -315,7 +315,7 @@ function metapost.flush(result,flusher,askedfig) -- pdf flusher, table en dan co
postscript = object.postscript,
}
--
- local before, inbetween, after = nil, nil, nil
+ local before, inbetween, after, grouped = nil, nil, nil, false
--
local cs, cr = currentobject.color, nil
-- todo document why ...
@@ -329,7 +329,7 @@ function metapost.flush(result,flusher,askedfig) -- pdf flusher, table en dan co
-- move test to function
local special = metapost.specials[prescript]
if special then
- currentobject, before, inbetween, after = special(currentobject.postscript,currentobject,t,flusher)
+ currentobject, before, inbetween, after, grouped = special(currentobject.postscript,currentobject,t,flusher)
objecttype = currentobject.type
end
end
@@ -339,7 +339,9 @@ function metapost.flush(result,flusher,askedfig) -- pdf flusher, table en dan co
t[#t+1], cr = colorconverter(cs)
end
--
- if before then currentobject, t = before() end
+ if before then
+ currentobject, t = before()
+ end
local ml = currentobject.miterlimit
if ml and ml ~= miterlimit then
miterlimit = ml
@@ -426,7 +428,13 @@ function metapost.flush(result,flusher,askedfig) -- pdf flusher, table en dan co
if cr then
t[#t+1] = cr
end
- if after then currentobject, t = after() end
+ if after then
+ currentobject, t = after()
+ end
+ if grouped then
+ -- can be qQ'd so changes can end up in groups
+ miterlimit, linecap, linejoin, dashed = -1, -1, -1, false
+ end
end
end
end