Hello,
I had the same problem, so I desided to define colors by hand.
\definecolor [lightgray] [h=D3D3D3]
\usemodule[tikz]
\unprotect
\pgfutil@definecolor{black}{gray}{0}
\pgfutil@definecolor{gray}{gray}{0.5}
\pgfutil@definecolor{lightgray}{gray}{0.9}
\pgfutil@definecolor{white}{gray}{1}
\protect
If you want to fix script, you need to change line:
local cv = colors.value(attributes)
into
local cv = attributes.colors.values
Just guess, untested.
Regards,
Marius
On 27 October 2010 15:49, Cedric Mauclair
Hi,
Same problem here with the latest TikZ 2.10.
Regards.
-- Cédric
On Tue, Oct 26, 2010 at 12:20, Michael Murphy
wrote: Hi,
I've been trying to get colors to work in TikZ, and found a nice fix by Aditya here:
http://archive.contextgarden.net/message/20100120.220124.f2d3f8bc.en.html
The problem is that the lua script doesn't work: I get a problem with 'colors'.
LuaTeX error <main ctx instance>:13: attempt to index global 'colors' (a nil value) stack traceback: <main ctx instance>:13: in function 'registercolor' <main ctx instance>:1: in main chunk.
The input file from Aditya (called colorfix.tex) is
\startluacode pgfutil = pgfutil or { } local texsprint, format = tex.sprint, string.format local prtcatcodes = tex.prtcatcodes
function pgfutil.unsupported_color(name) texsprint(prtcatcodes,format("\\PackageError{pgf}{color %s has unsupported model}{}", name)) texsprint(prtcatcodes,format("\\pgfutil@definecolor{%s}{gray}{0}", name)) end
function pgfutil.registercolor(name, attributes) print(name, attributes) local cv = colors.value(attributes) if cv then local model = cv[1] if model == 1 then print("model=1") texsprint(prtcatcodes,format("\\pgfutil@definecolor{%s}{gray}{% 1.3f}", name, cv[2])) elseif model == 3 then print("model=2") texsprint(prtcatcodes,format("\\pgfutil@definecolor{%s}{rgb}{% 1.3f,%1.3f,%1.3f}", name, cv[3], cv[4], cv[5])) else print("no model") pgfutil.unsupported_color(name) end else print("no color") pgfutil.unsupported_color(name) end end \stopluacode
\unprotect \def\pgfutil@registercolor#1% {\ctxlua{pgfutil.registercolor("#1",\thecolorattribute {#1})}} \protect
and my test file is
\usemodule[tikz] \input colorfix
\definecolor[mycolor][r=1,g=0,b=1]
\starttext \starttikzpicture \fill[mycolor] (0,0) circle (1); \stoptikzpicture \stoptext
I'm running the latest beta.
___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___________________________________________________________________________________
___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___________________________________________________________________________________