diff options
author | Hans Hagen <pragma@wxs.nl> | 2009-09-15 12:27:00 +0200 |
---|---|---|
committer | Hans Hagen <pragma@wxs.nl> | 2009-09-15 12:27:00 +0200 |
commit | 2527b228386c22af57e3d72a739c74930fd09eb6 (patch) | |
tree | 34994fdc3f4798fc638a7c7668872cacae827248 /tex/context/base/attr-ini.mkiv | |
parent | b6f05180d27bb8e4cb3e570633f16185eba987fe (diff) | |
download | context-2527b228386c22af57e3d72a739c74930fd09eb6.tar.gz |
beta 2009.09.15 12:27
Diffstat (limited to 'tex/context/base/attr-ini.mkiv')
-rw-r--r-- | tex/context/base/attr-ini.mkiv | 37 |
1 files changed, 28 insertions, 9 deletions
diff --git a/tex/context/base/attr-ini.mkiv b/tex/context/base/attr-ini.mkiv index b90d4976b..49a109e7d 100644 --- a/tex/context/base/attr-ini.mkiv +++ b/tex/context/base/attr-ini.mkiv @@ -20,6 +20,21 @@ \registerctxluafile{attr-ini}{1.001} +%D This might move: + +\def\pushattribute#1% + {\global\advance\csname\??ae:\string#1\endcsname\plusone + \global\expandafter\mathchardef\csname\??ae:\string#1:\number\csname\??ae:\string#1\endcsname\endcsname\attribute#1} + +\def\popattribute#1% + {\attribute#1\csname\??ae:\string#1:\number\csname\??ae:\string#1\endcsname\endcsname + \global\advance\csname\??ae:\string#1\endcsname\minusone} + +\def\installattributestack#1% + {\expandafter\newcount\csname\??ae:\string#1\endcsname} + +%D For the moment we put this here (later it will move to where it's used): + \definesystemattribute[state] \definesystemattribute[skip] \definesystemattribute[penalty] @@ -27,7 +42,7 @@ \definesystemattribute[color] \chardef\colorattribute \dogetattributeid{color} \definesystemattribute[transparency] \chardef\transparencyattribute \dogetattributeid{transparency} \definesystemattribute[background] \chardef\backgroundattribute \dogetattributeid{background} -\definesystemattribute[overprint] +\definesystemattribute[colorintent] \chardef\colorintentattribute \dogetattributeid{colorintent} \definesystemattribute[negative] \definesystemattribute[effect] \definesystemattribute[viewerlayer] \chardef\viewerlayerattribute \dogetattributeid{viewerlayer} @@ -84,16 +99,20 @@ % overprint -\def\registeroverprint#1#2% - {\setevalue{(os:#1)}{\dosetattribute{overprint}{\ctxlua{tex.print(overprints.register('#2'))}}}} +\def\registercolorintent#1#2% + {\setevalue{(os:#1)}{\dosetattribute{colorintent}{\ctxlua{tex.print(colorintents.register('#2'))}}}} + +\def\dotriggercolorintent + {\ctxlua{colorintents.enabled=true}% + \gdef\dotriggercolorintent##1{\csname(os:##1)\endcsname}% + \dotriggercolorintent} + +\registercolorintent{knockout} {knockout} +\registercolorintent{overprint}{overprint} -\def\dotriggeroverprint - {\ctxlua{overprints.enabled=true}% - \gdef\dotriggeroverprint##1{\csname(os:##1)\endcsname}% - \dotriggeroverprint} +\installattributestack\colorintentattribute -\registeroverprint{knockout} {knockout} -\registeroverprint{overprint}{overprint} +\setevalue{(os:#\v!none}{\doresetattribute{colorintent}} % does this work out ok? % negative |