远方不远
远方不远
Hello, LuaLaTeX!

注册于 1年前

回答
20
文章
0
关注者
0

创建mwe.mp文件,输入下方代码后保存:

verbatimtex                                          
%&latex 
\documentclass{article}
\usepackage{CJK}       
\begin{CJK}{UTF8}{gbsn}
\begin{document}      
etex            

beginfig(1);
drawarrow origin--(0,100);
drawarrow origin--(100,0);
drawdot origin withpen pencircle scaled 2pt;
label.bot(btex 原点 etex, origin);
label.lft(btex $y$ etex, (0,100));
label.lrt(btex $x$ etex, (100,0));
endfig;

verbatimtex
\end{CJK}
\end{document}
etex

end

然后在win10+TL2025的电脑上,命令行输入mptopdf mwe.mp进行编译,得到mwe-1.pdf

image.png

其中使用的汉字是gbsn,但TL上貌似不能任意更换字体。

image.png

以下内容是我胡邹的:

tabularray从这一段看来:似乎是将总表宽与某一刚性长度进行比较,然后决定是否给出该警告:

\cs_new_protected:Npn \__tblr_compute_extendable_column_width:
{
\__tblr_collect_extendable_column_width:
\dim_compare:nNnTF { \l__column_target_dim } < { 0pt }
{
\msg_warning:nnx { tabularray } { table-width-too-small }
{ \dim_abs:n { \l__column_target_dim } }
}
{
\prop_if_empty:NF \l__column_coefficient_prop
{ \__tblr_adjust_extendable_column_width: }
}
}

standalone的页面尺寸,似乎不是一开始就决定了的:

\newbox\sa@box
\pagestyle{empty}
\hoffset=-72.27pt
\voffset=-72.27pt
\topmargin=0pt
\headheight=0pt
\headsep=0pt
\marginparsep=0pt
\marginparwidth=0pt
\footskip=0pt
\marginparpush=0pt
\oddsidemargin=0pt
\evensidemargin=0pt
\topskip=0pt
\textheight=\maxdimen
\def\sa@boxit{%
    \setbox\sa@box\hbox\bgroup\color@setgroup\sa@varwidth
}%
\def\endsa@boxit{%
    \sa@endvarwidth\color@endgroup\egroup
}%

所以standalone不断地在计算页面尺寸,直到tabularray已经将表格拼装完成后,standalone计算页面尺寸的工作还未结束,以致tabularray只好将当前standalone计算出的最终页面尺寸进行比较,所以tabularray等不及了就抛出了该警告。

  • 翻了下wrapfig的宏包手册,发现要使用这个包实现第一行排满之后,再排第二行,且末行左对齐这个效果,经过多次测试——不是特别容易实现:这主要是你的需求仍有表述不清之处导致的。
  • 在这个宏包条件下,图片尺寸是影响第一行行末提前折行的关键因素,但是第一行行末排满再折行,与图表的尺寸和位置,二者总是很难协调。
  • 众所周知,TeX在图文绕排方面存在所谓固有限制,所以最好的方法是避免图文绕排,或者尽量避免采取较为复杂的图文绕排效果而是只追求较为简单的图文混排效果。

下面抛砖引玉,介绍一些图文绕排的常见方案。

第一个方法LaTeX提供了minipage环境,比较通用,只要提前规划好内容,就可以用这种粗略的方法实现;

%%无需加载额外宏包
%%方法1%%
    \begin{frame}{1. \texttt{minipage}方案}
        
        如图,闭合回路中有多个电源,若电动势 \(\mathcal{E}_1\) 大于 电动势 \(\mathcal{E}_2\),则电流方向如图。
        
        \vskip2ex%
        \begin{minipage}{.7\linewidth}
            规定电动势的方向:正极通过外电路指向负极的方向;负极通过内电路指向正极的方向。
        \end{minipage}%
        \begin{minipage}{.3\linewidth}
            \centering
            \includegraphics[height=3\baselineskip]{example-image}
        \end{minipage}%
        \vskip2ex
        
        \begin{itemize}
            \item 对于 \(\mathcal{E}_1\):电流方向与电动势方向一致,电荷经过时静电力做负功,电势升高 \(\mathcal{E}_1\)
            \item 对于 \(\mathcal{E}_2\):电流方向与电动势方向相反,电荷经过时静电力做正功,电势降低 \(\mathcal{E}_2\),此时相当于电阻。
        \end{itemize}
        
    \end{frame}

第二个方法beamer文档类提供了columns环境,它是一个可以比较便捷的用于左文右图的排版方案;

%%无需加载额外宏包
%%方法2%%
    \begin{frame}{2. \texttt{columns}方案}
        
        如图,闭合回路中有多个电源,若电动势 \(\mathcal{E}_1\) 大于 电动势 \(\mathcal{E}_2\),则电流方向如图。
        
        \vskip2ex%
        \begin{columns}[onlytextwidth]
        \column[c]{.7\linewidth}
            规定电动势的方向:正极通过外电路指向负极的方向;负极通过内电路指向正极的方向。
        \column[c]{.3\linewidth}
            \centering
            \includegraphics[height=3\baselineskip]{example-image}
        \end{columns}%
        \vskip2ex
        
        \begin{itemize}
            \item 对于 \(\mathcal{E}_1\):电流方向与电动势方向一致,电荷经过时静电力做负功,电势升高 \(\mathcal{E}_1\)
            \item 对于 \(\mathcal{E}_2\):电流方向与电动势方向相反,电荷经过时静电力做正功,电势降低 \(\mathcal{E}_2\),此时相当于电阻。
        \end{itemize}
        
    \end{frame}

第三个方法tcolorbox宏包提供了同名环境,其 并排下部 功能是比较现代的左右混排方案,缺点是不能换页,不过在beamer中帧换页本身大多数时候无效,因此屏蔽了这个缺点。由于该宏包的高度可定制化,故推荐优先级最高;

%%\usepackage{tcolorbox}
%%方法3%%
    \begin{frame}{3. \texttt{tcolorbox}方案}
        如图,闭合回路中有多个电源,若电动势 \(\mathcal{E}_1\) 大于 电动势 \(\mathcal{E}_2\),则电流方向如图。
        \begin{tcolorbox}[
            enhanced,
            frame hidden,
            opacityback=0,
            sidebyside,
            righthand ratio=.3,
            lower separated=false,
            sidebyside gap=0mm,
            left=0cm,
            right=0cm,
            boxsep=0pt,
            boxrule=0pt,
        ]
            规定电动势的方向:
            正极通过外电路指向负极的方向;
            负极通过内电路指向正极的方向。
            \tcblower
            \centering
            \includegraphics[height=3\baselineskip]{example-image}
        \end{tcolorbox}
        
        \begin{itemize}
            \item 对于 \(\mathcal{E}_1\):电流方向与电动势方向一致,电荷经过时静电力做负功,电势升高 \(\mathcal{E}_1\)
            \item 对于 \(\mathcal{E}_2\):电流方向与电动势方向相反,电荷经过时静电力做正功,电势降低 \(\mathcal{E}_2\),此时相当于电阻。
        \end{itemize}
        
    \end{frame}

上述三种方法,对于左右型、上下型排版需求,都是可行的策略。下面介绍一些应对特殊型绕排需求的方法。

第四个方法,李清老师的wrapstuff宏包提供了图文绕排的另一种实现,它的优点是可以自由地对需要绕排的图表进行水平或垂直方向上的偏移

  • wrapstuff尝试整合和扩展picinparfloatfltwrapfigcutwinwrapfig2等同类宏包的功能,且兼容captionfloatfloatrow等宏包,并试图兼容显示(display)数学公式和各种 LaTeX 列表环境,可以让他们正确绕排。如果需要将图表绕排在列表环境(问题描述中的第三段)附近,也可以试试这个包。
  • 需要注意的是,wrapstuff的实现依赖LaTeX 2021-06-01开始提供的段落钩子,并依赖LaTeX3 2022-04-10之后的版本。
%%\usepackage{wrapstuff}
%%方法4%%
    \begin{frame}{4.1 \texttt{wrapstuff}方案}
        
        如图,闭合回路中有多个电源,若电动势 \(\mathcal{E}_1\) 大于 电动势 \(\mathcal{E}_2\),则电流方向如图。
        
        \vskip3ex%
        \begin{wrapstuff}[r,top=0,width=.2\linewidth,vsep=0pt,voffset=-2mm]
            \includegraphics[height=\dimeval{3\baselineskip}]{example-image}
        \end{wrapstuff}%
        规定电动势的方向:正极通过外电路指向负极的方向;负极通过内电路指向正极的方向。规定电动势的方向:正极通过外电路指向负极的方向;负极通过内电路指向正极的方向。规定电动势的方向:正极通过外电路指向负极的方向;负极通。
        \wrapstuffclear
        
        \vskip3ex%
        \begin{itemize}
            \item 对于 \(\mathcal{E}_1\):电流方向与电动势方向一致,电荷经过时静电力做负功,电势升高 \(\mathcal{E}_1\)
            \item 对于 \(\mathcal{E}_2\):电流方向与电动势方向相反,电荷经过时静电力做正功,电势降低 \(\mathcal{E}_2\),此时相当于电阻。
        \end{itemize}
        
    \end{frame}
    \begin{frame}{4.2 \texttt{wrapstuff}方案}
        
        如图,闭合回路中有多个电源,若电动势 \(\mathcal{E}_1\) 大于 电动势 \(\mathcal{E}_2\),则电流方向如图。
        
        \vskip3ex%
        \begin{wrapstuff}[r,top=0,width=.2\linewidth,vsep=0pt,voffset=-2mm]
            \includegraphics[height=\dimeval{3\baselineskip}]{example-image}
        \end{wrapstuff}%
        规定电动势的方向:正极通过外电路指向负极的方向;负极通过内电路指向正极的方向。规定电动势的方向:正极通过外电路指向负极的方向;负极通过内电路指向正极的方向。规定电动势的方向:正极通过外电路指向负极的方向;负极通。
        \wrapstuffclear
        
        \vskip3ex%
        \begin{wrapstuff}[r,top=0,width=.2\linewidth,vsep=0pt]
            \includegraphics[height=\dimeval{3\baselineskip}]{example-image}
        \end{wrapstuff}%
        规定电动势的方向:正极通过外电路指向负极的方向;负极通过内电路指向正极的方向。规定电动势的方向:正极通过外电路指向负极的方向;负极通过内电路指向正极的方向。规定电动势的方向:正极通过外电路指向负极的方向;负极通过内电路指向正极的方向。规定电动势的方向:正极通过外电路指向负极的方向。
        
    \end{frame}

第五个方法wrapfig通常作为picinpar宏包的互补解决方案,wrapfig宏包的优点是可以不必指定把多少文字包含进绕排的范围,且可以让图表超出版心而不报错。

  • 然而wrapfigpicinpar一样,在本页剩下的空间中必须足够放下被绕排的图表,也就是说起码这个段落的“边界盒子”的上下界要能够包含该图表。你的提问中,图表到底跟哪一段成绕排关系,并未说清,因此我只能按照我自己的想法来操作。所以我就假设你只是想在第二段绕排,不过显然的是该段文字数量略少,因此极大可能造成难看的分页。
  • 在我的测试中,发现段落的高度至少要超过图表的总高度以及图表上下的额外垂直间距之和两行以上,这种在一个段落的右上角排版图片的绕排方案才能取得比较好的视觉效果。
  • 所以使用此包,需要改进的观点是:在wrapfigure环境后面,必须紧跟着字数足够多的纯文本段落,否则排版通常会非常难看。
%%\usepackage{wrapfig}
%%方法5%%
    \begin{frame}{5.1 \texttt{wrapfig}方案}
        
        如图,闭合回路中有多个电源,若电动势 \(\mathcal{E}_1\) 大于 电动势 \(\mathcal{E}_2\),则电流方向如图。
        
        \vskip3ex%
        \begin{wrapfigure}[5]{r}[0pt]{.2\textwidth}
            \centering
            \includegraphics[height=3\baselineskip]{example-image}
        \end{wrapfigure}%
        规定电动势的方向:正极通过外电路指向负极的方向;负极通过内电路指向正极的方向。规定电动势的方向:正极通过外电路指向负极的方向;负极通过内电路指向正极的方向。规定电动势的方向:正极通过外电路指向负极的方向;负极通。
        \vskip3ex%
        
        \begin{itemize}
            \item 对于 \(\mathcal{E}_1\):电流方向与电动势方向一致,电荷经过时静电力做负功,电势升高 \(\mathcal{E}_1\)
            \item 对于 \(\mathcal{E}_2\):电流方向与电动势方向相反,电荷经过时静电力做正功,电势降低 \(\mathcal{E}_2\),此时相当于电阻。
        \end{itemize}
        
    \end{frame}
        \begin{frame}{5.2 \texttt{wrapfig}方案}
        
        如图,闭合回路中有多个电源,若电动势 \(\mathcal{E}_1\) 大于 电动势 \(\mathcal{E}_2\),则电流方向如图。
        
        \vskip3ex%
        \begin{wrapfigure}[5]{r}[0pt]{.2\textwidth}
            \centering
            \includegraphics[height=3\baselineskip]{example-image}
        \end{wrapfigure}%
        规定电动势的方向:正极通过外电路指向负极的方向;负极通过内电路指向正极的方向。规定电动势的方向:正极通过外电路指向负极的方向;负极通过内电路指向正极的方向。规定电动势的方向:正极通过外电路指向负极的方向;负极通。
        \vskip3ex%
        \begin{wrapfigure}[5]{r}[0pt]{.2\textwidth}
            \centering
            \includegraphics[height=3\baselineskip]{example-image}
        \end{wrapfigure}%
        规定电动势的方向:正极通过外电路指向负极的方向;负极通过内电路指向正极的方向。规定电动势的方向:正极通过外电路指向负极的方向;负极通过内电路指向正极的方向。规定电动势的方向:正极通过外电路指向负极的方向;负极通过内电路指向正极的方向。规定电动势的方向:正极通过外电路指向负极的方向;负极通过内电路指向正极的方方方方向向向。
        
    \end{frame}

最后,刘海洋老师在其书《LaTeX入门》中介绍:在TeX内部,绕排工具都是通过\parshape命令和一系列复杂的盒子操作和计算完成的,这也解释了为什么wrapfig在列表环境附近失效的原因(列表环境也依靠\parshape),完全可以通过\parshape产生形状更为复杂的绕排效果,而shapepar宏包的\cutout命令就部分地实现了这一复杂能力,不过具体位置和参数需要手工仔细调整。如果有兴趣,也可以自行去了解一下这个底层命令和这个有趣的宏包。

你的问题描述以及提供的 mwe 都有些复杂,我大概认为你需要:

  1. 文档的各级标题的标题名虽然采用英文字母,但是在必要时正文中能够直接使用汉字;
  2. 目录中包含摘要、插图列表、参考文献等使用\chapter*创建的条目,且需要对这些条目的显示采用自定义内容,并且其字体风格与默认一致;
  3. 正文中插图列表的标题名采用三号居中格式;
  4. 目录中的摘要条目可以跳转到摘要页,而不是PDF首页。

对于第一条,我认为你可能有输入汉字的需要,但是可能并不喜欢 ctex 宏包默认的标题汉化风格。我的方法是改用 xeCJK 支持中文,如果你不用 XeLaTeX ,那么需要其他方法支持中文。

对于第二条,我的方法是使用 tocbibind 宏包,它默认会把章节目录、插图目录、表格目录、参考文献、索引等都加入章节目录,且不用做进一步更改,就能保持默认的字体、字距风格。

对于第三条,在 book 文类中, \listoffigures 以及 \tableofcontents\listoftables\begin{thebibliography}...\end{thebibliography} 在正文中的标题名都是主要通过 \chapter* 命令创建的,容易“改一发而动全身”。要实现同一层级的标题采用不同的字体 、字距风格,我的思路是局部重定义 \listoffigures 的定义 (用分组进行隔离,离开分组就会自动复原)。根据你的文档类,查找 book.cls ,可知 \listoffigures 命令的主要构成是:

\chapter*{\listfigurename}

由于 \chapter* 命令是依据 \chapter命令创建的,而 \chapter 命令的定义的最后一行

\secdef\@chapter\@schapte

意思是:若采用 \chapter命令创建标题,则使用 \@chapter 排版方案;若采用 \chapter*命令创建标题,则使用 \@schapter 排版方案。显然,我们关注后者。查看 \@schapter 的定义:

\def\@schapter#1{\if@twocolumn
                   \@topnewpage[\@makeschapterhead{#1}]%
                 \else
                   \@makeschapterhead{#1}%
                   \@afterheading
                 \fi}

发现其主要依靠 \@makeschapterhead{#1} 这个命令排版 chapter* 。最后,查看 \@makeschapterhead 的定义:

\def\@makeschapterhead#1{%
  \vspace*{50\p@}%
  {\parindent \z@ \raggedright
    \normalfont
    \interlinepenalty\@M
    \Huge \bfseries  #1\par\nobreak
    \vskip 40\p@
  }}

可知,这是 \listoffigures 命令的根源所在,要设置其格式为三号居中,只需要把格式添加在参数 #1 上,也就是说只要能够临时重定义 \@makeschapterhead 就能实现“同是 chapter* 层级的标题,但字体、字距风格不同”的效果。于是可以新定义一个命令,将这个重定义限制在分组内(最好保存原定义,或许有用)。因为涉及内部命令,所以需要更改 @ 字符的类代码。总之,即:

\makeatletter
% 保存原始定义
\let\original@makeschapterhead\@makeschapterhead
% 创建封装环境
\NewDocumentCommand{\mylistoffigures}{}{%
    \begingroup
    \renewcommand{\@makeschapterhead}[1]{%
        \vspace*{50\p@}%
        {\parindent \z@ \raggedright
         \normalfont
         \interlinepenalty\@M
         \centering\fontsize{16bp}{16bp}\selectfont\bfseries ##1\par\nobreak%
         \vskip 40\p@
        }%% 根据 ctex 宏包手册代码实现第 4190 行,汉字三号字的字体尺寸为 16bp ,
    }%%     但是英文字母的三号字是什么尺寸,我不太清楚。总之,你可以改成你喜欢的大小  
    \listoffigures
    \endgroup
}
\makeatother

然后只要在正文中合适的地方,使用 \mylistoffigures 即可产生不同于 \listoffigures 的效果。

对于第四条,上面啸行老师已经给出了解决方案。其实在 tocbibind 的宏包手册中也有描述:
image.png
对此不再赘述。

效果图如下:
image.png
image.png
image.png
image.png

修改过的代码如下:

\documentclass[openany]{book}

\usepackage[papersize={15cm,20cm},margin=.5in]{geometry}

\usepackage{xeCJK}
\setCJKmainfont{SimSun}

\renewcommand{\contentsname}{\textit{Contents}}%% 重定义这些文本宏时若带有格式,会被 tocbibind 带进
\renewcommand{\listfigurename}{List of figures}%% 目录,但是目录本身是不进目录的,所以感觉不到这样做
\renewcommand{\bibname}{References}%%             的效果,可以取消 tocbibind 的选项 nottoc 查看效果

\usepackage[nottoc]{tocbibind}
%\usepackage{tocbibind}

\usepackage{tikz}

\usepackage[colorlinks=true]{hyperref}

\makeatletter
% 保存原始定义
\let\original@makeschapterhead\@makeschapterhead
% 创建封装环境
\NewDocumentCommand{\mylistoffigures}{}{%
    \begingroup
    \renewcommand{\@makeschapterhead}[1]{%
        \vspace*{50\p@}%
        {\parindent \z@ \raggedright
         \normalfont
         \interlinepenalty\@M
         \centering\fontsize{16bp}{16bp}\selectfont\bfseries ##1\par\nobreak%
         \vskip 40\p@
        }%% 根据 ctex 宏包手册代码实现第 4190 行,汉字三号字的字体尺寸为 16bp ,
    }%%     但是英文字母的三号字是什么尺寸,我不太清楚。总之,你可以改成你喜欢的大小 
    \listoffigures
    \endgroup
}
\makeatother

\begin{document}

\title{Title}\author{Author}\date{Date}\maketitle

\phantomsection
\addcontentsline{toc}{chapter}{ABSTRACT}
\centerline{\bfseries ABSTRACT}

My abstract. 

\tableofcontents

\mylistoffigures

\chapter{chapter}
\section{section}\vskip7ex
\begin{figure}[h]
    \centering
    \tikz[scale=.75,every node/.append style={scale=.75}] 
        \foreach \x in {1,...,9} 
        \foreach \y in {1,...,9} 
        \draw (\x,\y) rectangle +(1,1) 
            node at (\x,\y) [shift={(.5,.5)}] {$\x\y$};
    \caption{Some rectangles}
\end{figure}

\chapter{chapter}
\section{section}\vskip7ex
\begin{figure}[h]
    \centering
    \tikz[scale=.75,every node/.append style={scale=.75}] 
        \foreach \x in {1,...,9} 
        \foreach \y in {1,...,9} 
        \draw (\x+.5,\y-.5) circle (.5) 
            node at (\x,\y) [shift={(.5,-.5)}] {$\x\y$};
    \caption{Some circles}
\end{figure}

\begin{thebibliography}{99}
    \bibitem{1} Book A. 
    \bibitem{2} Book B. 
\end{thebibliography}
 
\end{document}

认为有回答符合需求,请点个采纳,谢谢!

image.png

image.png

\documentclass[tikz,border=2pt]{standalone}
\usetikzlibrary{calc,patterns}
\usepackage{amssymb}
\newcommand{\myangleA}{acos(319/480)}%         about              48.4
\newcommand{\myangleB}{180-\myangleA}%         about 180-48.4    =131.6
\newcommand{\myangleC}{\myangleB+2*\myangleA}% about 131.6+2*48.4=228.4
\newcommand{\myangleD}{360+\myangleB}%         about 360+131.6   =491.6
\begin{document}
\begin{tikzpicture}

    \draw [->,very thick] (-.5,0) -- (8,0) node [below] {$x$};% x轴
    \draw [->,very thick] (0,-.5) -- (0,6) node [left]  {$y$};% y轴

    \draw [blue,very thick,dashed]            (.5,.5) rectangle (6.5,5);% 蓝框
    \draw [draw=red,pattern=north west lines] (3,3)   circle    (1.5);% 左圆

    \draw [dashed] ($(5,3)+({\myangleB}:1.2)$) arc ({\myangleB}:{\myangleC}:1.2);% 虚线弧
    \draw          ($(5,3)+({\myangleC}:1.2)$) arc ({\myangleC}:{\myangleD}:1.2);% 实线弧
    
    \node at (0,0)    [below left]                          {$O$};
    \node at (3,3)    [left=9pt,fill=white,rounded corners] {$B$};
    \node at (5,3)    [right=9pt]                           {$S$};
    \node at (6.5,.5) [above left=3pt]                      {$\Lambda$};
    \node at (.5,.5)  [above right=15pt,text=red]           {$\partial B=B_0$};
    \node at (6.5,5)  [above right=9pt]                     {$\mathbb{R}^2$};

\end{tikzpicture}
\end{document}

image.png

这样,能接受吗?
image.png
image.png

\documentclass[b5paper,twoside,openany,UTF8,no-math]{ctexbook}
\usepackage{xeCJK,xeCJKfntef}
%xeCJKfntef是xeCJK的子宏包,支持断行换页的中文下划线
\usepackage{color,xcolor} %颜色支持
\definecolor{lightblue}{rgb}{.8,.8,1}     %lightblue的RGB颜色设定
%定制下划线(指令\CJKunderline*{<文字>})样式,实现文字高亮排版
\xeCJKsetup{underline={%
        format = \color{lightblue},  %下划线颜色
        thickness = 1.25\ccwd,       %下划线厚度
        depth = -1.0\ccwd,          %下划线到文字基线的距离
    }
}

\begin{document}
    这是一段测试文字,\CJKunderline*{其中这些文字用xeCJKfntef宏包高亮,但是这些文字的注释}\footnote{显示异常的注释。}\CJKunderline*{显示异常。}
\end{document}

突发奇想,将幻影的高度大约设定为实际缩放后的高度。本回答不值得提倡。
image.png
image.png
image.png

\documentclass{article}
\usepackage[b6paper,landscape,showframe]{geometry}
\usepackage{amsmath,tikz}
\usetikzlibrary{tikzmark}
\begin{document}
\begin{equation} 
    a^2+b^2=c^2
\end{equation}
\begin{equation}
    \scriptstyle 
    a^2+b^2=c^2 
\end{equation}

\begin{equation}
\text{s.t.}=\tikzmarknode{verylongeqn}{\phantom{\begin{gathered}
    1234 \\    1234 \\    1234 \\    1234 \\
    1234 \\    1234 \\    1234 \\    1234 \\
    1234 \\    1234 \\    1234 \\    1234 \\
    1234 \\    1234 \\    \end{gathered}}}
\end{equation}
\tikz[remember picture, overlay] \node at (verylongeqn.west) [right,scale=0.75] {$\left\{\begin{gathered}    
    1234 \\    1234 \\    1234 \\    1234 \\
    1234 \\    1234 \\    1234 \\    1234 \\
    1234 \\    1234 \\    1234 \\    1234 \\
    1234 \\    1234 \\    1234 \\    1234 \\
    1234 \\    1234 \\    1234 \\    1234 \\\end{gathered}\right.$};

\begin{equation} 
    a^2+b^2=c^2
\end{equation}
\begin{equation}
    \scriptstyle 
    a^2+b^2=c^2 
\end{equation}
\begin{equation} 
    a^2+b^2=c^2 
\end{equation}

\end{document}

满意此回答的话,可以点一下,采纳,谢谢~
image.png

\documentclass[border=2pt,tikz]{standalone}
\usetikzlibrary{tikzmark}
\begin{document}

\begin{tikzpicture}[remember picture]
    \node [right] at (0,0) {
        $\tikzmarknode{a}{e^{\pi i}}+\tikzmarknode{b}{1}=\tikzmarknode{c}{0}$
    };
    \draw [red,thick]  ([yshift=-2pt]a.south west) -- ([yshift=-2pt]a.south east) node [midway,below=1pt,scale=.5,text=black] {What};
    \draw [blue,thin] ([yshift=-2pt]b.south west) -- ([yshift=-2pt]b.south east) node [midway,below=1pt,scale=.5,text=black] {is};
    \draw [cyan,line width=1.5pt] ([yshift=-2pt]c.south west) -- ([yshift=-2pt]c.south east) node [midway,below=1pt,scale=.5,text=black] {this?};
\end{tikzpicture}

\end{document}

第一件事,你的源码在我这里无法直接通过编译。
无论选择founder还是ctexfont(默认)选项都会报缺少相关楷体的错误,当然这是误报。
如果使用nofont选项并自己设置正文字体,还是可以正常通过编译,并得到正确的楷体加粗效果的。
比如像这样子设置后:

\ifdefstring{\ELEGANT@chinesefont}{nofont}{
      \RequirePackage[UTF8,scheme=plain,fontset=none]{ctex}
      \xeCJKsetup{AutoFakeBold=true}\setCJKmainfont{FZKai-Z03}}{\relax}%

在导言区设置\documengclass[cn,chinese,nofont]{elegantbook}会得到这样的效果:
image.png

第二件事,你应该对你自己修改的模板文件负责。要解决你的问题,请提供你具体更改了哪些代码的信息,否则你提供的模板源码,四舍五入就等于你自己的私有模板,如无必要,没人会愿意阅读。比如,请你关注一下你修改过后的模板文档第139行,此处使用了判断引擎的条件,而无论是否使用XeTeX引擎,宏包xeCJK都需要XeTeX引擎作为支持,如果不使用XeTeX引擎,ctex宏包底层的实现可能取决于其他策略。

l3语法看不懂。下面是在标准文档类中的简短的例子,以供参考。

image.png

image.png

image.png

\documentclass[UTF8]{ctexart}
\usepackage{graphicx,lipsum,zhlipsum,lastpage,mwe,geometry,fancyhdr,pgffor}
  \geometry{margin=2in,showframe,a4paper}
  \pagestyle{fancy}
  \fancyhf{}
  \setlength{\headheight}{12pt}
  \renewcommand{\headrulewidth}{0pt}
\begin{document}

\cfoot{Page~\thepage~of~\pageref{LastPage}}

\lipsum[1-8]

\pagenumbering{arabic}

\zhlipsum[1-4]

\foreach \x in {1,2,3} {
    \begin{figure}
        \centering
        \includegraphics[width=\textwidth]{example-image}
        \caption{Example Image \x}
    \end{figure}
}

\end{document}

MWE241230-1.png

\documentclass[UTF8]{ctexart}
\usepackage{geometry,xeCJKfntef,tikz}
\geometry{papersize={14.85cm,10.5cm},margin=1cm}
\newcommand{\CJKundercircle}[1]{\CJKunderanysymbol[sep=0.1em]{0.2em}{\tikz\draw(0,0)circle(1pt);}{#1}}
\setlength{\parindent}{0pt}
\pagestyle{empty}
\begin{document}

\huge
\CJKundercircle{瞻彼阕者,虚室生白,\CJKunderline{吉祥止止}}

\Large
\CJKundercircle{瞻彼阕者,虚室生白,\CJKunderline{吉祥止止}}

\large
\CJKundercircle{瞻彼阕者,虚室生白,\CJKunderline{吉祥止止}}

\normalsize
\CJKundercircle{瞻彼阕者,虚室生白,\CJKunderline{吉祥止止}}

\small
\CJKundercircle{瞻彼阕者,虚室生白,\CJKunderline{吉祥止止}}

\scriptsize
\CJKundercircle{瞻彼阕者,虚室生白,\CJKunderline{吉祥止止}}

\end{document}

发布
问题