summaryrefslogtreecommitdiff
path: root/tex/context/base/mkiv/mlib-pps.lua
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2018-06-24 21:49:41 +0200
committerContext Git Mirror Bot <phg42.2a@gmail.com>2018-06-24 21:49:41 +0200
commit00e28123f9c3e7393ea0a49052bc0a3b91a0db4f (patch)
tree7fecbc23e4f5a783d6d26d58edaf0481d4a17feb /tex/context/base/mkiv/mlib-pps.lua
parenta80891cbf45f9705865ea2774b4e1abdcd36dbf9 (diff)
downloadcontext-00e28123f9c3e7393ea0a49052bc0a3b91a0db4f.tar.gz
2018-06-24 18:36:00
Diffstat (limited to 'tex/context/base/mkiv/mlib-pps.lua')
-rw-r--r--tex/context/base/mkiv/mlib-pps.lua39
1 files changed, 25 insertions, 14 deletions
diff --git a/tex/context/base/mkiv/mlib-pps.lua b/tex/context/base/mkiv/mlib-pps.lua
index da1e9c4f7..6c2dfe4cd 100644
--- a/tex/context/base/mkiv/mlib-pps.lua
+++ b/tex/context/base/mkiv/mlib-pps.lua
@@ -97,13 +97,22 @@ end
local f_f = formatters["%F"]
local f_f3 = formatters["%.3F"]
-
local f_gray = formatters["%.3F g %.3F G"]
local f_rgb = formatters["%.3F %.3F %.3F rg %.3F %.3F %.3F RG"]
local f_cmyk = formatters["%.3F %.3F %.3F %.3F k %.3F %.3F %.3F %.3F K"]
local f_cm = formatters["q %F %F %F %F %F %F cm"]
local f_shade = formatters["MpSh%s"]
+directives.register("metapost.stripzeros",function()
+ f_f = formatters["%N"]
+ f_f3 = formatters["%.3N"]
+ f_gray = formatters["%.3N g %.3N G"]
+ f_rgb = formatters["%.3N %.3N %.3N rg %.3N %.3N %.3N RG"]
+ f_cmyk = formatters["%.3N %.3N %.3N %.3N k %.3N %.3N %.3N %.3N K"]
+ f_cm = formatters["q %N %N %N %N %N %N cm"]
+ f_shade = formatters["MpSh%s"]
+end)
+
local f_spot = formatters["/%s cs /%s CS %s SCN %s scn"]
local function checked_color_pair(color,...)
@@ -998,19 +1007,21 @@ local tx_reset, tx_analyze, tx_process do
----- pat = tsplitat(":")
local pat = lpeg.tsplitter(":",tonumber) -- so that %F can do its work
- -- local f_gray_yes = formatters["s=%F,a=%F,t=%F"]
- -- local f_gray_nop = formatters["s=%F"]
- -- local f_rgb_yes = formatters["r=%F,g=%F,b=%F,a=%F,t=%F"]
- -- local f_rgb_nop = formatters["r=%F,g=%F,b=%F"]
- -- local f_cmyk_yes = formatters["c=%F,m=%F,y=%F,k=%F,a=%F,t=%F"]
- -- local f_cmyk_nop = formatters["c=%F,m=%F,y=%F,k=%F"]
-
- local f_gray_yes = formatters["s=%n,a=%n,t=%n"]
- local f_gray_nop = formatters["s=%n"]
- local f_rgb_yes = formatters["r=%n,g=%n,b=%n,a=%n,t=%n"]
- local f_rgb_nop = formatters["r=%n,g=%n,b=%n"]
- local f_cmyk_yes = formatters["c=%n,m=%n,y=%n,k=%n,a=%n,t=%n"]
- local f_cmyk_nop = formatters["c=%n,m=%n,y=%n,k=%n"]
+ local f_gray_yes = formatters["s=%.3F,a=%i,t=%.3F"]
+ local f_gray_nop = formatters["s=%.3F"]
+ local f_rgb_yes = formatters["r=%.3F,g=%.3F,b=%.3F,a=%.3F,t=%.3F"]
+ local f_rgb_nop = formatters["r=%.3F,g=%.3F,b=%.3F"]
+ local f_cmyk_yes = formatters["c=%.3F,m=%.3F,y=%.3F,k=%.3F,a=%.3F,t=%.3F"]
+ local f_cmyk_nop = formatters["c=%.3F,m=%.3F,y=%.3F,k=%.3F"]
+
+ directives.register("metapost.stripzeros",function()
+ f_gray_yes = formatters["s=%.3N,a=%i,t=%.3N"]
+ f_gray_nop = formatters["s=%.3N"]
+ f_rgb_yes = formatters["r=%.3N,g=%.3N,b=%.3N,a=%.3N,t=%.3N"]
+ f_rgb_nop = formatters["r=%.3N,g=%.3N,b=%.3N"]
+ f_cmyk_yes = formatters["c=%.3N,m=%.3N,y=%.3N,k=%.3N,a=%.3N,t=%.3N"]
+ f_cmyk_nop = formatters["c=%.3N,m=%.3N,y=%.3N,k=%.3N"]
+ end)
if metapost.use_one_pass then