![同时拥有 Luatex85.sty 和正确的 \ifpdftex(通过 iftex.sty)](https://linux22.com/image/417821/%E5%90%8C%E6%97%B6%E6%8B%A5%E6%9C%89%20Luatex85.sty%20%E5%92%8C%E6%AD%A3%E7%A1%AE%E7%9A%84%20%5Cifpdftex%EF%BC%88%E9%80%9A%E8%BF%87%20iftex.sty%EF%BC%89.png)
在 Luatex 或 LuaHBTex 下,加载luatex85.sty
成功\ifpdftex
。这可能是设计使然,但是\ifpdftex
在处理完仍然需要的旧包后,我们如何才能恢复到正确状态luatex85.sty
?
就我而言,我需要tufte-latex
按照luatex85.sty
这里所述的方式进行欺骗:我无法将 \maketitle 与 tufte 和 lualatex 一起使用。但是,我的处理双向文本的包需要正确区分 PDFTex、Xetex 和 Luatex。有没有办法在同一个包中同时提供这两种解决方案(或其他解决方法)?
平均能量损失
\RequirePackage{luatex85}
\documentclass{minimal}
\usepackage{iftex}
\begin{document}
\ifluatex
This is Lua
\fi
\ifluahbtex
This is Lua HB
\fi
\ifpdftex
This is PDFTex
\fi
\ifxetex
This is xetex
\fi
\end{document}
答案1
最好只是修复该类或使用特定补丁对其进行修补,而不是使用 luatex85 为其添加兼容性定义一切
但是你可以添加一个额外的测试:
\RequirePackage{luatex85}
\documentclass{minimal}
\usepackage{iftex}
\begin{document}
\ifluatex
This is Lua
\fi
\ifluahbtex
This is Lua HB
\fi
\ifpdftex
\ifluatex
This is LuaTex
\else
This is PDFTex
\fi
\fi
\ifxetex
This is xetex
\fi
\end{document}
使用 lualatex 你会得到