ConTeXt:使用 \structureuservariable 动态设置部分周围的框架宽度

ConTeXt:使用 \structureuservariable 动态设置部分周围的框架宽度

我想生成图形部分(用于海报/幻灯片),其中部分由框架包围,部分标题本身也有一个图形。但是,我想生成具有可变宽度的图形/框架,在放置部分时定义。它似乎应该非常\structureuservariable适合这项任务(我可以用它来设置颜色),但这种方法不适用于宽度:

\defineframedtext[Highlight]

\setuphead[section]
[textcolor=\structureuservariable{color}, 
before={\startHighlight[width=local,framecolor=\structureuservariable{color}]},
after={\stopHighlight},
beforesection={\startHighlight[width=\structureuservariable{width}]},
aftersection={\stopHighlight}]

\starttext

\startsection[title={Test}][width=2in, color=red]

% Double checking that \structureuservariable works with width
\startHighlight[width=\structureuservariable{width}]
test
\stopHighlight

\stopsection
\stoptext

如上例所示,在部分内定义一个框架,使用正确的宽度就可以正常工作,但不能使用beforesection/aftersection键。

\structureuservariable无论使用与否,是否有办法让它工作?

相关内容