强烈建议直接使用最新的tabularray宏包进行表格排版。
强烈建议直接使用最新的tabularray宏包进行表格排版。
Word思维,尽量早点转换到LaTeX的内容与格式分离的思维上来,并习惯接受LaTeX给出的默认结果。
可能需要3个月以上的修炼后再定义哪个是玄学。
这种对标,毫无意义,中文、英文、公式等字体字号都可能分开设置,不同字体字形,也不可能做到完全一致。
习惯了LaTeX的美,就会觉得Word应该向LaTeX看齐才对。
个人觉得,可以改一下需求,就接受LaTeX给出的结果。
或者,统一加大行距。
猜测是宏展开问题造成的,重新调整了一下代码:
\documentclass{ctexart}
\usepackage{expl3}
% \usepackage{tikz}
\usepackage{tkz-euclide}
\ExplSyntaxOn
\cs_set:Npn \my_draw:n #1 {
\int_step_inline:nn {#1}{
\coordinate (P{##1}) at ({##1},0);
\draw[fill=black](P{##1}) circle (1.5pt);
\draw (P{##1})node[anchor=north]{P{##1}}--++(0,1);
}
}
\newcommand{\mydraw}[1]{
\my_draw:n {#1}
}
\ExplSyntaxOff
\begin{document}
\begin{tikzpicture}
\mydraw{6}
\end{tikzpicture}
\end{document}
你可以再体会一下,我觉得LaTeX3代码应该独立出来,再封装成命令供其它部分调用比较合理。
建议在命令行用texdoc ctex
打开手册认真阅读:
一个简单的MWE为:
\documentclass{ctexart}
\ctexset{abstractname = \heiti\zihao{4}摘\quad{}要}
\usepackage{zhlipsum}
\begin{document}
\begin{abstract}
\zhlipsum[1]
\end{abstract}
\end{document}
其结果为:
ps.这其实不是一个很发的办法,我觉得更好的办法是重写一个摘要环境,可以参考LaTeX 排版内容与样式分离思想和使用技巧
这两名代码没有错误,采用二分注释法,将这两句注释,会发现还有问题,再注释分析,就会发现是\tkzDrawPoints{A,B,C}
写错了,应该用\tkzDrawPoints(A,B,C)
(小括号)。
修改后的代码为:
\documentclass{article}
\usepackage[margin=1in]{geometry}
\usepackage{amsmath}
\usepackage{tkz-euclide}
\begin{document}
\begin{tikzpicture}
\tkzDefPoints{0/0/A,4/0/B,3/2/C}
\tkzDrawPoints(A,B,C)
\tkzDrawPolygon(A,B,C)
\tkzLabelSegment(A,C){$\sqrt{13}$}
\tkzMarkAngle[size=0.5cm](C,B,A)%
\tkzLabelAngle[pos=1](C,B,A){$26.6^\circ$}%
\end{tikzpicture}
\end{document}
其中,\usepackage{tikz}
不再需要,\tkzMarkAngle[size=0.5cm](A,B,C)%
应该写成\tkzMarkAngle[size=0.5cm](C,B,A)%
PS.二分注释法定位错误是LaTeX的Debug中常用的一种方法,建议多学习并实践。
用tabularray宏包可以更好的实现表格内容与格式的分离,见另一种解决方案见。
这个使用表格(新tabularray宏包)很容易实现:
\documentclass{ctexart}
\usepackage{tabularray}
\begin{document}
\begin{tblr}{
hlines,vlines,
cells = {c},
cell{1}{2} = {r=2}{font=\bfseries,c,m},
}
所属于类别 & 2021年``华数杯''全国大学生数学建模竞赛 & 参赛编号\\
本科组 & & CM211940\\
\end{tblr}
\end{document}
其结果为:
不过要确认后续是否能够很好的使用这些代码。
用LaTeX3排版分散和居中对齐文字是从fduthesis提取代码,结合让title的underline长度随着最长断行的长度而变化。用LaTeX3进行了一个简单实现,请参考附件用LaTeX3排版学位论文封面。
其排版结果为:
其中,标题也可以居中排版,各下划线位置和大小都可以通过调节参数进行调整。
另外,建议适当改变一下自己的需求,向LaTeX妥协。
参见:vspace or line space in text of wrap fig。
picinpar is quite an old package with several restrictions, a newer package for these kind of inserts is wrapfig however you can force a space by adding a blank line with a strut (or a rule of a specified height if you need finer control).
可以用新一代的表格宏包tabularray
实现:
\documentclass{ctexart}
% 内容与格式分离的表格宏包
\usepackage{tabularray}
\begin{document}
\begin{table}[!htb]
\centering
\caption{xxxx}
% 表格格式由参数控制
\begin{tblr}{hlines,
cell{1}{1-4} = {c},
cell{2-4}{1} = {c},
cell{2-4}{2-4} = {r},
}
% 表格内容
a & aaaaaaaaa & aaaaaaaaaaaaaa & aaaaaaaaaaaaaaaaaaaa \\
a & 123 & 123456 & 1\\
a & 12345 & 123 & 123 \\
a & 1 & 1234 & 123456 \\
\end{tblr}
\end{table}
\end{document}
其结果为:
注意:至少需要2021版的TeXLive等发行版,并升级到最新。
理解有误,请用texdoc tikz
打开其手册,参考“15.3.1 Graphic Parameters: Line Width, Line Cap, and Line Join”小节,line cap
俗称“线帽”,是线的两个端点的样式,line join
才是“连接”点的样式。
因此,如果非要使用line cap
,则需要分段绘制线条,如:
\documentclass[border=10,tikz]{standalone}
\begin{document}
\begin{tikzpicture}[line width=10pt,scale=3]
\draw[line cap=round,line cap=round] (1,1)--(2,2) (2,2)--(1,3);
\end{tikzpicture}
\end{document}
不过这显然是不合理的,更为合理的是使用:
\documentclass[border=10,tikz]{standalone}
\begin{document}
\begin{tikzpicture}[line width=10pt,scale=3]
\draw[line join=round,line cap=round] (1,1)--(2,2)--(1,3);
\end{tikzpicture}
\end{document}
ps. 请提问时,提供可以运行的MWE(最小工作示例),再有就是有问题先查说明书(如:texdoc tikz
),看一手的资料,这个资料显然是别人“嚼过”的,而且写得不明不白。
本来这些辅助文件就是应该存在的,你不想要是不对的,建议每写一个文档就创建一个文件夹,在文件夹里进行工作。这些辅助文件尽量不要随便删除,它们记录了大量需要的信息。
建议认真读lshort-zh-cn,在1.5节给出了文件一览:
问 tabularx如何用在合并单元格中?