\aaa
是一个 macro, 不需要吃参数\textbf
是一个 function, 需要吃参数
\aaa
是一个 macro, 不需要吃参数\textbf
是一个 function, 需要吃参数
首先需要明白的是 tex/expl3
是一门宏语言, 没有函数, 也没有返回值, 有的只是宏展开
\tl_set:Ne \l__skyrmion_tmp_tl
{
\__skyrmion_process_array_aux:nn
{ example-image-a/yyyy1-mm1-dd1,example-image-b/yyyy2-mm2-dd2 }{2}
}
e
展开了个寂寞, \cs_new_protected_nopar:Npn \__skyrmion_process_array_aux:nn
\__skyrmion_process_array_aux:nn
的运行结果交给变量 \l__skyrmion_tmp_tl
, 你可以使用 \tl_analysis_log:N \l__skyrmion_tmp_tl
看看它究竟是个什么东西. (一堆未展开的东西)expl3
中得到所谓的函数展开值, 建议将其声明在参数列表中\cs_new_protected_nopar:Npn \__skyrmion_process_array_aux:nnN #1#2#3
{
\clist_set:Nn \l__skyrmion_tmp_clist {#1}
\seq_set_split:Nne \l__skyrmion_tmp_seq {/}
{ \clist_item:Nn \l__skyrmion_tmp_clist {#2} }
% here ^_^
\tl_set:Ne #3
{ \seq_item:Nn \l__skyrmion_tmp_seq {1} }
\seq_clear:N \l__skyrmion_tmp_seq
\clist_clear:N \l__skyrmion_tmp_clist
}
使用
\__skyrmion_process_array_aux:nnN
{ example-image-a/yyyy1-mm1-dd1,example-image-b/yyyy2-mm2-dd2 }{2}
\l__skyrmion_tmp_tl
\includegraphics [ width = 2cm ] { \l__skyrmion_tmp_tl }
.
一个比较粗糙的答案
\documentclass{article}
\usepackage{lipsum}
\usepackage{graphicx}
% \def\picLevel{s} %% here
\def\picLevel{m} %% here
\NewCommandCopy{\originincludegraphics}{\includegraphics}
\RenewDocumentCommand{\includegraphics}{O{}m}{%
\originincludegraphics[#1]{#2_\picLevel}%
}
\begin{document}
\lipsum[1]
\begin{figure}[ht]
\begin{minipage}[t]{0.5\textwidth}
\centering
\includegraphics[scale=1]{bee}
\end{minipage}
\begin{minipage}[t]{0.5\textwidth}
\centering
\includegraphics[scale=1]{cat}
\end{minipage}
\end{figure}
\lipsum[2]
\end{document}
读手册, 读手册, 读手册
不要想当然, 不要想当然, 不要想当然
封面这个都够你用了
你这里的 {ccc}
是你自己想当然加上的???,
读手册, 读手册, 读手册
不要想当然, 不要想当然, 不要想当然
\documentclass{article}
\usepackage{tabularray}
\begin{document}
\begin{tblr}{
rowspec = {ccc},
row{odd}={gray},row{even}={cyan}
}
1 &2 &3\\
1 &2 &3\\
1 &2 &3\\
1 &2 &3\\
\end{tblr}
\end{document}
\documentclass{article}
\ExplSyntaxOn
\seq_new:N \l__skyrmion_tmp_seq
\NewDocumentCommand \foo {O{3\c_colon_str2}}
{
\group_begin:
\seq_set_split:Nee \l__skyrmion_tmp_seq {\c_colon_str} {#1}
\exp_args:NNe \seq_item:Nn \l__skyrmion_tmp_seq {1},~ and~
\exp_args:NNe \seq_item:Nn \l__skyrmion_tmp_seq {2}
\group_end:
}
\ExplSyntaxOff
\begin{document}
\foo
\foo[1:2]
\end{document}
minimum size
会先经过 \pgfmathparse
解析,得到的是一个不带单位的数值
即当你键入 minimum size = sqrt(3)
得到的是 minimum size = 1.732...
, 默认单位是 pt
, 所以会得到你当前的结果
最简单的解决方案是 minimum size = sqrt(3) * 1cm
当然还可以自己定义一个 operator
,
\pgfmathdeclarefunction{cm}{1}{%
\pgfmathparse{#1 * 28.45274}%
}
\pgfmathdeclareoperator{cm}{cm}{2}{postfix}{250}
再使用 minimum size = sqrt(3)cm
\documentclass[tikz,border=2pt]{standalone}
\pgfmathdeclarefunction{cm}{1}{%
\pgfmathparse{#1 * 28.45274}%
}
\pgfmathdeclareoperator{cm}{cm}{2}{postfix}{250}
\begin{document}
\begin{tikzpicture}
\draw [gray!70] (0cm,0cm) grid (2cm,2cm);
\node at (0,0) [minimum size={1.7cm},draw,circle] {};
\node at (0,0) [minimum size= sqrt(3)cm,draw=red,circle] {};
\end{tikzpicture}
\end{document}
用
\begin{flushright}
...
\end{flushright}
试试?
观察报错信息
(c:/texlive/texmf-local/tex/latex/mtpro2/mtpro2.sty
! LaTeX Error: Command \Bbbk already defined.
Or name \end... illegal, see p.192 of the manual.
See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...
l.1487 \newcommand{\Bbbk}{\mathbb{k}}
是由于 \Bbbk
已定义导致的冲突, 这是由于 amssymb
和 mtpro2
均定义了这个命令, beamer 默认会载入 amssymb
, 可使用 @u20011 提供的解决方案
也可以做如下尝试
\fancyfoot[C]{\kaishu{}理科数学试题\quad 第\thepage 页 \refstepcounter{page}\quad (共~\pageref{LastPage}~页)\hspace*{13cm} 理科数学试题\quad 第\thepage 页 \quad (共~\pageref{LastPage}~页)}
页脚配置改成如上代码即可.
GEEexam.sty
\item[二、多项选择题:] 本题共 3 小题,每小题 6 分,共 18 分. 在每小题给出的选项中,有多项符合题目要求. 全部选对的得 6 分,部分选对的得部分分,有选错的得 0 分.
改成
\item[] 二、多项选择题:本题共 3 小题,每小题 6 分,共 18 分. 在每小题给出的选项中,有多项符合题目要求. 全部选对的得 6 分,部分选对的得部分分,有选错的得 0 分.
代码有三处问题,
mathsymbol-zh-cn.otf
, 可以下载该字体到文件夹内,也可以选择将 mathsymbolzhcn.sty
中第 8 行\newfontfamily\unicodefont{mathsymbol-zh-cn.otf}
更改为
\let\unicodefont\relax
推荐前者.
ZKSJ.cls
中所有的 pre label=,
全部删掉或者更改为 pre label={},
如下图2024_武珞路_有理数02.tex
中第 267 行多了个 &
符号,这是你自己的低级错误.另外多一句嘴,为什么不用 exam-zh
呢?
去掉
texcl = true
\documentclass[a4paper]{article} %确定是A4纸格式
\usepackage{geometry}
\geometry{a4paper,left=2.5cm,right=2.5cm,top=2.5cm,bottom=2.5cm}
%页边距左、右、上、下
\usepackage[UTF8,heading=true]{ctex} %导入中文包
%%%%%%%%页眉页脚的处理%%%%%%%%%%%%
\usepackage{fancyhdr}
\pagestyle{fancy}
\renewcommand{\headrulewidth}{0pt} % 移除页眉横线
\renewcommand{\footrulewidth}{0pt} % 移除页脚横线
\lfoot{}%这条语句可以让页码出现在下方
%%%%%%%%页眉页脚的处理%%%%%%%%%%%%
\usepackage{abstract} %导入摘要页
\renewcommand{\abstractname}{\bf\songti\zihao{4} 摘\hspace{1cm}要}%设置“摘要”两字的大小与间距
\setlength{\absleftindent} {1pt} %摘要的右缩进
\setlength{\absrightindent}{1pt} %摘要的左缩进
%调用数学公式包
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{listings}%用于设置插入附录的代码
\usepackage[dvipsnames]{xcolor} % 更全的色系
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% listings设置
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\lstset{
language = Matlab,
backgroundcolor = \color{gray!10}, % 背景色:灰色
basicstyle = \normalsize\ttfamily, % 基本样式 + 小号字体
rulesepcolor= \color{blue!30}, % 代码块边框颜色
breaklines = true, % 代码过长则换行
flexiblecolumns,
numbers = left, % 行号在左侧显示
numberstyle = \small, % 行号字体
keywordstyle = \color{blue}, % 关键字颜色
commentstyle =\color{black!40!green}, % 注释颜色
stringstyle = \color{red!100}, % 字符串颜色
frame = shadowbox, % 用(带影子效果)方框框住代码块
showspaces = false, % 不显示空格
columns = fixed, % 字间距固定
% texcl=true,
escapeinside=``,
}
%改变公式大小但不改变公式标号大小的设置%
\makeatletter
\renewcommand{\maketag@@@}[1]{\hbox{\m@th\normalsize\normalfont#1}}%
\makeatother
%改变公式大小但不改变公式标号大小的设置%
%自定义标题设置
%正文部分是小四,一级标题是三号,二级标题是小三,三级标题是四号
\ctexset{
section = {
format = \centering\bf\songti\zihao{3}, % 设置一级标题的字体格式
name = {}, % 通常章节标题前不需要标点
number = \chinese{section}, % 中文编号
aftername = 、, % 章节标题后通常使用点号
},
subsection = {
format = \bf\songti\zihao{4}, % 设置二级标题的字体格式
name = {},
aftername = 、,
},
subsubsection = {
format = \bf\songti\zihao{-4}, % 设置三级标题的字体格式
aftername = 、,
}
}
\fancyhead{} % 清除所有页眉内容
\usepackage{enumitem}
%.svg图片
\usepackage{svg}
%表格调整
\usepackage{tabularx}
%表格加粗
\usepackage{booktabs}
%设置表格间距
\usepackage{caption}
%允许表格长跨页
\usepackage{longtable}
%调用浮动包
\usepackage{float}
\usepackage{subfig}
%调用表格
\usepackage{multirow}
\captionsetup[table]{labelsep=space} %去除表格标题的冒号
\usepackage{times}
\usepackage{graphicx}
\graphicspath{{figures/}} %图片在当前目录下的figures目录
\linespread{1.25} %行间距
\usepackage{multirow} % 用于合并行
\begin{document}
\begin{lstlisting}[language = Matlab]
clc;
close all;
clear;
load('Position_Longshen.mat')
load('Position_Longtou.mat')
load('Position_Longtou_Hou.mat')
load('data.mat')
%Position = [Position_Longtou;Position_Longtou_Hou;Position_Longshen];
Position = data;
% plot(Position(1:2:end,end),Position(2:2:end,end),'g');
% axis equal;
% hold on;
%求矩形的左下点
syms x1 y1 x2 y2;
Qian_Point = zeros(420,2);
for i = 1:420
% 定义方程
eq1 = (Position(1,i)-x1)^2 + (Position(2,i)-y1)^2 == 0.275^2 + 0.15^2;
eq2 = (Position(3,i)-x1)^2 + (Position(4,i)-y1)^2 == (3.41-0.275)^2 + 0.15^2;
eq3 = (Position(1,i)-x2)^2 + (Position(2,i)-y2)^2 == (3.41-0.275)^2 + 0.15^2;
eq4 = (Position(3,i)-x2)^2 + (Position(4,i)-y2)^2 == 0.275^2 + 0.15^2;
% 求解方程
sol1 = solve([eq1, eq2], [x1,y1]);
sol2 = solve([eq3,eq4], [x2,y2]);
x_decimal1 = double(sol1.x1);
y_decimal1 = double(sol1.y1);
x_decimal2 = double(sol2.x2);
y_decimal2 = double(sol2.y2);
vertices = [x_decimal1(2), y_decimal1(2);
x_decimal1(1), y_decimal1(1);
x_decimal2(1), y_decimal2(1);
x_decimal2(2), y_decimal2(2)];
Qian_Point(i,1) = x_decimal1(2);
Qian_Point(i,2) = y_decimal1(2);
% fill(vertices(:,1), vertices(:,2), 'r');
end
plot(Qian_Point(1:420,1)',Qian_Point(1:420,2)','g')
axis equal;
\end{lstlisting}
\end{document}
经测试,为宏包 bug.
可以向作者提 issue.
以下是临时解决办法.
在导言区加入
\usepackage{xpatch}
\ExplSyntaxOn
\patchcmd\__circledtext_calc_char_box_size:{\dim_gset_eq:NN \charboxwd}{\dim_set_eq:NN \charboxwd}{}{}
\patchcmd\__circledtext_calc_char_box_size:{\dim_gset_eq:NN \charboxht}{\dim_set_eq:NN \charboxht}{}{}
\ExplSyntaxOff
你应该见过类似如下的写法吧.
\includegraphics[width = 0.5\textwidth]{example.png}
0.5\textwidth
???, 你加个 *
意欲何为?, 不要有太多的自以为.
既然使用了 ctex
,建议读一下 ctex
包手册,使用其接口
\ctexset{
section = {
name = {,},
number = \chinese{section}
}
}
MWE
\documentclass{article}
\usepackage[UTF8, heading=true]{ctex}
\usepackage{lipsum, zhlipsum}
% ---------- 示例区域(导言区) ---------- %
% \renewcommand{\thesection}{\chinese{section}}
\usepackage{amsmath} %\numberwithin
\usepackage{graphicx}
\usepackage{float} %option H
\numberwithin{figure}{section}
% ======================================== %
\ctexset{
section = {
name = {,},
number = \chinese{section}
}
}
\begin{document}
\tableofcontents
\listoffigures
\section{占位}
hallo LaTeX
% ---------- 示例区域(正文) ---------- %
\section{图片在这一章}
\begin{figure}[H]
\caption{示例图片1}%\label{}
\end{figure}
% ======================================== %
\end{document}
问 cleveref宏包在重定义\thepage中含有\textbf命令时出现报错的原因