使用@PhilippGesang 提供的解决方案每行文本渐变由于某种原因,我的 texlive 找不到文件,尽管我已经把自己搞得半死不活了。我的环境是 ubuntu 14.04,texlive 2015,我在命令行进行编译,例如:lualatex beeTest.tex
我一直在绞尽脑汁想解决这个问题。我收到的错误消息如下:
(./beegradients.tex
! Undefined control sequence.
l.1 \RequireLuaModule
{beegradients}
?
检查文件是否存在:
myuser@ThinkPad:~$ kpsewhich beegradients.tex
/usr/local/texlive/2015/texmf-dist/tex/generic/beegradients/beegradients.tex
myuser@ThinkPad:~$ kpsewhich beegradients.lua
/usr/local/texlive/2015/texmf-dist/tex/luatex/beegradients/beegradients.lua
我的测试文档,来自我之前提到的帖子:
\documentclass {scrartcl}
\usepackage {fontspec} %% this loads luaotfload as well
\setmainfont {Antykwa Poltawskiego}
\input beegradients.tex
\definegradientgroup [red-green-blue][255*0*0, 0*255*0, 0*0*255]
\begin {document}
\startbeegradients [red-green-blue]
\input knuth
\stopbeegradients
\end {document}
当我尝试使用 TeXstudio 运行它时的错误日志:
line 1: Undefined control sequence \RequireLuaModule
line 1: Missing \begin{document}. \RequireLuaModule {b
line 9: Undefined control sequence \startbeegradients
line 9: Use of \startbeegradientsindeed doesn't match its definition \startbeegradients
line 9: Too many }'s \startbeegradients
: No file texstudio_b31384.aux.
我尝试将 beegradients.tex 文件和 beegradients.lua 文件放在与测试文档相同的目录中,但仍然出现相同的错误Undefined control sequence \RequireLuaModule
非常感谢任何知道问题所在之人。
谢谢大家。
答案1
添加\usepackage{luatexbase}
定义\RequireLuaModule
\documentclass {scrartcl}
\usepackage {fontspec} %% this loads luaotfload as well
\setmainfont {Antykwa Poltawskiego}
\usepackage{luatexbase}
\makeatletter
\let\lltxb@ifnextchar\@ifnextchar
\makeatother
\input beegradients.tex
\definegradientgroup [red-green-blue][255*0*0, 0*255*0, 0*0*255]
\begin {document}
\startbeegradients [red-green-blue]
\input knuth
\stopbeegradients
\end {document}
对于 0.85 之后的 luatex,你需要将 lua 文件的第 38 行从
local pdf_literal_t = 8
到
local pdf_literal_t = 16
因为节点(子)id已经改变。