diff options
author | Hans Hagen <pragma@wxs.nl> | 2010-04-16 21:08:00 +0200 |
---|---|---|
committer | Hans Hagen <pragma@wxs.nl> | 2010-04-16 21:08:00 +0200 |
commit | 5d4880ac91b0e605b3392d15dd7572489b92333e (patch) | |
tree | 8e0a6ef300fcee6646de8967f1d504a566026f4f /tex/context/base/colo-ini.lua | |
parent | f23cb4ae64dc24ea24aaa2d1fdf049756063cfff (diff) | |
download | context-5d4880ac91b0e605b3392d15dd7572489b92333e.tar.gz |
beta 2010.04.16 21:08
Diffstat (limited to 'tex/context/base/colo-ini.lua')
-rw-r--r-- | tex/context/base/colo-ini.lua | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/tex/context/base/colo-ini.lua b/tex/context/base/colo-ini.lua index 4546f5279..b92f7561f 100644 --- a/tex/context/base/colo-ini.lua +++ b/tex/context/base/colo-ini.lua @@ -191,15 +191,18 @@ function colors.defineprocesscolor(name,str,global,freeze) -- still inconsistent local r = match(str,"^#(.+)$") -- for old times sake (if we need to feed from xml or so) local t = (r and { h = r }) or settings_to_hash_strict(str) if t then - if t.h then + if t.v then + local r, g, b = colors.hsvtorgb(tonumber(t.h) or 0, tonumber(t.s) or 1, tonumber(t.v) or 1) -- maybe later native + definecolor(name, register_color(name,'rgb',r,g,b), global) + elseif t.h then local r, g, b = match(t.h .. "000000","(..)(..)(..)") -- watch the 255 - definecolor(name, register_color(name,'rgb',(tonumber(r,16) or 0)/255,(tonumber(g,16) or 0)/255,(tonumber(b,16) or 0)/255 ), global) + definecolor(name, register_color(name,'rgb',(tonumber(r,16) or 0)/255,(tonumber(g,16) or 0)/255,(tonumber(b,16) or 0)/255), global) elseif t.r or t.g or t.b then - definecolor(name, register_color(name,'rgb', tonumber(t.r) or 0, tonumber(t.g) or 0, tonumber(t.b) or 0 ), global) + definecolor(name, register_color(name,'rgb', tonumber(t.r) or 0, tonumber(t.g) or 0, tonumber(t.b) or 0), global) elseif t.c or t.m or t.y or t.k then - definecolor(name, register_color(name,'cmyk',tonumber(t.c) or 0, tonumber(t.m) or 0, tonumber(t.y) or 0, tonumber(t.k) or 0), global) + definecolor(name, register_color(name,'cmyk',tonumber(t.c) or 0, tonumber(t.m) or 0, tonumber(t.y) or 0, tonumber(t.k) or 0), global) else - definecolor(name, register_color(name,'gray',tonumber(t.s) or 0), global) + definecolor(name, register_color(name,'gray',tonumber(t.s) or 0), global) end if t.a and t.t then definetransparent(name, transparencies.register(name,transparent[t.a] or tonumber(t.a) or 1,tonumber(t.t) or 1), global) |