问题标签 [xelatex]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
971 浏览

latex - 如何将包含空格的选项传递给 LaTeX/XeLaTeX 中的包

当我声明一个包含空格的选项时,LaTeX/XeLaTeX 会吃掉它。

在主要的.tex中,我有:

在我的 .sty 文件中,我有:

但是 Tex 引擎传递给 package testfont选项而不是test font

所以问题是如何将包含空间的选项传递给包。

0 投票
2 回答
63542 浏览

latex - 使用 \parindent 和 \parskip 与 \paragraph{} 没有效果

我正在使用memoir. XeLaTeX我在创建正确的段落演示文稿时遇到了麻烦,尤其是当我使用\paragraph{}lorem ipsumLaTeX 创建段落时,我忽略了\parskipand\parindent设置。

例如,如果我有一个文件

这种排版是这样的:

    orem ipsum dolor sit amet,consectetur adipiscing elit。Aliquam enim urna,mattis eu aliquet eget,调味品 id nibh。在 hac habitasse platea dictumst 中。

   ipsum dolor sit amet,consectetur adipiscing elit。Aliquam enim urna,mattis eu aliquet eget,调味品 id nibh。在 hac habitasse platea dictumst 中。

尽管设置为零\parskip,但这错误地同时具有段落缩进和跳过。\parindent

人们会期望排版输出看起来像这样(这是一种丑陋的段落格式选择,但说明了问题):

orem ipsum dolor sit amet,consectetur adipiscing elit。Aliquam enim urna,mattis eu aliquet eget,调味品 id nibh。在 hac habitasse platea dictumst 中。
ipsum dolor sit amet,consectetur adipiscing elit。Aliquam enim urna,mattis eu aliquet eget,调味品 id nibh。在 hac habitasse platea dictumst 中。

我注意到,当我用两个换行符分隔段落时(即不使用\paragraph{}, 和),\parskipand\parindent设置得到尊重。

我很高兴知道为什么在使用 时\paragraph{}\parskip命令\parindent不被尊重,以及如何让这些命令得到尊重,或者什么命令可以与用 . 创建的段落达到相同的效果\paragraph{}

感谢您的阅读。

布赖恩

0 投票
5 回答
21801 浏览

latex - 用 latexmk 编译 XeLaTeX tex 文件

如何在 Mac OS X 上编译XeLaTeXtex 文档?latexmk

目前我正在运行latexmk job.tex并收到错误:

我的 tex 文件的第一行是(正如这篇文章所建议的):

我已经尝试过其他方法(例如 program=xelatex),但无济于事。

latexmk描述其命令如下:

似乎没有任何逻辑机制可以从命令行选择 tex 程序,而且从源代码中也不清楚如何做到这一点。

我也看过rubber,但它似乎也不起作用。

感谢您提供的任何见解。

布赖恩

0 投票
3 回答
1795 浏览

latex - XeTeX - 检测何时需要重新运行

由于未定义的引用,我正在尝试确定何时需要重新运行 Xe(La)TeX。我在SCons 邮件列表上发布了一个相关的问题,问题如下:

SCons 和其他构建系统目前有时无法检测到需要多次运行 XeLaTeX 的页数和其他引用。这是一个示例文件(我们称之为job.tex):

如果您运行xelatex job,则生成的 .pdf 的三页页码为“Page 1 of 0”、“Page 2 of 0”和“Page 3 of 0”。如果您xelatex job第二次运行,您会得到“第 1 页,共 3 页”等(即正确的页数)。

为了解决这个问题,我在 SCons 邮件列表中建议检查是否运行 xelatex 来解析未定义的引用是更改以下正则表达式(在SCons.Tools.tex版本 2.0.1.beta.20100627.r5064 的第 71 行):

实际上,这是对“No file job.aux”的检查。事实证明这在所有情况下都有效,因为 Xe(La)TeX 在第一次运行时总是会打印“No file job.aux”,因此 Xe(La)TeX 总是运行两次。实际上,这与成为和job.aux之间的临时构建目标相同。job.texjob.pdf

这就是问题所在:即使没有未定义的引用(例如\arabic{lastpage}job.tex上面删除) Xe(La)TeX 被调用两次,一次生成.aux,一次生成.pdf。显然,如果没有未定义的引用,那么第二次调用是多余的。

job.log因此我的问题是:当存在或不存在需要重新编译的未定义引用(例如 \arabic{lastpage})时,如何检测 - 大概是通过正则表达式测试的方式。

感谢您的阅读。

此致,

布赖恩

0 投票
1 回答
1181 浏览

xetex - 在 xelatex 中启用字符突出的正确方法是什么?

我正在使用 XeTeX 3.1415926-2.2-0.9997.4(TeX Live 2010 的一部分)。它的新功能之一是字符突出,我想在我的文档中使用它。问题是我不能让它工作。

来自 xetex.tk wiki 的XeTeX 示例正确编译并显示突出字符。虽然我创建的 XeLaTeX 文件根本没有显示任何突出。

谁能告诉我我做错了什么?

0 投票
1 回答
2619 浏览

latex - 我可以用 LaTeX 而不是 TeX 编写 cls 文件吗?

我在 XeLaTeX 文件中有一些初始化代码,我想将其放入单独的文件中,以便在以后的文本中重用它。将我的 XeLaTeX 代码转换为 LaTeX 类文件的最快方法是什么?

0 投票
2 回答
5821 浏览

latex - XeLatex 中的 Unicode 字符

这是我的 LaTex 脚本:

我通过 eclipse 插件使用 xelatex 编译它。

由于 Jenson Classico 没有波兰语字符,我已编辑此字体以添加它们。在 Microsoft Office 中它工作正常(我可以使用波兰语字符)。不幸的是,在从上面的 tex 文件生成的 pdf 中它没有。如果我使用任何其他字体(例如 Arial),它就像做梦一样。

有什么建议吗?我真的没有更多的想法了...

0 投票
1 回答
2652 浏览

text - 如何更改乳胶中页码的格式/字体?

我不只是指如何切换到罗马数字,我想改变字体和大小。我目前正在使用 article 类,但我看不到它的任何特定部分负责页脚,所以我想知道这是否可能不适用于很多类。

编辑:我不需要制作自定义页面布局或页面样式。

0 投票
4 回答
37112 浏览

latex - 如何从子目录加载乳胶 .sty 文件?

我使用了一些不属于 texlive 的 .sty 文件,并希望将它们放在包含我的 main.tex 的文件夹的子目录中。我使用以下行来加载包:

这行得通,但是用 xelatex 编译 main.tex 并使用橡胶给了我一个警告:

有没有办法防止这个警告或处理这种情况,而不必在所有 .sty-files 的 \ProvidesPackage 命令中包含“sty\”或设置 TEXINPUTS 环境变量(这似乎不可能从 main.tex 本身) ?

0 投票
1 回答
2818 浏览

latex - LaTeX:从命令变量中提取数字和字母并转换为罗马数字

我正在写一篇论文,并且在很多场合都在寻找解决我的编程问题的方法。基本上,我有一系列项目,我在我的研究数据中区分为“A1”、“A2”、“A3”、……、“A13”、“B1”、B2 等等。这些数据标签, 顺便说一句, 我现在不能更改, 因为它在我的论文中一直使用. 它们总是格式化为 [caps-letter][digit(length of 1 to 2 chars)], 例如, X20 或 L9. 对于每个数据项目,我想指定一个特定的名称。因为 LaTeX 不允许在命令中使用数字,所以我已经创建了以下类型的命令的 LONG 列表来为每个数据标签分配名称:

等等。基本上,如您所见,我将命令命名为“\DataName”,后跟字母(大写字母),然后是写成罗马数字的数字。这一切都是手动完成的,我这样做只是因为 LaTeX 似乎不喜欢命令名称中的任何阿拉伯数字。如果允许的话,我会使用 \DataNameA1 等。

在其他地方,我还有一个命令来专门引用数据:

现在,我想分配一个只能接受一个变量的乳胶命令,即数据标签(无论是“Q30”还是“A3”),并使用 \GotoData 命令以及在 \数据名称*** 命令。也就是说,例如,键入 \CompleteData{E10},然后让 LaTeX 加载如下内容:

“这是名为 [E10 的数据名称] 的 [数据 E10]。”

这意味着该命令可能类似于:

如您所见,上面的代码是不完整的:我不知道如何使用#1 变量在\CompleteData newcommand 中生成必要的\DataName*** 命令。

所以基本上,我认为实现此结果的唯一方法是提取代码并将最后一个数字(一到两位长)转换为罗马数字。具体来说,我一直在试图弄清楚如何做一些事情:

  1. 如何仅从新命令中的参数末尾提取数字(例如我的“Q31”或“A1”参数中的数字)。
  2. 类似地从参数的第一个字符中提取字母
  3. 如何将数字转换为数字

我尝试了许多不同的方式进行搜索,但似乎从来没有找到我需要回答这两个问题的内容……当我找到这个 网站时,我以为我已经很接近了,但后来意识到这不是我想要的。etextools LaTeX 包看起来也很有希望,但我太新手(甚至不是程序员),无法从我的 TexLive (2010) 安装附带的帮助 PDF 中理解。我还阅读了有关 \roman 和 \romannumeral 的信息(例如,here),但是当我出于某种原因编译时,这两个命令会导致错误。在我的电脑上,\roman{2} 变成了“roman”,而 \romannumeral{2} 变成了“2”。只是不明白它们是如何工作的。

任何指导、演示代码或提示将不胜感激!谢谢你。