diff options
Diffstat (limited to 'macros')
74 files changed, 1746 insertions, 1287 deletions
diff --git a/macros/generic/simplekv/README b/macros/generic/simplekv/README index 429e2f88d2..836d94a2bb 100644 --- a/macros/generic/simplekv/README +++ b/macros/generic/simplekv/README @@ -3,9 +3,9 @@ ___________________________________ L'extension simplekv - v0.2a + v0.2c - 1er octobre 2022 + 2 octobre 2023 ___________________________________ Authors : Christian Tellechea diff --git a/macros/generic/simplekv/simplekv-fr.pdf b/macros/generic/simplekv/simplekv-fr.pdf Binary files differindex 8ef85109e1..d505971bb3 100644 --- a/macros/generic/simplekv/simplekv-fr.pdf +++ b/macros/generic/simplekv/simplekv-fr.pdf diff --git a/macros/generic/simplekv/simplekv-fr.tex b/macros/generic/simplekv/simplekv-fr.tex index 70290c7fb7..6ebe3e89b0 100644 --- a/macros/generic/simplekv/simplekv-fr.tex +++ b/macros/generic/simplekv/simplekv-fr.tex @@ -1,7 +1,6 @@ % !TeX TS-program = lualatex % !TeX encoding = UTF-8 % Ceci est la documentation du package "simplekv" -% \documentclass[french,a4paper,10pt]{article} \usepackage[utf8]{inputenc} \usepackage[margin=2cm]{geometry} @@ -130,7 +129,7 @@ Cette petite extension se veut minimaliste. Trop sans doute puisqu'on ne la juge pas au niveau d'autres, jugées plus « \href{https://tex.stackexchange.com/questions/560014/}{sérieuses}\footnote{C'est ainsi que Joseph Wright, qu'il ne faut prier pour me savonner la planche, la qualifie. C'est que sur TeX.stackexchange, on est entre-soi, c'est-à-dire entre experts raisonnables qui savent de quoi ils parlent. On fait mine de s'étonner et on réprimande, tel un enfant qui ne sait pas ce qu'il fait, un utilisateur qui vient s'enquérir du fonctionnement de simplekv ! Ce genre de sous-package est mal vu et indésirable là bas, il faut vite faire rentrer dans le rang la brebis égarée.}.» -Quoiqu'il en soit, simplekv a le mérite d'exister et se veut à l'opposé des usines à gaz que l'on peut trouver dans cet exercices de style. Elle est écrite en \TeX{}, fonctionne donc sous tous les moteurs et ne requiert aucun package. +Quoiqu'il en soit, simplekv a le mérite d'exister et se place à l'opposé des usines à gaz que l'on peut trouver dans cet exercice de style. Elle est écrite en \TeX{}, fonctionne donc sous tous les moteurs et ne requiert aucun package. \section{Clés, valeurs} Lorsqu'une macro doit recevoir des paramètres dont le nombre n'est pas fixe ou connu, il est commode de procéder par \<clés> et \<valeurs>. @@ -161,9 +160,10 @@ On écrit Il faut noter que \begin{itemize} - \item l'argument entre accolades contenant les \<clés> et les \<valeurs> ne devrait pas être vide, sauf à vouloir définir une \<clé> booléenne vide égale à \texttt{true}; + \item un ensemble \<clé>=\<valeur> réduit à 0 caractère après suppression des espaces est ignoré; \item lors de la lecture des \<clés>/\<valeurs>, la virgule et le signe égal doivent avoir un catcode de 12 sans quoi ils ne seront pas compris comme frontières entre \<clés> et \<valeurs> et ne joueront pas leur rôle; - \item le nom du \<trousseau>, bien qu'entre crochet, est \emph{obligatoire}, mais il peut être vide bien que cela ne soit pas conseillé; + \item le nom du \<trousseau>, bien qu'entre crochets, est \emph{obligatoire}, mais il peut être vide bien que cela ne soit pas conseillé; + \item les espaces autour du nom du \<trousseau> ne sont \emph{pas} retirés et donc le trousseau «\verb|foo|» n'est pas le même que le trousseau «\verb*|foo |» \item si une même \<clé> figure plusieurs fois, la \<valeur> retenue sera celle de la dernière assignation; \item les \<valeurs> peuvent être booléennes auquel cas, elles \emph{doivent} être «\texttt{true}» ou «\texttt{false}» en caractères de catcode 11; \item si une \<valeur> est omise, elle est comprise comme étant «\texttt{true}». Ainsi, écrire @@ -199,16 +199,16 @@ Cette macro permet, selon la valeur d'une \<clé booléenne>, d'exécuter un des La macro est purement développable, elle nécessite 2 développements pour donner l'un des deux codes, et exige que la \<clé> soit booléenne sans quoi un message d'erreur est émis. \paragraph{La macro \texttt{\char`\\showKV}} -Cette commande écrit dans le fichier \texttt{log} la \<valeur> assignée à une \<clé> d'un \<trousseau>: +Cette commande écrit dans le fichier \texttt{log} la \<valeur> et le \<code> assignés à une \<clé> d'un \<trousseau>: \code|\showKV[<trousseau>]{<clé>}| -Si la \<clé> n'est pas définie, «\texttt{not defined}» est affiché dans le fichier log. +Si la \<clé> n'est pas définie, «\texttt{not defined}» est affiché dans le fichier log. Il en est de même pour le \<code>. \section{Code} En plus d'une \<valeur>, un \<code> arbitraire peut être assigné à n'importe quelle \<clé>. Pour ce faire, on écrit \begin{center} \verb|\defKV[<trousseau>]{<clé 1>=<code 1>,<clé 2>=<code 2>,...,<clé n>=<code n>}| \end{center} -Chaque \<code> peut contenir \verb|#1| qui représente la \<valeur> de la \<clé>. Ce \<code> est exécuté lorsque une \<valeur> est assignée à la \<clé> avec \verb|\setKV|, \verb|\setKVdefault| ou \verb|\restoreKV|. +Chaque \<code> peut contenir «\verb|#1|» qui représente la \<valeur> de la \<clé>. Ce \<code> est exécuté lorsque une \<valeur> est assignée à la \<clé> avec \verb|\setKV|, \verb|\setKVdefault| ou \verb|\restoreKV|. \bigbreak Ainsi déclarer diff --git a/macros/generic/simplekv/simplekv.tex b/macros/generic/simplekv/simplekv.tex index 3f7422478a..bc811b2e8f 100644 --- a/macros/generic/simplekv/simplekv.tex +++ b/macros/generic/simplekv/simplekv.tex @@ -4,9 +4,9 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % \def\skvname {simplekv} % -\def\skvver {0.2a} % +\def\skvver {0.2c} % % % -\def\skvdate {2022/10/01} % +\def\skvdate {2023/10/02} % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % @@ -27,7 +27,7 @@ % email: unbonpetit@netc.fr % Commentaires, suggestions et signalement de bugs bienvenus ! % Comments, bug reports and suggestions are welcome. -% Copyright: Christian Tellechea 2017-2022 +% Copyright: Christian Tellechea 2017-2023 % -------------------------------------------------------------------- % L'extension simplekv est composée des 5 fichiers suivants : % - code : simplekv (.tex et .sty) @@ -73,7 +73,9 @@ \long\def\skv_stripsp_i##1\_marksp#1##2\_marksp##3\_nil{\skv_stripsp_ii##3##1##2\__nil#1\__nil\_nil}% \long\def\skv_stripsp_ii##1#1\__nil##2\_nil{\skv_stripsp_iii##1##2\_nil}% \long\def\skv_stripsp_iii##1##2\__nil##3\_nil##4{\unexpanded{##4{##2}}}% -}\skv_stripsp{ } +} +\skv_stripsp{ } +\def\skv_error#1{\errmessage{Package \skvname\space Error: #1.}} %########################################## %########## Macros de définition ########## %########################################## @@ -81,14 +83,22 @@ \def\setKV {\let\skv_find_kv_ii\skv_find_kv_nocode\skv_readKV\skv_gob} \def\defKV {\let\skv_find_kv_ii\skv_find_kv_code \skv_readKV\skv_gob} \long\def\skv_readKV#1[#2]#3{% - #1{\expandafter\def\csname skv_[#2]\endcsname{#3}}% exécute (si \defKVdefault) ou pas - \def\skv_setname{#2}% - \skv_readKV_i#3,\__,% + #1{\expandafter\def\csname skv_[#2]\endcsname{#3}}% exécute (si \setKVdefault) ou pas + \def\skv__currentname{#2}% + \skv_readKV_i#3,\skv_end,% +} +\long\def\skv_readKV_i#1,{% + \skv_stripsp\skv_ifempty{#1}% Bugfix 0.2c : on ignore un truc vide entre 2 virgules + {% + \skv_readKV_i + } + {% + \skv_readKV_ii\skv_find_kv#1=true=\_nil\skv_find_kv\skv_end\__nil% si #1=\skv_end ne rien faire sinon \skv_find_kv#1=true=\_nil + }% } -\long\def\skv_readKV_i#1,{\skv_readKV_ii\skv_find_kv#1=true=\_nil\skv_find_kv\__\__nil}% si #1=\__ ne rien faire sinon \skv_find_kv#1=true=\_nil -\long\def\skv_readKV_ii#1\skv_find_kv\__#2\__nil{#1} +\long\def\skv_readKV_ii#1\skv_find_kv\skv_end#2\__nil{#1} \long\def\skv_find_kv#1={% - \edef\__key{_[\skv_setname]_\skv_stripsp\detokenize{#1}}% + \edef\skv__currentkey{_[\skv__currentname]_\skv_stripsp\detokenize{#1}}% \skv_find_kv_i{}% } \long\def\skv_find_kv_i#1=#2\_nil{% @@ -96,18 +106,22 @@ \skv_readKV_i } \long\def\skv_find_kv_nocode#1{% - \expandafter\def\csname skv\__key\endcsname{#1}% stocker la valeur - \ifcsname skvcode\__key\endcsname - \skv_antefi\csname skvcode\__key\endcsname{#1}% + \expandafter\def\csname skv\skv__currentkey\endcsname{#1}% stocker la valeur + \ifcsname skvcode\skv__currentkey\endcsname + \skv_antefi\csname skvcode\skv__currentkey\endcsname{#1}% \fi } \long\def\skv_find_kv_code{% - \expandafter\def\csname skvcode\__key\endcsname##1% + \expandafter\def\csname skvcode\skv__currentkey\endcsname##1% } \def\restoreKV[#1]{% \skv_ifcsname{skv_[#1]} - {\skv_eearg{\setKV[#1]}{\csname skv_[#1]\endcsname}} - {\errmessage{Undefined or not saved set of keys "#1"}}% + {% + \skv_eearg{\setKV[#1]}{\csname skv_[#1]\endcsname}% + } + {% + \skv_error{Undefined or not saved set of keys "#1"}% + }% } \let\useKVdefault\restoreKV %########################################## @@ -115,10 +129,11 @@ %########################################## \def\useKV[#1]{\romannumeral\skv_stripsp{\useKV_i[#1]}} \def\useKV_i[#1]#2{% - \ifcsname skv_[#1]_#2\endcsname - \expandafter\expandafter\expandafter\skv_stop\csname skv_[#1]_#2\expandafter\endcsname + \ifcsname skv_[#1]_\detokenize{#2}\endcsname + \expandafter\expandafter\expandafter\skv_stop\csname skv_[#1]_\detokenize{#2}\expandafter\endcsname \else - \skv_stop\errmessage{Key "#2" not defined in group of keys "#1"}% + \skv_stop + \skv_error{Key "\detokenize{#2}" not defined in group of keys "#1"}% \fi } %########################################## @@ -126,54 +141,100 @@ %########################################## \def\ifboolKV[#1]{\romannumeral\skv_stripsp{\ifboolKV_i[#1]}} \def\ifboolKV_i[#1]#2{% - \skv_ifempty{#2} - {\skv_stop\errmessage{Empty argument is not a valid boolean}\skv_second - } - {\skv_ifcsname{skv_[#1]_#2} - {\skv_eearg\ifboolKV_ii{\csname skv_[#1]_#2\endcsname}} - {\skv_stop\errmessage{Key "#2" not defined}\skv_second}% - }% + \ifcsname skv_[#1]_\detokenize{#2}\endcsname + \expandafter\expandafter\expandafter\ifboolKV_ii\csname skv_[#1]_\detokenize{#2}\expandafter\endcsname + \expandafter\ifboolKV_ii + \else + \skv_stop + \skv_error{Key "\detokenize{#2}" not defined in group of keys "#1"}% + \expandafter\skv_second + \fi } -\def\ifboolKV_ii#1{%% Cette macro teste si #1, qui est une <valeur>, vaut "true" ou "false" +\def\ifboolKV_ii#1\ifboolKV_ii{%% Cette macro teste si #1, qui est une <valeur>, vaut "true" ou "false" \skv_ifargtrue{#1} - {\expandafter\skv_stop\skv_first + {% + \expandafter\skv_stop + \skv_first } - {\skv_ifargfalse{#1} - {\expandafter\skv_stop\skv_second} - {\skv_stop\errmessage{Value "#1" is not a valid boolean}\skv_second}% + {% + \skv_ifargfalse{#1} + {% + \expandafter\skv_stop + \skv_second + } + {% + \skv_stop + \skv_error{Value "\detokenize{#1}" is not a valid boolean}% + \skv_second + }% }% } -\def\testboolKV#1{\romannumeral\skv_stripsp{\testboolKV_i}{#1}}% macro publique qui teste si #1 est <true> ou <false>, erreur sinon +\def\testboolKV{\romannumeral\skv_stripsp\testboolKV_i}% macro publique qui teste si #1 est <true> ou <false>, erreur sinon \def\testboolKV_i#1{% \skv_ifempty{#1} - {\skv_stop\errmessage{Empty argument is not a valid boolean}\skv_second} - {\skv_stripsp{\ifboolKV_ii}{#1}}% + {% + \skv_stop + \skv_error{Empty argument is not a valid boolean} + \skv_second + } + {% + \ifboolKV_ii#1\ifboolKV_ii + }% } \def\skv_ifargtrue#1{\skv_ifargtrue_i#1true\_nil} -\def\skv_ifargtrue_i#1true#2\_nil{\skv_ifempty{#1}{\skv_ifargtrue_ii#2\_nil}\skv_second} +\def\skv_ifargtrue_i#1true#2\_nil{% + \skv_ifempty{#1} + {% + \skv_ifargtrue_ii#2\_nil + } + {% + \skv_second + }% +} \def\skv_ifargtrue_ii#1true#2\_nil{\skv_ifempty{#1#2}} \def\skv_ifargfalse#1{\skv_ifargfalse_i#1false\_nil} -\def\skv_ifargfalse_i#1false#2\_nil{\skv_ifempty{#1}{\skv_ifargfalse_ii#2\_nil}\skv_second} +\def\skv_ifargfalse_i#1false#2\_nil{% + \skv_ifempty{#1} + {% + \skv_ifargfalse_ii#2\_nil + } + {% + \skv_second + }% +} \def\skv_ifargfalse_ii#1false#2\_nil{\skv_ifempty{#1#2}} %########################################## %############# Macro \showKV ############## %########################################## -\def\showKV[#1]#2{\skv_stripsp{\showKV_i[#1]}{#2}} +\def\showKV[#1]{\skv_stripsp{\showKV_i[#1]}} \def\showKV_i[#1]#2{% + \edef\skv__currentkey{_[#1]_\detokenize{#2}}% \immediate\write-1 {% - ^^JKey\space\space[#1]#2=% - \skv_ifcsname{skv_[#1]_#2} - {\expandafter\expandafter\expandafter\skv_show\expandafter - \meaning\csname skv_[#1]_#2\endcsname - \skv_ifcsname{skvcode_[#1]_#2} - {^^JCode [#1]#2=\expandafter\expandafter\expandafter\skv_show\expandafter - \meaning\csname skvcode_[#1]_#2\endcsname - } - {}% + ^^J% + Key\space\space\detokenize{[#1]#2 -> }% + \skv_ifcsname{skv\skv__currentkey} + {% + \showKV_ii{skv\skv__currentkey}% + ^^J% + Code \detokenize{[#1]#2 -> }% + \skv_ifcsname{skvcode\skv__currentkey} + {% + \showKV_ii{skvcode\skv__currentkey}% } - {not defined% + {% + not defined% }% - ^^J\relax}% + } + {% + not defined% + }% + ^^J% + \relax}% +} +\def\showKV_ii#1{% + \expandafter\expandafter\expandafter + \skv_show\expandafter + \meaning\csname#1\endcsname } \def\skv_show#1->{} \skv_restorecatcode @@ -194,4 +255,12 @@ Versions : | | | - la valeur n'est dépouillée que d'une accolade (et | | | | non pas de 2 comme auparavant) | | | | - quelques petits nettoyages, code en UTF8 | +|-----------------------------------------------------------------------------| +| 0.2b | 30/10/2022 | - messages d'erreur mieux formatés | +| | | - <clé> détokénisée dans \ifboolKV et \showKV pour | +| | | être cohérent avec \setKV et \useKV | +|-----------------------------------------------------------------------------| +| 0.2c | 02/10/2023 | - bug corrigé : si un item <clé=val> est vide, il est| +| | | ignoré | +| | | - quelques remaniements du code | |-----------------------------------------------------------------------------|
\ No newline at end of file diff --git a/macros/latex/contrib/beautybook/Beautybook-CN.cls b/macros/latex/contrib/beautybook/Beautybook-CN.cls index 9bc0666170..32a3f4de85 100644 --- a/macros/latex/contrib/beautybook/Beautybook-CN.cls +++ b/macros/latex/contrib/beautybook/Beautybook-CN.cls @@ -1,23 +1,20 @@ %This Class is based on the default book class and options will be passed \NeedsTeXFormat{LaTeX2e} -\ProvidesClass{Beautybook-CN}[17-06-2023 Beautybook Class] +\ProvidesClass{Beautybook-CN}[02-10-2023 V8.0 Beautybook Class] \DeclareOption*{\PassOptionsToClass{\CurrentOption}{ctexbook}} \ProcessOptions\relax -\LoadClass[twoside]{ctexbook} -\overfullrule=1pt -%\usepackage[fontsize=13.5pt]{fontsize} -\usepackage[dvipsnames,svgnames,x11names,table]{xcolor} +\LoadClass[twoside,a4paper]{ctexbook} +\RequirePackage[dvipsnames,svgnames,x11names,table]{xcolor} +\RequirePackage{cncolours} +\setmainfont{Times New Roman} \colorlet{outermarginfgcolor}{DarkCyan} % foregroundcolor 较深 \colorlet{outermarginbgcolor}{DarkCyan!30} % backgroundcolor 较浅 -\definecolor{高粱红}{HTML}{951c48} -\usepackage{cncolours} \RequirePackage{bropd} % math 自适应数学括号命令 \br{} !!! -\usepackage{tikz-imagelabels} % tikz图像标注 -\usepackage{epigraph-keys} % 名言引用 -\usepackage{fitbox} % 图像自适应 -\usepackage{xeCJKfntef} % 文字两端对齐 -\usepackage{pgfornament-han} -\usepackage{tikz} +\RequirePackage{tikz-imagelabels} % tikz图像标注 +\RequirePackage{epigraph-keys} % 名言引用 +\RequirePackage{fitbox} % 图像自适应 +\RequirePackage{pgfornament-han} +\RequirePackage{tikz} \usetikzlibrary{calc,shadows,hobby,intersections, decorations.markings, decorations.pathreplacing,spy,arrows,shapes,fadings,trees,mindmap,patterns,shapes.arrows,shapes.symbols,tikzmark,shapes.geometric,graphs, quotes, angles,decorations.pathmorphing,through,shadings,backgrounds,positioning,fit,arrows.meta,shapes.misc,decorations.shapes} \RequirePackage{pgfplots} %画图 %%页面样式设计核心包 %提供\pgfonlayer命令以及下列图层指令 \pgfplotsset{compat=1.18} @@ -28,10 +25,10 @@ { cover-choose.choice:, cover-choose.value_required:n = true, - cover-choose/cn.code:n = {\RequirePackage{stys/Beautybook-cn}}, - cover-choose/en.code:n = {\RequirePackage{stys/Beautybook-en}}, - cover-choose/enfig.code:n = {\RequirePackage{stys/Beautybook-enfig}}, - cover-choose/birkar.code:n = {\RequirePackage{stys/Beautybook-birkar}}, + cover-choose/cn.code:n = {\RequirePackage{stys/Beautybook-cover-cn}}, + cover-choose/en.code:n = {\RequirePackage{stys/Beautybook-cover-en}}, + cover-choose/enfig.code:n = {\RequirePackage{stys/Beautybook-cover-enfig}}, + cover-choose/birkar.code:n = {\RequirePackage{stys/Beautybook-cover-birkar}}, %cover-choose .initial:n = en , % 设置 en 为初始值 } \newtoks \l__Beautybook_tmpa_toks @@ -48,8 +45,12 @@ math-font.choice:, math-font.value_required:n = true, math-font/plain.code:n={}, + math-font/stix.code:n={ + \RequirePackage{stix} + }, math-font/mtpro2.code:n = { \RequirePackage{mtpro2} + \RequirePackage{bm} \DeclareFontFamily{U}{nxlmi}{} \DeclareFontSubstitution{U}{nxlmi}{m}{it} \DeclareFontShape{U}{nxlmi}{m}{it}{ @@ -75,12 +76,10 @@ \cs_new:Npn \__Beautybook_set_mathstyle: { \keys_set:nV { Beautybook / mathstyle } \l__Beautybook_tmpa_toks } \ExplSyntaxOff -% -\usepackage{stys/Beautybook-bottompage} % 封底 -% -\usepackage{rotating} +\RequirePackage{stys/Beautybook-bottompage} %封底 +\RequirePackage{rotating} \tikzset{>=Stealth} -\setlist{nosep,font=\upshape} % 取消所有列表默认距离 +\setlist{font=\upshape} % 取消所有列表默认距离 nosep, % 浮动环境设置 % 默认情况下, \LaTeX{} 要求每页的文字至少占据 20%,否则该页就只单独放置一个浮动环境, % 而这通常不是我们想要的, 我们将这个要求降低到 5%. @@ -99,31 +98,40 @@ % 如果图片没有指定后缀, 依次按下列顺序搜索 \DeclareGraphicsExtensions{.pdf,.eps,.jpg,.png} % 设置图表搜索路径, 可以给图表文件夹取如下名字 -\graphicspath{{figures/}{figure/}{pictures/}{picture/}{pic/}{pics/}{image/}{images/}} -\usepackage{amssymb,amsfonts} -\usepackage{makeidx} -\usepackage{etoolbox} % 判断函数 -\usepackage{paracol} -\usepackage{tikz-cd} -\usepackage{imakeidx} -\usepackage{anyfontsize} -\usepackage{calc} -\usepackage{xkeyval,ifthen} -\usepackage[backgroundcolor=yellow!40!cyan!20,bordercolor=yellow!40!cyan!20,linecolor=DarkCyan]{todonotes} -\usepackage{varwidth} -\usepackage[colorlinks,linkcolor = purple, %%修改此处为你想要的颜色 +\graphicspath{{inner_pics/}{inner_pics/titleimages/}{figures/}{figure/}{pictures/}{picture/}{pic/}{pics/}{image/}{images/}} +% \RequirePackage[physics]{stys/physicx} +% \RequirePackage{stys/Symbols} +\RequirePackage{extarrows} +\usetikzlibrary{tikzmark} +% \arrowname{super-script} +% \arrowname[sub-script]{super-script} +\RequirePackage{appendix} % 附录 +% \RequirePackage{stys/symbols} +% +\RequirePackage{amssymb,amsfonts,upgreek} +\RequirePackage{makeidx} +\RequirePackage{etoolbox} % 判断函数 +\RequirePackage{paracol} +\RequirePackage{tikz-cd} +\RequirePackage{imakeidx} +\RequirePackage{anyfontsize} +\RequirePackage{calc} +\RequirePackage{xkeyval,ifthen} +\RequirePackage[backgroundcolor=yellow!40!cyan!20,bordercolor=yellow!40!cyan!20,linecolor=DarkCyan]{todonotes} +\RequirePackage{varwidth} +\RequirePackage[colorlinks,linkcolor = purple, %%修改此处为你想要的颜色 anchorcolor = purple, %%修改此处为你想要的颜色 urlcolor = purple, %%修改此处为你想要的颜色 citecolor = purple, %%修改此处为你想要的颜色 ]{hyperref} \setcounter{tocdepth}{3} \setcounter{secnumdepth}{3}%增加编号深度 -\usepackage{dashrule} +\RequirePackage{dashrule} \newlength\outermarginwidth \setlength\outermarginwidth{1.5cm} \newlength\covershift \setlength\covershift{5cm} -\usepackage{caption} +\RequirePackage{caption} % 图注与表注格式 \colorlet{captioncolor}{outermarginfgcolor} % 图片和表格题注文字颜色 \makeatletter @@ -134,29 +142,23 @@ citecolor = purple, %%修改此处为你想要的颜色 \newcommand\presslogo[1]{\def\@presslogo{#1}} \newcommand\pressname[1]{\def\@pressname{#1}} \newcommand\coverimage[1]{\def\@coverimage{#1}} -\newcommand\chapoddimage[1]{\def\@chapoddimage{#1}} -\newcommand\chapevenimage[1]{\def\@chapevenimage{#1}} +\newcommand\chapimage[1]{\def\@chapimage{#1}} %%----------------------------------封面信息定义--------------------------------------------------------%% \makeatother -\usepackage{indentfirst} -\usepackage{physics} -\definecolor{nuanbai}{HTML}{f5f5f5} % F5F5F5 -\pagecolor{nuanbai} -\usepackage{amsmath} -\usepackage{zhlipsum} -\setmainfont{XITS} -\usepackage[left=2cm,right=2cm,top=.6cm,bottom=2.2cm]{geometry} -\usepackage{xpatch}%修正章节编号 -\usepackage[automark]{scrlayer-scrpage}%页面设置宏包,隶属于koma-script文档类 -\usepackage{fontawesome5} -\usepackage{mathrsfs} -\usepackage[most]{tcolorbox} +\RequirePackage{indentfirst} +\RequirePackage{amsmath} +\RequirePackage[left=2cm,right=2cm,top=.6cm,bottom=2.2cm]{geometry} +\RequirePackage{xpatch}%修正章节编号 +\RequirePackage[automark]{scrlayer-scrpage}%页面设置宏包,隶属于koma-script文档类 +\RequirePackage{fontawesome5} +\RequirePackage{mathrsfs} +\RequirePackage[most]{tcolorbox} \tcbuselibrary{breakable, skins,theorems}%TcolorBox Library -\usepackage{tabularx} -\usepackage{lastpage} -%\usepackage{twemojis} -\usepackage{ninecolors} -\usepackage{colortbl} %彩色表格 +\RequirePackage{tabularx} +\RequirePackage{lastpage} +%\RequirePackage{twemojis} +\RequirePackage{ninecolors} +\RequirePackage{colortbl} %彩色表格 \RequirePackage{tabularray} \UseTblrLibrary{amsmath} % 定义 +array, +matrix, +bmatrix, +Bmatrix, +pmatrix, +vmatrix, +Vmatrix 和 +cases 环境。其 @@ -166,26 +168,58 @@ citecolor = purple, %%修改此处为你想要的颜色 \UseTblrLibrary{booktabs} % 定义 \toprule、 \midrule、\bottomrule 和 \cmidrule 命令,这些命令可以直接用于 tblr环境中 \UseTblrLibrary{diagbox} % 在tblr 环境中使用 \diagbox 和\diagboxthree 命令排版斜线表头 \UseTblrLibrary{varwidth} % 为表格添加 measure 内部参数。当设置了 measure=vbox 后,则会使用 \vbox 测量单元格宽度。%可以使用stretch=-1 移除列表环境上下的间距, 注意,stretch=-1 选项也会移除单元格中的支架 -\usepackage{pgfornament} -\usepackage{zhnumber} -\usepackage{dashrule} -\usepackage{adjustbox} -\usepackage{enumitem} -\usepackage{multicol} -\usepackage{amsthm} +\RequirePackage{pgfornament} +\RequirePackage{zhnumber} +\RequirePackage{dashrule} +\RequirePackage{adjustbox} +\RequirePackage{enumitem} +\RequirePackage{multicol} +\RequirePackage{amsthm} \RequirePackage{thmtools,thm-restate}%定理环境 %定理的重写 -\usepackage{bclogo} -\usepackage{ulem} +\RequirePackage{bclogo} +\RequirePackage[normalem]{ulem} \RequirePackage{pgfplots} %画图 %%页面样式设计核心包 %提供\pgfonlayer命令以及下列图层指令 \pgfplotsset{compat=1.18} -\usepackage{graphicx}%修正minipage顶部对齐问题 +\RequirePackage{graphicx}%修正minipage顶部对齐问题 \pgfdeclarelayer{background} %背景%底层 \pgfdeclarelayer{foreground} %上层 \pgfdeclarelayer{top} %顶部 \pgfdeclarelayer{bottom} %底部 \pgfsetlayers{bottom,background,main,foreground,top} \newcommand{\tikzoverlay}[1]{\begin{tikzpicture}[remember picture,overlay] #1 \end{tikzpicture}} -\usepackage[explicit]{titlesec} +\RequirePackage[explicit]{titlesec} +\RequirePackage{titletoc} + +\newcommand\boxednum[1] +{ +\tcbsidebyside[sidebyside adapt=left, +nobeforeafter,fontupper=\sffamily\large\bfseries,fontlower=\large\bfseries,colframe=white,colupper=white,colback=outermarginfgcolor!90,colbacklower=gray!10,frame hidden,width =\textwidth, +top=0mm,bottom=0mm,right=0mm,left=2mm,before skip balanced=0em,after skip balanced=0em,arc=0pt,outer arc=0pt,bicolor,sidebyside gap=6mm,boxrule=0pt,sidebyside align=center,halign=center,halign lower=left,fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 +fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 +]{% left hand side % adjust from this side +\thecontentslabel +}{% right hand side +#1 \hfill \bfseries\sffamily\thecontentspage +}% end +} + +\newcommand\boxednonum[1] +{ +\begin{tcolorbox}[nobeforeafter,fontupper=\large,fontlower=\large\bfseries,colframe=white,fontupper=\sffamily\bfseries,colupper=white,colback=outermarginfgcolor!90,colbacklower=gray!10,frame hidden,width = 1\textwidth,sidebyside gap=6mm, +top=0mm,bottom=0mm,right=0cm,left=2mm,before skip balanced=0em,after skip balanced=0em,arc=0pt,outer arc=0pt,bicolor,sidebyside,boxrule=0pt,sidebyside align=center,halign=center,halign lower=left,lefthand width=3mm,fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 +fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 +] +\tcblower #1\hfill \bfseries\sffamily\thecontentspage +\end{tcolorbox} +} + +\titlecontents{chapter}[0mm] + {\addvspace{-.5em}} + {\contentsmargin{0pt}\boxednum} + {\contentsmargin{0pt}\boxednonum} + {} + [\addvspace{-.5em}] + % tcolorbox中插入图片或者tikz绘图方法 \newcommand\Figure[4]{% \begin{center} @@ -231,91 +265,139 @@ citecolor = purple, %%修改此处为你想要的颜色 anchor=west,] {$#1$ ~ #2} (\linewidth,0); \end{tikzpicture}\bigskip\smallskip } -\usepackage{extarrows} +\RequirePackage{extarrows} \newcommand{\R}{\mathbb{R}} \newcommand{\F}{\mathcal{F}} \newcommand{\lan}[1]{\langle #1 \rangle} \newenvironment{eq}[1]{\begin{equation}\begin{aligned}#1}{\end{aligned}\end{equation}} %有编号 \newenvironment{eq*}[1]{\begin{equation*}\begin{aligned}#1}{\end{aligned}\end{equation*}} %无编号 -\everymath{\displaystyle} +% \everymath{\displaystyle} %% -------- 章节样式 \makeatletter +% titleimage +\ExplSyntaxOn +\seq_new:N \g__Beautybook_chapter_oimage_seq % odd +\seq_new:N \g__Beautybook_chapter_eimage_seq % even +\seq_new:N \g__Beautybook_part_oimage_seq % odd +\seq_new:N \g__Beautybook_part_eimage_seq % even +% +\keys_define:nn { Beautybook/titleimage } + { + chapteroddimage .code:n = + \seq_gset_from_clist:Nn \g__Beautybook_chapter_oimage_seq {#1} , + chapterevenimage .code:n = + \seq_gset_from_clist:Nn \g__Beautybook_chapter_eimage_seq {#1} , + partoddimage .code:n = + \seq_gset_from_clist:Nn \g__Beautybook_part_oimage_seq {#1} , + partevenimage .code:n = + \seq_gset_from_clist:Nn \g__Beautybook_part_eimage_seq {#1} , + } +\cs_new:Npn \__Beautybook_title_image:Nn #1#2 % image seq, number + { \seq_item:Nn #1 { \int_mod:nn {#2} { \seq_count:N #1 } + 1 } } %对照表-对录入的字符串进行编号 +\cs_new:Npn \Beautybook@chapterimagename %生成索契表 : 判断奇偶数页并按(章节编号)!!读取相应的列表组中的字符串 + { + \int_if_odd:nTF { \value{page} } + { \__Beautybook_title_image:Nn \g__Beautybook_chapter_oimage_seq { \value{chapter} } } + { \__Beautybook_title_image:Nn \g__Beautybook_chapter_eimage_seq { \value{chapter} } } + } +\cs_new:Npn \Beautybook@partimagename + { + \int_if_odd:nTF { \value{page} } + { \__Beautybook_title_image:Nn \g__Beautybook_part_oimage_seq { \value{part} } } + { \__Beautybook_title_image:Nn \g__Beautybook_part_eimage_seq { \value{part} } } + } +\cs_new_protected:Npn \titleimage #1 + { \keys_set:nn { Beautybook/titleimage } {#1} } +\ExplSyntaxOff +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \titleformat{\chapter}{\huge\bfseries\filcenter}{}{1em}{ \makebox[0pt][l]{\def\rad{7pt}% \begin{tikzpicture}[remember picture, overlay]% \begin{pgfonlayer}{bottom} - \shade[left color=outermarginbgcolor!20,middle color=outermarginbgcolor!50,right color=outermarginfgcolor!20] (current page.north west) rectangle ++(\paperwidth,-.2\paperheight); % background + \ifodd\value{page} + \shade[right color=outermarginbgcolor!30,middle color=outermarginbgcolor!50,left color=outermarginfgcolor!30] (current page.north west) rectangle ++(\paperwidth,-.2\paperheight+0.3cm); % background odd + \else + \shade[left color=outermarginbgcolor!30,middle color=outermarginbgcolor!50,right color=outermarginfgcolor!30] (current page.north west) rectangle ++(\paperwidth,-.2\paperheight+0.3cm); % background even + \fi \fill[outermarginfgcolor,opacity=.5]([shift={(0,-4.45cm)}]current page.north west) rectangle ++(\paperwidth,-2mm); % line \end{pgfonlayer} \path[fill=outermarginfgcolor]node[append after command={ ([xshift=-3*\rad]chapinfoofpart.north west) to[out=0,in=-180,looseness=1] ([xshift=\rad]chapinfoofpart.south west) --([xshift=-\rad]chapinfoofpart.south east) to[out=0,in=180,looseness=1] ([xshift=3*\rad]chapinfoofpart.north east) --cycle}, - text=white,font=\large\bfseries,align=center,minimum height=1cm] (chapinfoofpart) at ([shift={(.6\linewidth,-4.95cm)}]current page.north west) {Part\ \thepart}; + text=white,font=\sffamily\large\bfseries,align=center,minimum height=1cm] (chapinfoofpart) at ([shift={(.6\linewidth,-4.95cm)}]current page.north west) {Part\ \thepart}; \begin{pgfonlayer}{bottom} \fill[outermarginfgcolor!90,opacity=0.5] ([shift={(-3*\rad,0)}]chapinfoofpart.north west) to[out=180,in=0,looseness=1] +(-4*\rad,-1.2cm)--([shift={(7*\rad,-1.2cm)}]chapinfoofpart.north east) to[out=-180,in=0,looseness=1] +(-4*\rad,1.2cm); % partnumber shade \end{pgfonlayer} \ifodd\value{page} \begin{pgfonlayer}{top} - \fill[outermarginfgcolor,opacity=0.8,rounded corners=5pt]node[append after command={([yshift=2cm]chapnum.north west) rectangle (chapnum.south east)},right,text=white,minimum width=2cm,align=center,font=\bf] (chapnum) at ([shift={(2cm,-2.5cm)}]current page.north west) {\scalebox{3}{\thechapter}}; - % \pattern[pattern=sixpointed stars,pattern color=outermarginfgcolor!50,opacity=0.8] - % ([yshift=2cm]chapnum.north west) rectangle (chapnum.south east); + \fill[outermarginfgcolor,opacity=0.7,rounded corners=5pt]node[append after command={([yshift=2cm]chapnum.north west) rectangle (chapnum.south east)},right,text=white,minimum width=2cm,align=center,font=\sffamily\bfseries] (chapnum) at ([shift={(1.5cm,-2.5cm)}]current page.north west) {\scalebox{3}{\thechapter}}; + \begin{pgfonlayer}{foreground} + \pattern[pattern=sixpointed stars,pattern color=white,opacity=1.0,rounded corners=5pt] + ([yshift=2cm]chapnum.north west) rectangle (chapnum.south east); + \end{pgfonlayer} \fill [outermarginfgcolor,path fading=fade up,rounded corners=5pt]% ([yshift=2cm]chapnum.north west) rectangle (chapnum.south east); - \node[above left,font=\fontsize{25}{25}\selectfont\bfseries,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north east) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}}; + \node[above left,font=\sc\fontsize{22pt}{22pt}\selectfont,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north east) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}}; \end{pgfonlayer} \begin{pgfonlayer}{bottom} - \node[right] (image) at ([shift={(-0.5cm,-2.8cm)}]current page.north west) {\includegraphics[width=7cm]{\@chapoddimage}}; + \node[right] (image) at ([shift={(-0.5cm,-2.8cm)}]current page.north west) {\includegraphics[width=7cm]{\@chapimage}}; \end{pgfonlayer} - \node[above left,font=\fontsize{15}{15}\selectfont,circle,fill=outermarginfgcolor,text=white,inner sep=1mm] (pagenumber) at ([shift={(-5mm,5mm)}]current page.south east) {\thepage}; \else \begin{pgfonlayer}{top} - \fill[outermarginfgcolor,opacity=0.8,rounded corners=5pt]node[append after command={([yshift=2cm]chapnum.north west) rectangle (chapnum.south east)},left,text=white,minimum width=2cm,align=center,font=\bf] (chapnum) at ([shift={(-2.0cm,-2.5cm)}]current page.north east) {\scalebox{3}{\thechapter}}; - % \pattern[pattern=sixpointed stars,pattern color=outermarginfgcolor!50,opacity=0.8] - % ([yshift=2cm]chapnum.north west) rectangle (chapnum.south east); + \fill[outermarginfgcolor,opacity=0.7,rounded corners=5pt]node[append after command={([yshift=2cm]chapnum.north west) rectangle (chapnum.south east)},left,text=white,minimum width=2cm,align=center,font=\sffamily\bfseries] (chapnum) at ([shift={(-1.5cm,-2.5cm)}]current page.north east) {\scalebox{3}{\thechapter}}; + \begin{pgfonlayer}{foreground} + \pattern[pattern=sixpointed stars,pattern color=white,opacity=1.0,rounded corners=5pt] + ([yshift=2cm]chapnum.north west) rectangle (chapnum.south east); + \end{pgfonlayer} \fill [outermarginfgcolor,path fading=fade up,rounded corners=5pt]% ([yshift=2cm]chapnum.north west) rectangle (chapnum.south east); - \node[above right,font=\fontsize{25}{25}\selectfont\bfseries,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north west) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}}; + \node[above right,font=\sc\fontsize{22pt}{22pt}\selectfont,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north west) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}}; \end{pgfonlayer} \begin{pgfonlayer}{background} - \node[left] (image) at ([shift={(0.5cm,-2.8cm)}]current page.north east) {\includegraphics[width=7cm]{\@chapevenimage}}; + \node[left] (image) at ([shift={(0.5cm,-2.8cm)}]current page.north east) {\includegraphics[width=7cm]{\@chapimage}}; \end{pgfonlayer} - \node[above right,font=\fontsize{15}{15}\selectfont,circle,fill=outermarginfgcolor,text=white,inner sep=1mm] (pagenumber) at ([shift={(5mm,5mm)}]current page.south west) {\thepage}; \fi - \fill[outermarginfgcolor,rounded corners=2pt] - (current page.south west) -- ++(1.5mm,1.5mm) --++(\paperwidth-3mm,0mm)--++(1.5mm,-1.5mm)--cycle; + \path[fill=outermarginbgcolor]node[append after command={ + ([xshift=-2*\rad]pagenumber.south west) to[out=0,in=180,looseness=1] ([xshift=\rad]pagenumber.north west) --([xshift=-\rad]pagenumber.north east) to[out=0,in=-180,looseness=1] ([xshift=2*\rad]pagenumber.south east) --cycle}, + text=outermarginfgcolor,font=\sffamily\fontsize{15}{15}\selectfont\bfseries,align=center,minimum height=0.4cm,minimum width=1.3cm,inner sep=1.5mm] (pagenumber) at ([shift={(0,0.3cm)}]current page.south) {\thepage}; \end{tikzpicture}} } \titleformat{name=\chapter,numberless}{\bfseries\huge\filcenter}{}{1em}{ \makebox[0pt][l]{\def\rad{7pt}% \begin{tikzpicture}[remember picture, overlay]% \begin{pgfonlayer}{bottom} - \shade[left color=outermarginbgcolor!20,middle color=outermarginbgcolor!50,right color=outermarginfgcolor!20] (current page.north west) rectangle ++(\paperwidth,-.2\paperheight); % background + \ifodd\value{page} + \shade[right color=outermarginbgcolor!30,middle color=outermarginbgcolor!50,left color=outermarginfgcolor!30] (current page.north west) rectangle ++(\paperwidth,-.2\paperheight); % background odd + \else + \shade[left color=outermarginbgcolor!30,middle color=outermarginbgcolor!50,right color=outermarginfgcolor!30] (current page.north west) rectangle ++(\paperwidth,-.2\paperheight); % background even + \fi \fill[outermarginfgcolor,opacity=.5]([shift={(0,-4.45cm)}]current page.north west) rectangle ++(\paperwidth,-2mm); % line \end{pgfonlayer} \ifodd\value{page} \begin{pgfonlayer}{top} - \node[above left,font=\fontsize{25}{25}\selectfont\bfseries,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north east) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}}; + \node[above left,font=\sc\fontsize{25pt}{25pt}\selectfont,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north east) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}}; \end{pgfonlayer} \begin{pgfonlayer}{bottom} - \node[right] (image) at ([shift={(-0.5cm,-2.8cm)}]current page.north west) {\includegraphics[width=7cm]{\@chapoddimage}}; + \node[right] (image) at ([shift={(-0.5cm,-2.8cm)}]current page.north west) {\includegraphics[width=7cm]{\@chapimage}}; \end{pgfonlayer} - \node[above left,font=\fontsize{15}{15}\selectfont,circle,fill=outermarginfgcolor,text=white,inner sep=1mm] (pagenumber) at ([shift={(-5mm,5mm)}]current page.south east) {\thepage}; \else \begin{pgfonlayer}{top} - \node[above right,font=\fontsize{25}{25}\selectfont\bfseries,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north west) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}}; + \node[above right,font=\sc\fontsize{25pt}{25pt}\selectfont,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north west) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}}; \end{pgfonlayer} \begin{pgfonlayer}{background} - \node[left] (image) at ([shift={(0.5cm,-2.8cm)}]current page.north east) {\includegraphics[width=7cm]{\@chapevenimage}}; + \node[left] (image) at ([shift={(0.5cm,-2.8cm)}]current page.north east) {\includegraphics[width=7cm]{\@chapimage}}; \end{pgfonlayer} - \node[above right,font=\fontsize{15}{15}\selectfont,circle,fill=outermarginfgcolor,text=white,inner sep=1mm] (pagenumber) at ([shift={(5mm,5mm)}]current page.south west) {\thepage}; \fi - \fill[outermarginfgcolor,rounded corners=2pt] - (current page.south west) -- ++(1.5mm,1.5mm) --++(\paperwidth-3mm,0mm)--++(1.5mm,-1.5mm)--cycle; + \path[fill=outermarginbgcolor]node[append after command={ + ([xshift=-2*\rad]pagenumber.south west) to[out=0,in=180,looseness=1] ([xshift=\rad]pagenumber.north west) --([xshift=-\rad]pagenumber.north east) to[out=0,in=-180,looseness=1] ([xshift=2*\rad]pagenumber.south east) --cycle}, + text=outermarginfgcolor,font=\sffamily\fontsize{15}{15}\selectfont\bfseries,align=center,minimum height=0.4cm,minimum width=1.3cm,inner sep=1.5mm] (pagenumber) at ([shift={(0,0.3cm)}]current page.south) {\thepage}; \end{tikzpicture}} } -\titlespacing{\chapter}{0pt}{0pt}{65pt} +\titlespacing{\chapter}{0pt}{0pt}{70pt} \makeatother % -------- Part定制 +\tikzfading[name=middle, top color=transparent!90, bottom +color=transparent!90, middle color=transparent!20] \makeatletter \newcommand\partabstract[1]{\def\@partabstract{#1}} \newcommand\partimage[1]{\def\@partimage{#1}} @@ -328,8 +410,19 @@ citecolor = purple, %%修改此处为你想要的颜色 \fill[outermarginbgcolor,opacity=0.6] (current page.north west) rectangle (current page.south east); \ifodd\value{page} - \fill[outermarginfgcolor] - (current page.north east) rectangle ++(-\barwidth,-\paperheight); + \fill [outermarginfgcolor!20]% + (current page.north east) rectangle ++(-\outermarginwidth,-\paperheight); + \pattern [pattern=north east lines,pattern color=outermarginfgcolor!50]% + (current page.north east) rectangle ++(-\outermarginwidth,-\paperheight); + \fill [outermarginbgcolor!90,path fading=fade south]% + ([yshift=1mm]current page.north east) rectangle ++(-\outermarginwidth,-.8\paperheight); + \fill [outermarginbgcolor,path fading=fade north]% + (current page.south east) rectangle ++(-\outermarginwidth,.8\paperheight);% + % lines + \fill[outermarginfgcolor,rounded corners=2pt] (current page.north east) --++(-5pt,-0.15cm)--++(-\outermarginwidth+10pt,0) --++(-5pt,0.15cm)--cycle; + \coordinate (anchor of headmark) at ([shift={(-1.2\outermarginwidth,-0.2cm)}]current page.north east); + \node[below ,text=outermarginfgcolor,font=\sffamily\bfseries\fontsize{15}{20}\selectfont] (partpagenum) at ([shift={(-.5\outermarginwidth,0)}]current page.north east) {\thepage}; + \fill[outermarginfgcolor,rounded corners=2pt] (current page.south east) --++(-5pt,0.15cm)--++(-\outermarginwidth+10pt,0) --++(-5pt,-0.15cm)--cycle; % 页码横线 \node[] (hbar) at ($(current page.north)!0.33!(current page.south)$) { \begin{tikzpicture} \fill[white] @@ -344,15 +437,25 @@ citecolor = purple, %%修改此处为你想要的颜色 (.67\paperwidth+4.4cm,-.25cm) rectangle ++(1mm,-.5cm); \end{tikzpicture} }; - \node[above,font=\sffamily\huge,shift={(.33\linewidth,.5\barwidth)}] (partname) at (hbar) {第\,\zhnumber{\arabic{part}}\,部\,分}; - \node[below,left,font=\bfseries\huge,shift={(.146\linewidth,-1.5*\barwidth)}] (partcontents) at (partname) {\begin{varwidth}{.8\linewidth}\raggedright\baselineskip=2.8ex #1 \end{varwidth}}; % 标题名称 + \node[above,font=\sc\huge,shift={(.33\linewidth,.5\barwidth)}] (partname) at (hbar) {Part\ \thepart}; + \node[below,left,font=\sc\huge,shift={(.146\linewidth,-1.5*\barwidth)}] (partcontents) at (partname) {\begin{varwidth}{.8\linewidth}\raggedright\baselineskip=2ex #1 \end{varwidth}}; % 标题名称 \begin{pgfonlayer}{background} - \node[above,shift={(-.4\linewidth,-4*\barwidth)},opacity=0.8] at (partname) {\ifdefvoid{\@partimage}{}{\includegraphics[width=1.2\linewidth]{\@partimage}}}; % 图片位置调整 + \node[above,shift={(-.4\linewidth,-4*\barwidth)}] at (partname) {\ifdefvoid{\@partimage}{}{\includegraphics[width=1.2\linewidth]{\@partimage}}}; % 图片位置调整 \end{pgfonlayer} - \node[above right,font=\fontsize{15}{15}\selectfont,circle,fill=outermarginfgcolor,text=white,inner sep=1mm] (pagenumber) at ([shift={(5mm,5mm)}]current page.south west) {\thepage}; \else - \fill[outermarginfgcolor] - (current page.north west) rectangle ++(\barwidth,-\paperheight); + \fill [outermarginfgcolor!20]% + (current page.north west) rectangle ++(\outermarginwidth,-\paperheight); + \pattern [pattern=north west lines,pattern color=outermarginfgcolor!50]% + (current page.north west) rectangle ++(\outermarginwidth,-\paperheight); + \fill [outermarginbgcolor!90,path fading=fade south]% + ([yshift=1mm]current page.north west) rectangle ++(\outermarginwidth,-.8\paperheight); + \fill [outermarginbgcolor,path fading=fade north]% + (current page.south west) rectangle ++(\outermarginwidth,.8\paperheight);% + % lines + \fill[outermarginfgcolor,rounded corners=2pt] (current page.north west) --++(5pt,-0.15cm)--++(\outermarginwidth-10pt,0) --++(5pt,0.15cm)--cycle; + \coordinate (anchor of headmark) at ([shift={(1.2\outermarginwidth,-0.2cm)}]current page.north west); + \node[below ,text=outermarginfgcolor,font=\sffamily\bfseries\fontsize{15}{20}\selectfont] (partpagenum) at ([shift={(.5\outermarginwidth,0)}]current page.north west) {\thepage}; + \fill[outermarginfgcolor,rounded corners=2pt] (current page.south west) --++(5pt,0.15cm)--++(\outermarginwidth-10pt,0) --++(5pt,-0.15cm)--cycle; % 页码横线 \node[] (hbar) at ($(current page.north)!0.33!(current page.south)$) { \begin{tikzpicture} \fill[white] @@ -367,41 +470,53 @@ citecolor = purple, %%修改此处为你想要的颜色 (.15\paperwidth+4.5cm,-.25cm) rectangle ++(1mm,-.5cm); \end{tikzpicture} }; - \node[above,font=\sffamily\huge,shift={(-.31\linewidth,.5\barwidth)}] (partname) at (hbar) {第\,\zhnumber{\arabic{part}}\,部\,分}; - \node[below right,font=\bfseries\huge,shift={(-.125\linewidth,-1.2*\barwidth)}] (partcontents) at (partname) {\begin{varwidth}{.8\linewidth}\raggedright\baselineskip=2.8ex #1 \end{varwidth}}; % 标题名称 + \node[above,font=\sc\huge,shift={(-.31\linewidth,.5\barwidth)}] (partname) at (hbar) {Part\ \thepart}; + \node[below right,font=\sc\huge,shift={(-.125\linewidth,-1.2*\barwidth)}] (partcontents) at (partname) {\begin{varwidth}{.8\linewidth}\raggedright\baselineskip=2ex #1 \end{varwidth}}; % 标题名称 \begin{pgfonlayer}{background} - \node[above,shift={(.4\linewidth,-4*\barwidth)},opacity=0.8] at (partname) {\ifdefvoid{\@partimage}{}{\includegraphics[width=1.2\linewidth]{\@partimage}}}; % 图片位置调整 + \node[above,shift={(.35\linewidth,-4*\barwidth)}] at (partname) {\ifdefvoid{\@partimage}{}{\includegraphics[width=1.2\linewidth]{\@partimage}}}; % 图片位置调整 \end{pgfonlayer} - \node[above left,font=\fontsize{15}{15}\selectfont,circle,fill=outermarginfgcolor,text=white,inner sep=1mm] (pagenumber) at ([shift={(-5mm,5mm)}]current page.south east) {\thepage}; \fi \node[below,,font=\itshape\fontsize{13}{13}\selectfont,shift={(0\linewidth,-1.65*\barwidth)}] at (hbar) {\ifdefvoid{\@partabstract}{}{\begin{varwidth}{.85\linewidth}\baselineskip=3ex \@partabstract\end{varwidth}}}; % 简介文字调整 \end{tikzpicture}} \makeatother \assignpagestyle{\part}{empty} \assignpagestyle{\chapter}{empty} -%% -- Section + + +%% -- Section \titleformat{\section} {} {} {-.5em} %左右移动\thesection标签位置 {\mysectionformat{#1}} +\titleformat{name=\section,numberless}{}{}{-.5em}{\mysectionnonumformat{#1}} + \newcommand{\mysectionformat}[1]{% \makebox[0pt][l]{\def\rad{7pt}% \begin{tikzpicture}[remember picture] \path[fill=outermarginfgcolor,drop shadow={opacity=0.3,shadow xshift=.05cm,shadow yshift=-.05cm}]node[append after command={ ([xshift=\rad]sec.north west) to[out=180,in=0,looseness=1] ([xshift=-3*\rad]sec.south west) --([xshift=-\rad]sec.south east) to[out=0,in=180,looseness=1] ([xshift=3*\rad]sec.north east) --cycle}, - text=white,font=\rmfamily\large\bfseries,align=center,inner ysep=2mm] (sec) at (0,0) {Sec\ \thesection}; - \draw[outermarginbgcolor,line width=0.5pt] (sec.north east)--++(.8\linewidth,0); - \node[text=black,font=\rmfamily\bfseries\Large,below right] (secnum) at ([shift={(0,0mm)}]sec.north east) {\begin{varwidth}{.85\linewidth}\setlength\baselineskip{22.5pt}\hspace{.5cm}#1\end{varwidth}}; + text=white,font=\sffamily\large\bfseries,align=center,inner ysep=2mm] (sec) at (0,0) {Sec\ \thesection}; + \node[text=black,font=\large,below right] (secnum) at ([shift={(0,-1mm)}]sec.north east) {\begin{varwidth}{.85\linewidth}\setlength\baselineskip{18pt}\hspace{.5cm}#1\end{varwidth}}; +\end{tikzpicture}}}%最后一个选项为 [<after code>] + +\newcommand{\mysectionnonumformat}[1]{% +\makebox[0pt][l]{\def\rad{7pt}% +\begin{tikzpicture}[remember picture] + \path[fill=outermarginfgcolor,drop shadow={opacity=0.3,shadow xshift=.05cm,shadow yshift=-.05cm}]node[append after command={ + ([xshift=\rad]sec.north west) to[out=180,in=0,looseness=1] ([xshift=-3*\rad]sec.south west) --([xshift=-\rad]sec.south east) to[out=0,in=180,looseness=1] ([xshift=3*\rad]sec.north east) --cycle}, + text=white,font=\sffamily\large\bfseries,align=center,inner ysep=2mm] (sec) at (0,0) {Sec}; + \node[text=black,font=\large,below right] (secnum) at ([shift={(0,-1mm)}]sec.north east) {\begin{varwidth}{.85\linewidth}\setlength\baselineskip{18pt}\hspace{.5cm}#1\end{varwidth}}; \end{tikzpicture}}}%最后一个选项为 [<after code>] + \titlespacing*{\section}{0pt}{3.5ex plus 1ex minus .2ex}{2.3ex plus .2ex} -% 侧边条 + +%%-------------------------------- SCRLAYER-SCRPAGE -------------------------------------%% +%% SIDE-BAR \newlength\chapternumbersize -\setlength\chapternumbersize{40pt} +\setlength\chapternumbersize{36pt} \setlength{\headheight}{40pt} % 页眉高度 -\usepackage{xpatch} -\usepackage{scrlayer-scrpage} \renewcommand\chaptermarkformat{} % define a new mark for the chapter number \newmarks\chapternum @@ -415,28 +530,30 @@ citecolor = purple, %%修改此处为你想要的颜色 \ifodd\value{page} \fill[outermarginfgcolor,rounded corners=2pt] (current page.north east) --++(-5pt,-0.15cm)--++(-\outermarginwidth+10pt,0) --++(-5pt,0.15cm)--cycle; \coordinate (anchor of headmark) at ([shift={(-1.2\outermarginwidth,-0.2cm)}]current page.north east); - \node[below ,text=outermarginfgcolor,font=\bfseries\fontsize{20}{20}\selectfont] at ([shift={(-.5\outermarginwidth,-0.2cm)}]current page.north east) {\thepage}; - \node[below left,font=\upshape,text=outermarginfgcolor] at (anchor of headmark) {\begin{varwidth}{\linewidth}\rightmark\end{varwidth}}; - \fill[outermarginfgcolor,rounded corners=2pt] (current page.south east) --++(-5pt,0.15cm)--++(-\outermarginwidth+10pt,0) --++(-5pt,-0.15cm)--cycle; + \node[below ,text=outermarginfgcolor,font=\sffamily\bfseries\fontsize{15}{15}\selectfont] at ([shift={(-.5\outermarginwidth,-0.15cm)}]current page.north east) {\thepage}; + \fill[outermarginfgcolor!50,rounded corners=1pt] ([shift={(0.2\outermarginwidth,0.2cm)}]anchor of headmark) --++(-5pt,-0.15cm)--++(-.45\linewidth,0) --++(-5pt,0.15cm)--cycle; % 页眉横线 + \node[below left,font=\upshape,text=outermarginfgcolor] at ([yshift=0.05cm]anchor of headmark) {\begin{varwidth}{\linewidth}\rightmark\end{varwidth}}; + \fill[outermarginfgcolor,rounded corners=2pt] (current page.south east) --++(-5pt,0.15cm)--++(-\outermarginwidth+10pt,0) --++(-5pt,-0.15cm)--cycle; % 页码横线 \else \fill[outermarginfgcolor,rounded corners=2pt] (current page.north west) --++(5pt,-0.15cm)--++(\outermarginwidth-10pt,0) --++(5pt,0.15cm)--cycle; \coordinate (anchor of headmark) at ([shift={(1.2\outermarginwidth,-0.2cm)}]current page.north west); - \node[below ,text=outermarginfgcolor,font=\bfseries\fontsize{20}{20}\selectfont] at ([shift={(.5\outermarginwidth,-0.2cm)}]current page.north west) {\thepage}; - \node[below right,font=\upshape,text=outermarginfgcolor] at (anchor of headmark) {\begin{varwidth}{\linewidth}\rightmark\end{varwidth}}; - \fill[outermarginfgcolor,rounded corners=2pt] (current page.south west) --++(5pt,0.15cm)--++(\outermarginwidth-10pt,0) --++(5pt,-0.15cm)--cycle; + \node[below ,text=outermarginfgcolor,font=\sffamily\bfseries\fontsize{15}{15}\selectfont] at ([shift={(.5\outermarginwidth,-0.15cm)}]current page.north west) {\thepage}; + \fill[outermarginfgcolor!50,rounded corners=1pt] ([shift={(-0.2\outermarginwidth,0.2cm)}]anchor of headmark) --++(5pt,-0.15cm)--++(.45\linewidth,0) --++(5pt,0.15cm)--cycle; % 页眉横线 + \node[below right,font=\upshape,text=outermarginfgcolor] at ([yshift=0.05cm]anchor of headmark) {\begin{varwidth}{\linewidth}\rightmark\end{varwidth}}; + \fill[outermarginfgcolor,rounded corners=2pt] (current page.south west) --++(5pt,0.15cm)--++(\outermarginwidth-10pt,0) --++(5pt,-0.15cm)--cycle; % 页码横线 \fi \end{pgfonlayer}} } \newlength\baryshift -\setlength\baryshift{-2.5\outermarginwidth} +\setlength\baryshift{-2.5\outermarginwidth} \makeatletter % Add A Side-Bar Box For The Chapter Number \newcommand*\outermarginchapternumberbox{% \if@mainmatter \tikzoverlay{ - \shade[top color=outermarginfgcolor!90,bottom color=outermarginbgcolor] - (\outermarginwidth,-.5\outermarginwidth) rectangle (0,-1.5\outermarginwidth); - \node[anchor=center,text=white,font=\bfseries] at (1/2*\outermarginwidth,-\outermarginwidth) {\usekomafont{chapternumber}{\botmarks\chapternum}};% + \shade[top color=outermarginfgcolor!90,bottom color=outermarginbgcolor] + (\outermarginwidth,-.5\outermarginwidth+2mm) rectangle (0,-1.5\outermarginwidth+2mm); + \node[anchor=center,text=white,font=\sffamily\bfseries] at (1/2*\outermarginwidth,-\outermarginwidth+2mm) {\usekomafont{chapternumber}{\botmarks\chapternum}};% } \fi \vfill @@ -463,7 +580,7 @@ citecolor = purple, %%修改此处为你想要的颜色 \makeatother % \newkomafont{outermargin}{%页边章节名称字体 - \sffamily\bfseries\fontsize{15}{15}\selectfont\color{outermarginfgcolor} + \bfseries\fontsize{15}{15}\selectfont\color{outermarginfgcolor} } % declare new page style using layers \DeclareNewPageStyleByLayers{scth}{% @@ -580,11 +697,9 @@ citecolor = purple, %%修改此处为你想要的颜色 \ohead{} \cfoot{} \ofoot{} -% set the contents of the outer margin on even and odd pages for scrheadings, plain and scth -\oddoutermargin{\bf\leftmark} % Odd 奇数页 -\makeatletter -\evenoutermargin{\bfseries\@title} % Even 偶数页 -\makeatother + +%%-------------------------------- SCRLAYER-SCRPAGE -------------------------------------%% + %% Begin The Most Beautiful Box (STYLE : ys style) % 中国风盒子 \makeatletter \definecolor{framegolden}{HTML}{455a64} % 控制外框颜色 @@ -625,7 +740,7 @@ color(75bp)=(pgftransparent!100); color(100bp)=(pgftransparent!100)} ([xshift=-\ys@frame@linewidth,#2]frame.south west)--cycle;} \def\ys@frame@unbrokenouter{% \path[draw=framegolden,fill=framegray,fill opacity=\ys@frame@fill@opacity,line width=\ys@frame@linewidth] - ([xshift=\ys@frame@radius]frame.north west)--([xshift=-\ys@frame@radius]frame.north east) + ([xshift=\ys@frame@radius]frame.north west)--([xshift=-\ys@frame@radius]frame.north east) arc(-180:-90:\ys@frame@radius)-- ([yshift=-\ys@frame@radius]frame.north east)--([yshift=\ys@frame@radius]frame.south east) arc(90:180:\ys@frame@radius)-- @@ -636,7 +751,7 @@ color(75bp)=(pgftransparent!100); color(100bp)=(pgftransparent!100)} \def\ys@frame@firstouter{% \ys@frame@remove@middleline{yshift=.5\ys@frame@linewidth}{yshift=.7\ys@frame@linewidth}% \path[draw=framegolden,fill=framegray,fill opacity=\ys@frame@fill@opacity,line width=\ys@frame@linewidth] - ([xshift=\ys@frame@radius]frame.north west)--([xshift=-\ys@frame@radius]frame.north east) + ([xshift=\ys@frame@radius]frame.north west)--([xshift=-\ys@frame@radius]frame.north east) arc(-180:-90:\ys@frame@radius)-- ([yshift=-\ys@frame@radius]frame.north east)-- (frame.south east)-- @@ -658,10 +773,10 @@ color(75bp)=(pgftransparent!100); color(100bp)=(pgftransparent!100)} arc(0:90:\ys@frame@radius)-- ([yshift=\ys@frame@radius]frame.south west)-- (frame.north west)--cycle;} -%endregion +%endregion %region inner \def\ys@frame@unbrokeninner{% -\path[draw=framegolden,line width=.5\ys@frame@linewidth,line cap=round] +\path[draw=framegolden,line width=.5\ys@frame@linewidth,line cap=round] ([xshift=\ys@frame@radius+2\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north west) --([xshift=\ys@frame@radius+5\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north west) --++(45:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth) ([xshift=\ys@frame@radius+6\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north west)--++(-45:2\ys@frame@linewidth)--++(45:2\ys@frame@linewidth) %第一节 @@ -691,7 +806,7 @@ color(75bp)=(pgftransparent!100); color(100bp)=(pgftransparent!100)} ([yshift=\ys@frame@radius+7.828\ys@frame@linewidth,xshift=\ys@frame@sep]frame.south west)--++(-45:2\ys@frame@linewidth)--++(-135:2\ys@frame@linewidth) %第二节 --([yshift=\ys@frame@radius+2\ys@frame@linewidth,xshift=\ys@frame@sep]frame.south west);} \def\ys@frame@firstinner{% - \path[draw=framegolden,line width=.5\ys@frame@linewidth,line cap=round] + \path[draw=framegolden,line width=.5\ys@frame@linewidth,line cap=round] ([xshift=\ys@frame@radius+2\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north west) --([xshift=\ys@frame@radius+5\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north west) --++(45:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth) ([xshift=\ys@frame@radius+6\ys@frame@linewidth,yshift=-\ys@frame@sep]frame.north west)--++(-45:2\ys@frame@linewidth)--++(45:2\ys@frame@linewidth) %第一节 @@ -709,11 +824,11 @@ color(75bp)=(pgftransparent!100); color(100bp)=(pgftransparent!100)} ([yshift=-\ys@frame@radius-6\ys@frame@linewidth,xshift=\ys@frame@sep]frame.north west)--++(-135:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth) %第一节 --([xshift=\ys@frame@sep]frame.south west);} \def\ys@frame@middleinner{% - \path[draw=framegolden,line width=.5\ys@frame@linewidth,line cap=round] + \path[draw=framegolden,line width=.5\ys@frame@linewidth,line cap=round] ([xshift=-\ys@frame@sep]frame.north east)--([xshift=-\ys@frame@sep]frame.south east) ([xshift=\ys@frame@sep]frame.north west)--([xshift=\ys@frame@sep]frame.south west);} \def\ys@frame@lastinner{% - \path[draw=framegolden,line width=.5\ys@frame@linewidth,line cap=round] + \path[draw=framegolden,line width=.5\ys@frame@linewidth,line cap=round] ([xshift=-\ys@frame@sep]frame.north east) --([yshift=\ys@frame@radius+8.828\ys@frame@linewidth,xshift=-\ys@frame@sep]frame.south east)--++(-45:2\ys@frame@linewidth)--++(-135:2\ys@frame@linewidth) ([yshift=\ys@frame@radius+7.828\ys@frame@linewidth,xshift=-\ys@frame@sep]frame.south east)--++(-135:2\ys@frame@linewidth)--++(-45:2\ys@frame@linewidth) %第二节 @@ -845,7 +960,7 @@ color(75bp)=(pgftransparent!100); color(100bp)=(pgftransparent!100)} ys/frame style/first/.style={ys/frame/first,title hidden,segmentation code=\ys@frame@segmentation}, ys/frame style/middle/.style={ys/frame/middle,segmentation code=\ys@frame@segmentation}, ys/frame style/last/.style={ys/frame/last,segmentation code=\ys@frame@segmentation}, - ys style/.style={frame hidden, + ys style/.style={frame hidden, ys/frame style/unbroken, extras first={ys/frame style/first}, extras middle={ys/frame style/middle}, @@ -853,8 +968,8 @@ color(75bp)=(pgftransparent!100); color(100bp)=(pgftransparent!100)} }, } \makeatother -\newtcolorbox{fancybox}{enhanced,ys style,breakable,pad at break=2mm, - ys/frame/not at break,ys/frame/fill opacity=0} +\newtcolorbox{fancybox}[1][]{enhanced,ys style,breakable,pad at break=2mm, + ys/frame/not at break,ys/frame/fill opacity=0,#1,fontupper=\itshape} %% End The Most Beautiful Box \makeatletter \definecolor{CyaN}{HTML}{dbe1e5} @@ -864,8 +979,8 @@ color(75bp)=(pgftransparent!100); color(100bp)=(pgftransparent!100)} \colorlet{GreeN}{yellow!40!green} % 第一种定理 -\tcbset{my@basic@thm/.style={enhanced jigsaw, breakable, - enlarge left by=-3.5mm, width=\textwidth+3.5mm, boxrule=0pt, +\tcbset{my@basic@thm/.style={enhanced jigsaw, breakable, + enlarge left by=-3.5mm, width=\textwidth+3.5mm, boxrule=0pt, top=2pt, bottom=2pt, left=2.5mm, frame hidden}} \newcommand{\@my@newtheorem@n}[1]{\ERROR} \newcommand{\@my@newtheorem@nn}[2]{% @@ -905,7 +1020,7 @@ color(75bp)=(pgftransparent!100); color(100bp)=(pgftransparent!100)} } % 存储键值 (LaTeX3) \ExplSyntaxOn -\cs_new_protected:Npn \mynewtheorem +\cs_new_protected:Npn \mynewtheorem { \keyval_parse:NNn \@my@newtheorem@n \@my@newtheorem@nn } \cs_new_protected:Npn \mynewtcbtheorem { \keyval_parse:NNn \@my@newtcbtheorem@n \@my@newtcbtheorem@nn } @@ -916,33 +1031,33 @@ color(75bp)=(pgftransparent!100); color(100bp)=(pgftransparent!100)} \makeatletter %% Overlay Settings \newcommand{\my@theorem@overlay@unbroken}[2]{ - %%============== First ==============%% + %%============== First ==============%% \fill[black!60] ([xshift=1cm,yshift=5pt]frame.north west)-- ([xshift=0.8cm,yshift=0cm]frame.north west)--([xshift=1.2cm,yshift=0cm]frame.north west)--cycle; \node[rectangle, text=white, drop shadow={opacity=.3, shadow xshift=0.1cm}, inner sep=1.5mm,fill=#2, -anchor=west,rounded corners=3pt,font=\bfseries\normalsize] at ([xshift=0cm,yshift=-3.mm]frame.north west) {\hspace*{1.5em}#1.\ \ifdefvoid{\tcbtitletext}{}{(\tcbtitletext)}}; - \fill[color=#2,drop shadow={opacity=0.3,shadow xshift=.3pt}] +anchor=west,rounded corners=3pt,font=\bfseries\normalsize] at ([xshift=0cm,yshift=-3.mm]frame.north west) {\hspace*{1.5em}#1.\ \ifdefvoid{\tcbtitletext}{}{(\itshape\tcbtitletext)}}; + \fill[color=#2,drop shadow={opacity=0.3,shadow xshift=.3pt}] ([xshift=1cm,yshift=5pt]frame.north west) {[rounded corners=3pt]--++(-1cm-5pt,0)}--++(0,-1cm-5pt)--cycle; \fill[color=black!60] ([xshift=-5pt,yshift=-1cm]frame.north west)--([xshift=0cm,yshift=-0.8cm]frame.north west)-- ([xshift=0cm,yshift=-1.2cm]frame.north west)--cycle; - %%============== End ==============%% - \fill[#2,drop shadow={opacity=0.3,shadow xshift=-0.008\linewidth,shadow yshift=0.0016\linewidth}] + %%============== End ==============%% + \fill[#2,drop shadow={opacity=0.3,shadow xshift=-0.008\linewidth,shadow yshift=0.0016\linewidth}] ([xshift=-0.05\linewidth,yshift=-5pt]frame.south east) {[rounded corners=3pt]--++(0.05\linewidth+5pt,0)}--++(0,0.05\linewidth+5pt)--cycle; \fill[black!60] ([xshift=-0.05\linewidth,yshift=-5pt]frame.south east) -- ([xshift=-0.04\linewidth,yshift=0pt]frame.south east)-- ([xshift=-0.06\linewidth,yshift=0pt]frame.south east)--cycle; \fill[black!60] ([xshift=5pt,yshift=0.05\linewidth]frame.south east)-- ([yshift=0.04\linewidth]frame.south east) -- ([yshift=0.06\linewidth]frame.south east)--cycle; } \newcommand{\my@theorem@overlay@first}[2]{ \fill[black!60] ([xshift=1cm,yshift=5pt]frame.north west)-- ([xshift=0.8cm,yshift=0cm]frame.north west)--([xshift=1.2cm,yshift=0cm]frame.north west)--cycle; - \node[rectangle, text=white, drop shadow={opacity=.3, shadow xshift=0.1cm}, inner sep=1.5mm,fill=#2, anchor=west,rounded corners=3pt,font=\bfseries\normalsize] at ([xshift=0cm,yshift=-3.mm]frame.north west) {\hspace*{1.5em}#1.\ \ifdefvoid{\tcbtitletext}{}{(\tcbtitletext)}}; - \fill[color=#2,drop shadow={opacity=0.3,shadow xshift=.3pt}] + \node[rectangle, text=white, drop shadow={opacity=.3, shadow xshift=0.1cm}, inner sep=1.5mm,fill=#2, anchor=west,rounded corners=3pt,font=\bfseries\normalsize] at ([xshift=0cm,yshift=-3.mm]frame.north west) {\hspace*{1.5em}#1.\ \ifdefvoid{\tcbtitletext}{}{(\itshape\tcbtitletext)}}; + \fill[color=#2,drop shadow={opacity=0.3,shadow xshift=.3pt}] ([xshift=1cm,yshift=5pt]frame.north west) {[rounded corners=3pt]--++(-1cm-5pt,0)}--++(0,-1cm-5pt)--cycle; \fill[color=black!60] ([xshift=-5pt,yshift=-1cm]frame.north west)--([xshift=0cm,yshift=-0.8cm]frame.north west)-- ([xshift=0cm,yshift=-1.2cm]frame.north west)--cycle; } \newcommand{\my@theorem@overlay@last}[1]{ - \fill[#1,drop shadow={opacity=0.3,shadow xshift=-0.008\linewidth,shadow yshift=0.0016\linewidth}] + \fill[#1,drop shadow={opacity=0.3,shadow xshift=-0.008\linewidth,shadow yshift=0.0016\linewidth}] ([xshift=-0.05\linewidth,yshift=-5pt]frame.south east) {[rounded corners=3pt]--++(0.05\linewidth+5pt,0)}--++(0,0.05\linewidth+5pt)--cycle; \fill[black!60] ([xshift=-0.05\linewidth,yshift=-5pt]frame.south east) -- ([xshift=-0.04\linewidth,yshift=0pt]frame.south east)-- ([xshift=-0.06\linewidth,yshift=0pt]frame.south east)--cycle; \fill[black!60] ([xshift=5pt,yshift=0.05\linewidth]frame.south east)-- ([yshift=0.04\linewidth]frame.south east) -- ([yshift=0.06\linewidth]frame.south east)--cycle; } -% Second theorem style overlay settings +% Second theorem style overlay settings \newcommand{\my@lemma@overlay@unbroken}[2]{ %%============== First ==============%% \def\Rad{3.5pt} @@ -950,19 +1065,19 @@ anchor=west,rounded corners=3pt,font=\bfseries\normalsize] at ([xshift=0cm,yshif \def\rad{7pt}% \path[fill=#2,drop shadow={opacity=0.3,shadow xshift=.05cm,shadow yshift=-.05cm}]node[append after command={ ([xshift=-1.5*\rad]thmname.north west) to[out=0,in=180,looseness=1] ([xshift=2.5*\rad]thmname.south west) --([xshift=-\rad]thmname.south east) to[out=0,in=180,looseness=1] ([xshift=3*\rad]thmname.north east) --cycle}, - text=white,font=\bfseries,align=center,inner ysep=1.5mm,right] (thmname) at ([xshift=\rad,yshift=-\rad]frame.north west) {\hspace*{10pt}#1.\ \ifdefvoid{\tcbtitletext}{}{(\tcbtitletext)}}; + text=white,font=\bfseries,align=center,inner ysep=1.5mm,minimum height=0.6cm,right] (thmname) at ([xshift=\rad,yshift=-.7*\rad]frame.north west) {\hspace*{10pt}#1.\ \ifdefvoid{\tcbtitletext}{}{(\itshape\tcbtitletext)}}; \begin{pgfonlayer}{bottom} \fill[#2,opacity=0.5] - ([xshift=-1.5*\rad]thmname.north west) to[out=-90,in=0,looseness=1.5] +(3pt,-6pt) -| +(10pt,0)--cycle; + ([xshift=-1.5*\rad]thmname.north west) to[out=180,in=305,looseness=1.5] +(3pt,-6pt) -| ++(12pt,0)--cycle; \fill[#2,opacity=0.5] ([xshift=3*\rad]thmname.north east) to[out=0,in=-90] +(5pt,-5pt) -| ++(-10pt,0) --cycle; \end{pgfonlayer} - %%============== End ==============%% + %%============== End ==============%% \def\tlen{1.5cm} \path[fill=#2,drop shadow={opacity=0.3,shadow xshift=.3pt}] ([xshift=-2*\rad,yshift=-5pt]frame.south east) coordinate (SE) to[out=0,in=180] +(4*\rad,5pt+\theight) --([shift={(-\tlen+4*\rad,5pt+\theight)}]SE) to[out=180,in=0] +(-4*\rad,-5pt-\theight) --cycle; \begin{pgfonlayer}{bottom} - \fill[color=#2!80!black] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east) to[out=180,in=90,looseness=0.7] ([xshift=-1.35*\tlen-0.5*\Rad]frame.south east) coordinate (NWl)--([xshift=2*\rad]NWl) to[out=-90,in=-180,looseness=0.7] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east)--cycle; + \fill[color=#2,opacity=0.5] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east) to[out=180,in=90,looseness=0.7] ([xshift=-1.35*\tlen-0.5*\Rad]frame.south east) coordinate (NWl)--([xshift=2*\rad]NWl) to[out=-90,in=-180,looseness=0.7] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east)--cycle; \end{pgfonlayer} } \newcommand{\my@lemma@overlay@first}[2]{ @@ -972,16 +1087,16 @@ anchor=west,rounded corners=3pt,font=\bfseries\normalsize] at ([xshift=0cm,yshif \def\rad{7pt}% \path[fill=#2,drop shadow={opacity=0.3,shadow xshift=.05cm,shadow yshift=-.05cm}]node[append after command={ ([xshift=-1.5*\rad]thmname.north west) to[out=0,in=180,looseness=1] ([xshift=2.5*\rad]thmname.south west) --([xshift=-\rad]thmname.south east) to[out=0,in=180,looseness=1] ([xshift=3*\rad]thmname.north east) --cycle}, - text=white,font=\bfseries,align=center,inner ysep=1.5mm,minimum height=0.6cm,right] (thmname) at ([xshift=\rad,yshift=-\rad]frame.north west) {\hspace*{10pt}#1.\ \ifdefvoid{\tcbtitletext}{}{(\tcbtitletext)}}; + text=white,font=\bfseries,align=center,inner ysep=1.5mm,minimum height=0.6cm,right] (thmname) at ([xshift=\rad,yshift=-.7*\rad]frame.north west) {\hspace*{10pt}#1.\ \ifdefvoid{\tcbtitletext}{}{(\itshape\tcbtitletext)}}; \begin{pgfonlayer}{bottom} \fill[#2,opacity=0.5] - ([xshift=-1.5*\rad]thmname.north west) to[out=-90,in=0,looseness=1.5] +(3pt,-6pt) -| +(10pt,0)--cycle; + ([xshift=-1.5*\rad]thmname.north west) to[out=180,in=305,looseness=1.5] +(3pt,-6pt) -| ++(12pt,0)--cycle; \fill[#2,opacity=0.5] ([xshift=3*\rad]thmname.north east) to[out=0,in=-90] +(5pt,-5pt) -| ++(-10pt,0) --cycle; \end{pgfonlayer} } \newcommand{\my@lemma@overlay@last}[1]{ - %%============== End ==============%% + %%============== End ==============%% \def\Rad{3.5pt} \def\rad{7pt}% \def\theight{0.57cm} @@ -989,35 +1104,26 @@ anchor=west,rounded corners=3pt,font=\bfseries\normalsize] at ([xshift=0cm,yshif \path[fill=#1,drop shadow={opacity=0.3,shadow xshift=.3pt}] ([xshift=-2*\rad,yshift=-5pt]frame.south east) coordinate (SE) to[out=0,in=180] +(4*\rad,5pt+\theight) --([shift={(-\tlen+4*\rad,5pt+\theight)}]SE) to[out=180,in=0] +(-4*\rad,-5pt-\theight) --cycle; \begin{pgfonlayer}{bottom} - \fill[color=#1!80!black] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east) to[out=180,in=90,looseness=0.7] ([xshift=-1.35*\tlen-0.5*\Rad]frame.south east) coordinate (NWl)--([xshift=2*\rad]NWl) to[out=-90,in=-180,looseness=0.7] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east)--cycle; + \fill[color=#1,opacity=0.5] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east) to[out=180,in=90,looseness=0.7] ([xshift=-1.35*\tlen-0.5*\Rad]frame.south east) coordinate (NWl)--([xshift=2*\rad]NWl) to[out=-90,in=-180,looseness=0.7] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east)--cycle; \end{pgfonlayer} } \makeatother -%% +%% % proof +\newcommand{\itbf}[1]{\textit{\textbf{#1}}} \declaretheoremstyle[ spaceabove=3pt,spacebelow=3pt, headfont=\normalfont\bfseries, notefont=\normalfont\bfseries,notebraces={(}{)}, bodyfont=\normalfont, - postheadspace=1em, + postheadspace=.5em, headpunct={.}, - qed=\qedsymbol + qed=$\blacksquare$,%\qedsymbol ]{Proofstyle} -\declaretheorem[style=Proofstyle,numbered=no,name={\bfseries 证明}]{Proof} +\declaretheorem[style=Proofstyle,numbered=no,name={\itbf{Proof}}]{Proof} \renewenvironment{proof}{\begin{Proof} }{\end{Proof}} -\declaretheorem[style=Proofstyle,numbered=no,name={\bfseries 解}]{solution} -%% --------参考文献 -\usepackage[ -backend=biber, -style=gb7714-2015, -sorting=nty -]{biblatex} -\addbibresource{ref.bib} -\indexsetup{level=\chapter*,noclearpage} -\makeindex[title=索引,columns=3,columnsep=15pt,columnseprule] -\makeindex +\declaretheorem[style=Proofstyle,numbered=no,name={\itbf{Solution}}]{solution} %%%%%%%%%%%%%%% 计数器知识 %%%%%%%%%%%%%%%%%%%%%% % 每次用 \newcounter{foo} 定义新计数器,内部都会定义这几个命令 diff --git a/macros/latex/contrib/beautybook/Beautybook-EN.cls b/macros/latex/contrib/beautybook/Beautybook-EN.cls index 2ecb36b488..f64062a468 100644 --- a/macros/latex/contrib/beautybook/Beautybook-EN.cls +++ b/macros/latex/contrib/beautybook/Beautybook-EN.cls @@ -1,36 +1,38 @@ %This Class is based on the default book class and options will be passed \NeedsTeXFormat{LaTeX2e} -\ProvidesClass{Beautybook-EN}[17-06-2023 Beautybook Class] +\ProvidesClass{Beautybook-EN}[02-10-2023 V8.0 Beautybook Class] \DeclareOption*{\PassOptionsToClass{\CurrentOption}{book}} \ProcessOptions\relax \LoadClass[twoside]{book} -\overfullrule=1pt -\RequirePackage[fontsize=13.5pt]{fontsize} -\linespread{1.05} \RequirePackage[dvipsnames,svgnames,x11names,table]{xcolor} -\colorlet{outermarginfgcolor}{DarkCyan} % foregroundcolor -\colorlet{outermarginbgcolor}{DarkCyan!30} % backgroundcolor \RequirePackage{cncolours} -\RequirePackage{bropd} -\RequirePackage{tikz-imagelabels} -\RequirePackage{epigraph-keys} -\RequirePackage{fitbox} +\RequirePackage[utf8]{inputenc} % UTF-8编码 +\RequirePackage{times} % Times New Roman Font +\RequirePackage[T1]{fontenc} +\RequirePackage{microtype} % 字体间距调整 +\colorlet{outermarginfgcolor}{DarkCyan} % foregroundcolor 较深 +\colorlet{outermarginbgcolor}{DarkCyan!30} % backgroundcolor 较浅 +\RequirePackage{bropd} % math 自适应数学括号命令 \br{} !!! +\RequirePackage{tikz-imagelabels} % tikz图像标注 +\RequirePackage{epigraph-keys} % 名言引用 +\RequirePackage{fitbox} % 图像自适应 \RequirePackage{pgfornament-han} \RequirePackage{tikz} \usetikzlibrary{calc,shadows,hobby,intersections, decorations.markings, decorations.pathreplacing,spy,arrows,shapes,fadings,trees,mindmap,patterns,shapes.arrows,shapes.symbols,tikzmark,shapes.geometric,graphs, quotes, angles,decorations.pathmorphing,through,shadings,backgrounds,positioning,fit,arrows.meta,shapes.misc,decorations.shapes} -\RequirePackage{pgfplots} +\RequirePackage{pgfplots} %画图 %%页面样式设计核心包 %提供\pgfonlayer命令以及下列图层指令 \pgfplotsset{compat=1.18} % \ExplSyntaxOn +% 封面切换程序 (LaTeX3)! \keys_define:nn {Beautybook/coverstyle} { cover-choose.choice:, cover-choose.value_required:n = true, - cover-choose/cn.code:n = {\RequirePackage{stys/Beautybook-cn}}, - cover-choose/en.code:n = {\RequirePackage{stys/Beautybook-en}}, - cover-choose/enfig.code:n = {\RequirePackage{stys/Beautybook-enfig}}, - cover-choose/birkar.code:n = {\RequirePackage{stys/Beautybook-birkar}}, - %cover-choose .initial:n = en , + cover-choose/cn.code:n = {\RequirePackage{stys/Beautybook-cover-cn}}, + cover-choose/en.code:n = {\RequirePackage{stys/Beautybook-cover-en}}, + cover-choose/enfig.code:n = {\RequirePackage{stys/Beautybook-cover-enfig}}, + cover-choose/birkar.code:n = {\RequirePackage{stys/Beautybook-cover-birkar}}, + %cover-choose .initial:n = en , % 设置 en 为初始值 } \newtoks \l__Beautybook_tmpa_toks \cs_new_protected:Npn \coverstyle @@ -46,8 +48,12 @@ math-font.choice:, math-font.value_required:n = true, math-font/plain.code:n={}, + math-font/stix.code:n={ + \RequirePackage{stix} + }, math-font/mtpro2.code:n = { \RequirePackage{mtpro2} + \RequirePackage{bm} \DeclareFontFamily{U}{nxlmi}{} \DeclareFontSubstitution{U}{nxlmi}{m}{it} \DeclareFontShape{U}{nxlmi}{m}{it}{ @@ -63,7 +69,7 @@ }{} \renewcommand{\partial}{{\text{\usefont{U}{nxlmi}{m}{it}\symbol{64}}\mspace{1mu}}} }, - %cover-choose .initial:n = plain , + %cover-choose .initial:n = plain , % 设置 en 为初始值 } \cs_new_protected:Npn \mathstyle { @@ -73,21 +79,41 @@ \cs_new:Npn \__Beautybook_set_mathstyle: { \keys_set:nV { Beautybook / mathstyle } \l__Beautybook_tmpa_toks } \ExplSyntaxOff -% -\RequirePackage{stys/Beautybook-bottompage} -% -\usepackage{rotating} +\RequirePackage{stys/Beautybook-bottompage} %封底 +\RequirePackage{rotating} \tikzset{>=Stealth} -\setlist{nosep,font=\upshape} +\setlist{font=\upshape} % 取消所有列表默认距离 nosep, +% 浮动环境设置 +% 默认情况下, \LaTeX{} 要求每页的文字至少占据 20%,否则该页就只单独放置一个浮动环境, +% 而这通常不是我们想要的, 我们将这个要求降低到 5%. \renewcommand*{\textfraction}{0.05} +% 有时如果多个浮动环境连续放在一起, +% 会将它们分在几个不同页,即使它们可在同一页放 +% 得下. 我们可以通过修改 |\topfraction| 和 |\bottomfraction| 分别设置顶端和底端的浮 +% 动环境的最大比例. \renewcommand*{\topfraction}{0.9} \renewcommand*{\bottomfraction}{0.8} +% 有时\LaTeX{}会把一个浮动环境单独放在一页, +% 我们要求这个环境至少要占据 85% 才能单独放在一页. +% 注意: |\floatpagefraction| 的数值必须小于 |\topfraction|. \renewcommand*{\floatpagefraction}{0.85} +% 关于图片 graphicx +% 如果图片没有指定后缀, 依次按下列顺序搜索 \DeclareGraphicsExtensions{.pdf,.eps,.jpg,.png} -\graphicspath{{figures/}{figure/}{pictures/}{picture/}{pic/}{pics/}{image/}{images/}} -\RequirePackage{amssymb,amsfonts} +% 设置图表搜索路径, 可以给图表文件夹取如下名字 +\graphicspath{{inner_pics/}{inner_pics/titleimages/}{figures/}{figure/}{pictures/}{picture/}{pic/}{pics/}{image/}{images/}} +% \RequirePackage[physics]{stys/physicx} +% \RequirePackage{stys/Symbols} +\RequirePackage{extarrows} +\usetikzlibrary{tikzmark} +% \arrowname{super-script} +% \arrowname[sub-script]{super-script} +\RequirePackage{appendix} % 附录 +% \RequirePackage{stys/symbols} +% +\RequirePackage{amssymb,amsfonts,upgreek} \RequirePackage{makeidx} -\RequirePackage{etoolbox} +\RequirePackage{etoolbox} % 判断函数 \RequirePackage{paracol} \RequirePackage{tikz-cd} \RequirePackage{imakeidx} @@ -96,37 +122,34 @@ \RequirePackage{xkeyval,ifthen} \RequirePackage[backgroundcolor=yellow!40!cyan!20,bordercolor=yellow!40!cyan!20,linecolor=DarkCyan]{todonotes} \RequirePackage{varwidth} -\RequirePackage[colorlinks,linkcolor = purple, -anchorcolor = purple, -urlcolor = purple, -citecolor = purple, +\RequirePackage[colorlinks,linkcolor = purple, %%修改此处为你想要的颜色 +anchorcolor = purple, %%修改此处为你想要的颜色 +urlcolor = purple, %%修改此处为你想要的颜色 +citecolor = purple, %%修改此处为你想要的颜色 ]{hyperref} \setcounter{tocdepth}{3} -\setcounter{secnumdepth}{3} +\setcounter{secnumdepth}{3}%增加编号深度 \RequirePackage{dashrule} \newlength\outermarginwidth \setlength\outermarginwidth{1.5cm} \newlength\covershift \setlength\covershift{5cm} \RequirePackage{caption} -\colorlet{captioncolor}{outermarginfgcolor} +% 图注与表注格式 +\colorlet{captioncolor}{outermarginfgcolor} % 图片和表格题注文字颜色 \makeatletter +%%----------------------------------封面信息定义--------------------------------------------------------%% \newcommand\bookseries[1]{\def\@bookseries{#1}} \newcommand\subtitle[1]{\def\@subtitle{#1}} \newcommand\edition[1]{\def\@edition{#1}} \newcommand\presslogo[1]{\def\@presslogo{#1}} \newcommand\pressname[1]{\def\@pressname{#1}} \newcommand\coverimage[1]{\def\@coverimage{#1}} -\newcommand\chapoddimage[1]{\def\@chapoddimage{#1}} -\newcommand\chapevenimage[1]{\def\@chapevenimage{#1}} +\newcommand\chapimage[1]{\def\@chapimage{#1}} +%%----------------------------------封面信息定义--------------------------------------------------------%% \makeatother \RequirePackage{indentfirst} -\RequirePackage{physics} -\definecolor{nuanbai}{HTML}{f5f5f5} % F5F5F5 -\pagecolor{nuanbai} \RequirePackage{amsmath} -\RequirePackage{zhlipsum} -\RequirePackage{stix} \RequirePackage[left=2cm,right=2cm,top=.6cm,bottom=2.2cm]{geometry} \RequirePackage{xpatch}%修正章节编号 \RequirePackage[automark]{scrlayer-scrpage}%页面设置宏包,隶属于koma-script文档类 @@ -157,7 +180,7 @@ citecolor = purple, \RequirePackage{amsthm} \RequirePackage{thmtools,thm-restate}%定理环境 %定理的重写 \RequirePackage{bclogo} -\RequirePackage{ulem} +\RequirePackage[normalem]{ulem} \RequirePackage{pgfplots} %画图 %%页面样式设计核心包 %提供\pgfonlayer命令以及下列图层指令 \pgfplotsset{compat=1.18} \RequirePackage{graphicx}%修正minipage顶部对齐问题 @@ -168,6 +191,38 @@ citecolor = purple, \pgfsetlayers{bottom,background,main,foreground,top} \newcommand{\tikzoverlay}[1]{\begin{tikzpicture}[remember picture,overlay] #1 \end{tikzpicture}} \RequirePackage[explicit]{titlesec} +\RequirePackage{titletoc} + +\newcommand\boxednum[1] +{ +\tcbsidebyside[sidebyside adapt=left, +nobeforeafter,fontupper=\sffamily\large\bfseries,fontlower=\large\bfseries,colframe=white,colupper=white,colback=outermarginfgcolor!90,colbacklower=gray!10,frame hidden,width =\textwidth, +top=0mm,bottom=0mm,right=0mm,left=2mm,before skip balanced=0em,after skip balanced=0em,arc=0pt,outer arc=0pt,bicolor,sidebyside gap=6mm,boxrule=0pt,sidebyside align=center,halign=center,halign lower=left,fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 +fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 +]{% left hand side % adjust from this side +\thecontentslabel +}{% right hand side +#1 \hfill \bfseries\sffamily\thecontentspage +}% end +} + +\newcommand\boxednonum[1] +{ +\begin{tcolorbox}[nobeforeafter,fontupper=\large,fontlower=\large\bfseries,colframe=white,fontupper=\sffamily\bfseries,colupper=white,colback=outermarginfgcolor!90,colbacklower=gray!10,frame hidden,width = 1\textwidth,sidebyside gap=6mm, +top=0mm,bottom=0mm,right=0cm,left=2mm,before skip balanced=0em,after skip balanced=0em,arc=0pt,outer arc=0pt,bicolor,sidebyside,boxrule=0pt,sidebyside align=center,halign=center,halign lower=left,lefthand width=3mm,fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 +fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 +] +\tcblower #1\hfill \bfseries\sffamily\thecontentspage +\end{tcolorbox} +} + +\titlecontents{chapter}[0mm] + {\addvspace{-.5em}} + {\contentsmargin{0pt}\boxednum} + {\contentsmargin{0pt}\boxednonum} + {} + [\addvspace{-.5em}] + % tcolorbox中插入图片或者tikz绘图方法 \newcommand\Figure[4]{% \begin{center} @@ -223,81 +278,129 @@ citecolor = purple, %% -------- 章节样式 \makeatletter +% titleimage +\ExplSyntaxOn +\seq_new:N \g__Beautybook_chapter_oimage_seq % odd +\seq_new:N \g__Beautybook_chapter_eimage_seq % even +\seq_new:N \g__Beautybook_part_oimage_seq % odd +\seq_new:N \g__Beautybook_part_eimage_seq % even +% +\keys_define:nn { Beautybook/titleimage } + { + chapteroddimage .code:n = + \seq_gset_from_clist:Nn \g__Beautybook_chapter_oimage_seq {#1} , + chapterevenimage .code:n = + \seq_gset_from_clist:Nn \g__Beautybook_chapter_eimage_seq {#1} , + partoddimage .code:n = + \seq_gset_from_clist:Nn \g__Beautybook_part_oimage_seq {#1} , + partevenimage .code:n = + \seq_gset_from_clist:Nn \g__Beautybook_part_eimage_seq {#1} , + } +\cs_new:Npn \__Beautybook_title_image:Nn #1#2 % image seq, number + { \seq_item:Nn #1 { \int_mod:nn {#2} { \seq_count:N #1 } + 1 } } %对照表-对录入的字符串进行编号 +\cs_new:Npn \Beautybook@chapterimagename %生成索契表 : 判断奇偶数页并按(章节编号)!!读取相应的列表组中的字符串 + { + \int_if_odd:nTF { \value{page} } + { \__Beautybook_title_image:Nn \g__Beautybook_chapter_oimage_seq { \value{chapter} } } + { \__Beautybook_title_image:Nn \g__Beautybook_chapter_eimage_seq { \value{chapter} } } + } +\cs_new:Npn \Beautybook@partimagename + { + \int_if_odd:nTF { \value{page} } + { \__Beautybook_title_image:Nn \g__Beautybook_part_oimage_seq { \value{part} } } + { \__Beautybook_title_image:Nn \g__Beautybook_part_eimage_seq { \value{part} } } + } +\cs_new_protected:Npn \titleimage #1 + { \keys_set:nn { Beautybook/titleimage } {#1} } +\ExplSyntaxOff +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \titleformat{\chapter}{\huge\bfseries\filcenter}{}{1em}{ \makebox[0pt][l]{\def\rad{7pt}% \begin{tikzpicture}[remember picture, overlay]% \begin{pgfonlayer}{bottom} - \shade[left color=outermarginbgcolor!20,middle color=outermarginbgcolor!50,right color=outermarginfgcolor!20] (current page.north west) rectangle ++(\paperwidth,-.2\paperheight); % background + \ifodd\value{page} + \shade[right color=outermarginbgcolor!30,middle color=outermarginbgcolor!50,left color=outermarginfgcolor!30] (current page.north west) rectangle ++(\paperwidth,-.2\paperheight); % background odd + \else + \shade[left color=outermarginbgcolor!30,middle color=outermarginbgcolor!50,right color=outermarginfgcolor!30] (current page.north west) rectangle ++(\paperwidth,-.2\paperheight); % background even + \fi \fill[outermarginfgcolor,opacity=.5]([shift={(0,-4.45cm)}]current page.north west) rectangle ++(\paperwidth,-2mm); % line \end{pgfonlayer} \path[fill=outermarginfgcolor]node[append after command={ ([xshift=-3*\rad]chapinfoofpart.north west) to[out=0,in=-180,looseness=1] ([xshift=\rad]chapinfoofpart.south west) --([xshift=-\rad]chapinfoofpart.south east) to[out=0,in=180,looseness=1] ([xshift=3*\rad]chapinfoofpart.north east) --cycle}, - text=white,font=\large\bfseries,align=center,minimum height=1cm] (chapinfoofpart) at ([shift={(.6\linewidth,-4.95cm)}]current page.north west) {Part\ \thepart}; + text=white,font=\sffamily\large\bfseries,align=center,minimum height=1cm] (chapinfoofpart) at ([shift={(.6\linewidth,-4.95cm)}]current page.north west) {Part\ \thepart}; \begin{pgfonlayer}{bottom} \fill[outermarginfgcolor!90,opacity=0.5] ([shift={(-3*\rad,0)}]chapinfoofpart.north west) to[out=180,in=0,looseness=1] +(-4*\rad,-1.2cm)--([shift={(7*\rad,-1.2cm)}]chapinfoofpart.north east) to[out=-180,in=0,looseness=1] +(-4*\rad,1.2cm); % partnumber shade \end{pgfonlayer} \ifodd\value{page} \begin{pgfonlayer}{top} - \fill[outermarginfgcolor,opacity=0.8,rounded corners=5pt]node[append after command={([yshift=2cm]chapnum.north west) rectangle (chapnum.south east)},right,text=white,minimum width=2cm,align=center,font=\bf] (chapnum) at ([shift={(2cm,-2.5cm)}]current page.north west) {\scalebox{3}{\thechapter}}; - % \pattern[pattern=sixpointed stars,pattern color=outermarginfgcolor!50,opacity=0.8] - % ([yshift=2cm]chapnum.north west) rectangle (chapnum.south east); + \fill[outermarginfgcolor,opacity=0.7,rounded corners=5pt]node[append after command={([yshift=2cm]chapnum.north west) rectangle (chapnum.south east)},right,text=white,minimum width=2cm,align=center,font=\sffamily\bfseries] (chapnum) at ([shift={(1.5cm,-2.5cm)}]current page.north west) {\scalebox{3}{\thechapter}}; + \begin{pgfonlayer}{foreground} + \pattern[pattern=sixpointed stars,pattern color=white,opacity=1.0,rounded corners=5pt] + ([yshift=2cm]chapnum.north west) rectangle (chapnum.south east); + \end{pgfonlayer} \fill [outermarginfgcolor,path fading=fade up,rounded corners=5pt]% ([yshift=2cm]chapnum.north west) rectangle (chapnum.south east); - \node[above left,font=\fontsize{25}{25}\selectfont\bfseries,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north east) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}}; + \node[above left,font=\sc\fontsize{22pt}{22pt}\selectfont,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north east) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}}; \end{pgfonlayer} \begin{pgfonlayer}{bottom} - \node[right] (image) at ([shift={(-0.5cm,-2.8cm)}]current page.north west) {\includegraphics[width=7cm]{\@chapoddimage}}; + \node[right] (image) at ([shift={(-0.5cm,-2.8cm)}]current page.north west) {\includegraphics[width=7cm]{\@chapimage}}; \end{pgfonlayer} - \node[above left,font=\fontsize{15}{15}\selectfont,circle,fill=outermarginfgcolor,text=white,inner sep=1mm] (pagenumber) at ([shift={(-5mm,5mm)}]current page.south east) {\thepage}; \else \begin{pgfonlayer}{top} - \fill[outermarginfgcolor,opacity=0.8,rounded corners=5pt]node[append after command={([yshift=2cm]chapnum.north west) rectangle (chapnum.south east)},left,text=white,minimum width=2cm,align=center,font=\bf] (chapnum) at ([shift={(-2.0cm,-2.5cm)}]current page.north east) {\scalebox{3}{\thechapter}}; - % \pattern[pattern=sixpointed stars,pattern color=outermarginfgcolor!50,opacity=0.8] - % ([yshift=2cm]chapnum.north west) rectangle (chapnum.south east); + \fill[outermarginfgcolor,opacity=0.7,rounded corners=5pt]node[append after command={([yshift=2cm]chapnum.north west) rectangle (chapnum.south east)},left,text=white,minimum width=2cm,align=center,font=\sffamily\bfseries] (chapnum) at ([shift={(-1.5cm,-2.5cm)}]current page.north east) {\scalebox{3}{\thechapter}}; + \begin{pgfonlayer}{foreground} + \pattern[pattern=sixpointed stars,pattern color=white,opacity=1.0,rounded corners=5pt] + ([yshift=2cm]chapnum.north west) rectangle (chapnum.south east); + \end{pgfonlayer} \fill [outermarginfgcolor,path fading=fade up,rounded corners=5pt]% ([yshift=2cm]chapnum.north west) rectangle (chapnum.south east); - \node[above right,font=\fontsize{25}{25}\selectfont\bfseries,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north west) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}}; + \node[above right,font=\sc\fontsize{22pt}{22pt}\selectfont,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north west) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}}; \end{pgfonlayer} \begin{pgfonlayer}{background} - \node[left] (image) at ([shift={(0.5cm,-2.8cm)}]current page.north east) {\includegraphics[width=7cm]{\@chapevenimage}}; + \node[left] (image) at ([shift={(0.5cm,-2.8cm)}]current page.north east) {\includegraphics[width=7cm]{\@chapimage}}; \end{pgfonlayer} - \node[above right,font=\fontsize{15}{15}\selectfont,circle,fill=outermarginfgcolor,text=white,inner sep=1mm] (pagenumber) at ([shift={(5mm,5mm)}]current page.south west) {\thepage}; \fi - \fill[outermarginfgcolor,rounded corners=2pt] - (current page.south west) -- ++(1.5mm,1.5mm) --++(\paperwidth-3mm,0mm)--++(1.5mm,-1.5mm)--cycle; + \path[fill=outermarginbgcolor]node[append after command={ + ([xshift=-2*\rad]pagenumber.south west) to[out=0,in=180,looseness=1] ([xshift=\rad]pagenumber.north west) --([xshift=-\rad]pagenumber.north east) to[out=0,in=-180,looseness=1] ([xshift=2*\rad]pagenumber.south east) --cycle}, + text=outermarginfgcolor,font=\sffamily\fontsize{15}{15}\selectfont\bfseries,align=center,minimum height=0.4cm,minimum width=1.3cm,inner sep=1.5mm] (pagenumber) at ([shift={(0,0.3cm)}]current page.south) {\thepage}; \end{tikzpicture}} } \titleformat{name=\chapter,numberless}{\bfseries\huge\filcenter}{}{1em}{ \makebox[0pt][l]{\def\rad{7pt}% \begin{tikzpicture}[remember picture, overlay]% \begin{pgfonlayer}{bottom} - \shade[left color=outermarginbgcolor!20,middle color=outermarginbgcolor!50,right color=outermarginfgcolor!20] (current page.north west) rectangle ++(\paperwidth,-.2\paperheight); % background + \ifodd\value{page} + \shade[right color=outermarginbgcolor!30,middle color=outermarginbgcolor!50,left color=outermarginfgcolor!30] (current page.north west) rectangle ++(\paperwidth,-.2\paperheight); % background odd + \else + \shade[left color=outermarginbgcolor!30,middle color=outermarginbgcolor!50,right color=outermarginfgcolor!30] (current page.north west) rectangle ++(\paperwidth,-.2\paperheight); % background even + \fi \fill[outermarginfgcolor,opacity=.5]([shift={(0,-4.45cm)}]current page.north west) rectangle ++(\paperwidth,-2mm); % line \end{pgfonlayer} \ifodd\value{page} \begin{pgfonlayer}{top} - \node[above left,font=\fontsize{25}{25}\selectfont\bfseries,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north east) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}}; + \node[above left,font=\sc\fontsize{25pt}{25pt}\selectfont,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north east) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}}; \end{pgfonlayer} \begin{pgfonlayer}{bottom} - \node[right] (image) at ([shift={(-0.5cm,-2.8cm)}]current page.north west) {\includegraphics[width=7cm]{\@chapoddimage}}; + \node[right] (image) at ([shift={(-0.5cm,-2.8cm)}]current page.north west) {\includegraphics[width=7cm]{\@chapimage}}; \end{pgfonlayer} - \node[above left,font=\fontsize{15}{15}\selectfont,circle,fill=outermarginfgcolor,text=white,inner sep=1mm] (pagenumber) at ([shift={(-5mm,5mm)}]current page.south east) {\thepage}; \else \begin{pgfonlayer}{top} - \node[above right,font=\fontsize{25}{25}\selectfont\bfseries,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north west) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}}; + \node[above right,font=\sc\fontsize{25pt}{25pt}\selectfont,align=center] (contents name) at ([shift={(0cm,-4.45cm)}]current page.north west) {\begin{varwidth}{.7\linewidth}\baselineskip=2ex #1\end{varwidth}}; \end{pgfonlayer} \begin{pgfonlayer}{background} - \node[left] (image) at ([shift={(0.5cm,-2.8cm)}]current page.north east) {\includegraphics[width=7cm]{\@chapevenimage}}; + \node[left] (image) at ([shift={(0.5cm,-2.8cm)}]current page.north east) {\includegraphics[width=7cm]{\@chapimage}}; \end{pgfonlayer} - \node[above right,font=\fontsize{15}{15}\selectfont,circle,fill=outermarginfgcolor,text=white,inner sep=1mm] (pagenumber) at ([shift={(5mm,5mm)}]current page.south west) {\thepage}; \fi - \fill[outermarginfgcolor,rounded corners=2pt] - (current page.south west) -- ++(1.5mm,1.5mm) --++(\paperwidth-3mm,0mm)--++(1.5mm,-1.5mm)--cycle; + \path[fill=outermarginbgcolor]node[append after command={ + ([xshift=-2*\rad]pagenumber.south west) to[out=0,in=180,looseness=1] ([xshift=\rad]pagenumber.north west) --([xshift=-\rad]pagenumber.north east) to[out=0,in=-180,looseness=1] ([xshift=2*\rad]pagenumber.south east) --cycle}, + text=outermarginfgcolor,font=\sffamily\fontsize{15}{15}\selectfont\bfseries,align=center,minimum height=0.4cm,minimum width=1.3cm,inner sep=1.5mm] (pagenumber) at ([shift={(0,0.3cm)}]current page.south) {\thepage}; \end{tikzpicture}} } -\titlespacing{\chapter}{0pt}{0pt}{65pt} +\titlespacing{\chapter}{0pt}{0pt}{80pt} \makeatother % -------- Part定制 +\tikzfading[name=middle, top color=transparent!90, bottom +color=transparent!90, middle color=transparent!20] \makeatletter \newcommand\partabstract[1]{\def\@partabstract{#1}} \newcommand\partimage[1]{\def\@partimage{#1}} @@ -310,11 +413,22 @@ citecolor = purple, \fill[outermarginbgcolor,opacity=0.6] (current page.north west) rectangle (current page.south east); \ifodd\value{page} - \fill[outermarginfgcolor] - (current page.north east) rectangle ++(-\barwidth,-\paperheight); + \fill [outermarginfgcolor!20]% + (current page.north east) rectangle ++(-\outermarginwidth,-\paperheight); + \pattern [pattern=north east lines,pattern color=outermarginfgcolor!50]% + (current page.north east) rectangle ++(-\outermarginwidth,-\paperheight); + \fill [outermarginbgcolor!90,path fading=fade south]% + ([yshift=1mm]current page.north east) rectangle ++(-\outermarginwidth,-.8\paperheight); + \fill [outermarginbgcolor,path fading=fade north]% + (current page.south east) rectangle ++(-\outermarginwidth,.8\paperheight);% + % lines + \fill[outermarginfgcolor,rounded corners=2pt] (current page.north east) --++(-5pt,-0.15cm)--++(-\outermarginwidth+10pt,0) --++(-5pt,0.15cm)--cycle; + \coordinate (anchor of headmark) at ([shift={(-1.2\outermarginwidth,-0.2cm)}]current page.north east); + \node[below ,text=outermarginfgcolor,font=\sffamily\bfseries\fontsize{15}{20}\selectfont] (partpagenum) at ([shift={(-.5\outermarginwidth,0)}]current page.north east) {\thepage}; + \fill[outermarginfgcolor,rounded corners=2pt] (current page.south east) --++(-5pt,0.15cm)--++(-\outermarginwidth+10pt,0) --++(-5pt,-0.15cm)--cycle; % 页码横线 \node[] (hbar) at ($(current page.north)!0.33!(current page.south)$) { \begin{tikzpicture} - \fill[white] + \fill[white] (0,0) rectangle ++(\paperwidth,-1cm); \fill[outermarginbgcolor] (0,-.25cm) rectangle ++(\paperwidth,-.5cm); @@ -326,41 +440,52 @@ citecolor = purple, (.67\paperwidth+4.4cm,-.25cm) rectangle ++(1mm,-.5cm); \end{tikzpicture} }; - \node[above,font=\huge,shift={(.33\linewidth,.5\barwidth)}] (partname) at (hbar) {Part\ \thepart}; - \node[below,left,font=\sffamily\bfseries\huge,shift={(.146\linewidth,-1.5*\barwidth)}] (partcontents) at (partname) {\begin{varwidth}{.8\linewidth}\raggedright\baselineskip=2ex #1 \end{varwidth}}; % 标题名称 + \node[above,font=\sc\huge,shift={(.33\linewidth,.5\barwidth)}] (partname) at (hbar) {Part\ \thepart}; + \node[below,left,font=\sc\huge,shift={(.146\linewidth,-1.5*\barwidth)}] (partcontents) at (partname) {\begin{varwidth}{.8\linewidth}\raggedright\baselineskip=2ex #1 \end{varwidth}}; % 标题名称 \begin{pgfonlayer}{background} - \node[above,shift={(-.4\linewidth,-4*\barwidth)},opacity=0.8] at (partname) {\ifdefvoid{\@partimage}{}{\includegraphics[width=1.2\linewidth]{\@partimage}}}; % 图片位置调整 + \node[above,shift={(-.4\linewidth,-4*\barwidth)}] at (partname) {\ifdefvoid{\@partimage}{}{\includegraphics[width=1.2\linewidth]{\@partimage}}}; % 图片位置调整 \end{pgfonlayer} - \node[above right,font=\fontsize{15}{15}\selectfont,circle,fill=outermarginfgcolor,text=white,inner sep=1mm] (pagenumber) at ([shift={(5mm,5mm)}]current page.south west) {\thepage}; - \else - \fill[outermarginfgcolor] - (current page.north west) rectangle ++(\barwidth,-\paperheight); - \node[] (hbar) at ($(current page.north)!0.33!(current page.south)$) { - \begin{tikzpicture} - \fill[white] - (0,0) rectangle ++(\paperwidth,-1cm); - \fill[outermarginbgcolor] - (0,-.25cm) rectangle ++(\paperwidth,-.5cm); - \fill[outermarginfgcolor] - (.15\paperwidth,-.25cm) rectangle ++(4.5cm,-.5cm); - \fill[outermarginfgcolor!20!white] - (.15\paperwidth-1mm,-.25cm) rectangle ++(1mm,-.5cm); - \fill[outermarginfgcolor!20!white] - (.15\paperwidth+4.5cm,-.25cm) rectangle ++(1mm,-.5cm); - \end{tikzpicture} - }; - \node[above,font=\huge,shift={(-.31\linewidth,.5\barwidth)}] (partname) at (hbar) {Part\ \thepart}; - \node[below right,font=\sffamily\bfseries\huge,shift={(-.125\linewidth,-1.2*\barwidth)}] (partcontents) at (partname) {\begin{varwidth}{.8\linewidth}\raggedright\baselineskip=2ex #1 \end{varwidth}}; % 标题名称 - \begin{pgfonlayer}{background} - \node[above,shift={(.4\linewidth,-4*\barwidth)},opacity=0.8] at (partname) {\ifdefvoid{\@partimage}{}{\includegraphics[width=1.2\linewidth]{\@partimage}}}; % 图片位置调整 - \end{pgfonlayer} - \node[above left,font=\fontsize{15}{15}\selectfont,circle,fill=outermarginfgcolor,text=white,inner sep=1mm] (pagenumber) at ([shift={(-5mm,5mm)}]current page.south east) {\thepage}; - \fi - \node[below,,font=\sffamily\fontsize{13}{13}\selectfont,shift={(0\linewidth,-1.65*\barwidth)}] at (hbar) {\ifdefvoid{\@partabstract}{}{\begin{varwidth}{.85\linewidth}\baselineskip=3ex \@partabstract\end{varwidth}}}; % 简介文字调整 + \else + \fill [outermarginfgcolor!20]% + (current page.north west) rectangle ++(\outermarginwidth,-\paperheight); + \pattern [pattern=north west lines,pattern color=outermarginfgcolor!50]% + (current page.north west) rectangle ++(\outermarginwidth,-\paperheight); + \fill [outermarginbgcolor!90,path fading=fade south]% + ([yshift=1mm]current page.north west) rectangle ++(\outermarginwidth,-.8\paperheight); + \fill [outermarginbgcolor,path fading=fade north]% + (current page.south west) rectangle ++(\outermarginwidth,.8\paperheight);% + % lines + \fill[outermarginfgcolor,rounded corners=2pt] (current page.north west) --++(5pt,-0.15cm)--++(\outermarginwidth-10pt,0) --++(5pt,0.15cm)--cycle; + \coordinate (anchor of headmark) at ([shift={(1.2\outermarginwidth,-0.2cm)}]current page.north west); + \node[below ,text=outermarginfgcolor,font=\sffamily\bfseries\fontsize{15}{20}\selectfont] (partpagenum) at ([shift={(.5\outermarginwidth,0)}]current page.north west) {\thepage}; + \fill[outermarginfgcolor,rounded corners=2pt] (current page.south west) --++(5pt,0.15cm)--++(\outermarginwidth-10pt,0) --++(5pt,-0.15cm)--cycle; % 页码横线 + \node[] (hbar) at ($(current page.north)!0.33!(current page.south)$) { + \begin{tikzpicture} + \fill[white] + (0,0) rectangle ++(\paperwidth,-1cm); + \fill[outermarginbgcolor] + (0,-.25cm) rectangle ++(\paperwidth,-.5cm); + \fill[outermarginfgcolor] + (.15\paperwidth,-.25cm) rectangle ++(4.5cm,-.5cm); + \fill[outermarginfgcolor!20!white] + (.15\paperwidth-1mm,-.25cm) rectangle ++(1mm,-.5cm); + \fill[outermarginfgcolor!20!white] + (.15\paperwidth+4.5cm,-.25cm) rectangle ++(1mm,-.5cm); + \end{tikzpicture} + }; + \node[above,font=\sc\huge,shift={(-.31\linewidth,.5\barwidth)}] (partname) at (hbar) {Part\ \thepart}; + \node[below right,font=\sc\huge,shift={(-.125\linewidth,-1.2*\barwidth)}] (partcontents) at (partname) {\begin{varwidth}{.8\linewidth}\raggedright\baselineskip=2ex #1 \end{varwidth}}; % 标题名称 + \begin{pgfonlayer}{background} + \node[above,shift={(.35\linewidth,-4*\barwidth)}] at (partname) {\ifdefvoid{\@partimage}{}{\includegraphics[width=1.2\linewidth]{\@partimage}}}; % 图片位置调整 + \end{pgfonlayer} + \fi + \node[below,,font=\itshape\fontsize{13}{13}\selectfont,shift={(0\linewidth,-1.65*\barwidth)}] at (hbar) {\ifdefvoid{\@partabstract}{}{\begin{varwidth}{.85\linewidth}\baselineskip=3ex \@partabstract\end{varwidth}}}; % 简介文字调整 \end{tikzpicture}} \makeatother \assignpagestyle{\part}{empty} \assignpagestyle{\chapter}{empty} + + %% -- Section \titleformat{\section} {} @@ -368,22 +493,33 @@ citecolor = purple, {-.5em} %左右移动\thesection标签位置 {\mysectionformat{#1}} +\titleformat{name=\section,numberless}{}{}{-.5em}{\mysectionnonumformat{#1}} + \newcommand{\mysectionformat}[1]{% \makebox[0pt][l]{\def\rad{7pt}% \begin{tikzpicture}[remember picture] \path[fill=outermarginfgcolor,drop shadow={opacity=0.3,shadow xshift=.05cm,shadow yshift=-.05cm}]node[append after command={ ([xshift=\rad]sec.north west) to[out=180,in=0,looseness=1] ([xshift=-3*\rad]sec.south west) --([xshift=-\rad]sec.south east) to[out=0,in=180,looseness=1] ([xshift=3*\rad]sec.north east) --cycle}, - text=white,font=\rmfamily\large\bfseries,align=center,inner ysep=2mm] (sec) at (0,0) {Sec\ \thesection}; - \draw[outermarginbgcolor,line width=0.5pt] (sec.north east)--++(.8\linewidth,0); - \node[text=black,font=\rmfamily\bfseries\Large,below right] (secnum) at ([shift={(0,0mm)}]sec.north east) {\begin{varwidth}{.85\linewidth}\setlength\baselineskip{22.5pt}\hspace{.5cm}#1\end{varwidth}}; + text=white,font=\sffamily\large\bfseries,align=center,inner ysep=2mm] (sec) at (0,0) {Sec\ \thesection}; + \node[text=black,font=\large,below right] (secnum) at ([shift={(0,-1mm)}]sec.north east) {\begin{varwidth}{.85\linewidth}\setlength\baselineskip{18pt}\hspace{.5cm}#1\end{varwidth}}; \end{tikzpicture}}}%最后一个选项为 [<after code>] + +\newcommand{\mysectionnonumformat}[1]{% +\makebox[0pt][l]{\def\rad{7pt}% +\begin{tikzpicture}[remember picture] + \path[fill=outermarginfgcolor,drop shadow={opacity=0.3,shadow xshift=.05cm,shadow yshift=-.05cm}]node[append after command={ + ([xshift=\rad]sec.north west) to[out=180,in=0,looseness=1] ([xshift=-3*\rad]sec.south west) --([xshift=-\rad]sec.south east) to[out=0,in=180,looseness=1] ([xshift=3*\rad]sec.north east) --cycle}, + text=white,font=\sffamily\large\bfseries,align=center,inner ysep=2mm] (sec) at (0,0) {Sec}; + \node[text=black,font=\large,below right] (secnum) at ([shift={(0,-1mm)}]sec.north east) {\begin{varwidth}{.85\linewidth}\setlength\baselineskip{18pt}\hspace{.5cm}#1\end{varwidth}}; +\end{tikzpicture}}}%最后一个选项为 [<after code>] + \titlespacing*{\section}{0pt}{3.5ex plus 1ex minus .2ex}{2.3ex plus .2ex} -% 侧边条 + +%%-------------------------------- SCRLAYER-SCRPAGE -------------------------------------%% +%% SIDE-BAR \newlength\chapternumbersize -\setlength\chapternumbersize{40pt} +\setlength\chapternumbersize{36pt} \setlength{\headheight}{40pt} % 页眉高度 -\RequirePackage{xpatch} -\RequirePackage{scrlayer-scrpage} \renewcommand\chaptermarkformat{} % define a new mark for the chapter number \newmarks\chapternum @@ -397,15 +533,17 @@ citecolor = purple, \ifodd\value{page} \fill[outermarginfgcolor,rounded corners=2pt] (current page.north east) --++(-5pt,-0.15cm)--++(-\outermarginwidth+10pt,0) --++(-5pt,0.15cm)--cycle; \coordinate (anchor of headmark) at ([shift={(-1.2\outermarginwidth,-0.2cm)}]current page.north east); - \node[below ,text=outermarginfgcolor,font=\bfseries\fontsize{20}{20}\selectfont] at ([shift={(-.5\outermarginwidth,-0.2cm)}]current page.north east) {\thepage}; - \node[below left,font=\upshape,text=outermarginfgcolor] at (anchor of headmark) {\begin{varwidth}{\linewidth}\rightmark\end{varwidth}}; - \fill[outermarginfgcolor,rounded corners=2pt] (current page.south east) --++(-5pt,0.15cm)--++(-\outermarginwidth+10pt,0) --++(-5pt,-0.15cm)--cycle; + \node[below ,text=outermarginfgcolor,font=\sffamily\bfseries\fontsize{15}{15}\selectfont] at ([shift={(-.5\outermarginwidth,-0.15cm)}]current page.north east) {\thepage}; + \fill[outermarginfgcolor!50,rounded corners=1pt] ([shift={(0.2\outermarginwidth,0.2cm)}]anchor of headmark) --++(-5pt,-0.15cm)--++(-.45\linewidth,0) --++(-5pt,0.15cm)--cycle; % 页眉横线 + \node[below left,font=\upshape,text=outermarginfgcolor] at ([yshift=0.05cm]anchor of headmark) {\begin{varwidth}{\linewidth}\rightmark\end{varwidth}}; + \fill[outermarginfgcolor,rounded corners=2pt] (current page.south east) --++(-5pt,0.15cm)--++(-\outermarginwidth+10pt,0) --++(-5pt,-0.15cm)--cycle; % 页码横线 \else \fill[outermarginfgcolor,rounded corners=2pt] (current page.north west) --++(5pt,-0.15cm)--++(\outermarginwidth-10pt,0) --++(5pt,0.15cm)--cycle; \coordinate (anchor of headmark) at ([shift={(1.2\outermarginwidth,-0.2cm)}]current page.north west); - \node[below ,text=outermarginfgcolor,font=\bfseries\fontsize{20}{20}\selectfont] at ([shift={(.5\outermarginwidth,-0.2cm)}]current page.north west) {\thepage}; - \node[below right,font=\upshape,text=outermarginfgcolor] at (anchor of headmark) {\begin{varwidth}{\linewidth}\rightmark\end{varwidth}}; - \fill[outermarginfgcolor,rounded corners=2pt] (current page.south west) --++(5pt,0.15cm)--++(\outermarginwidth-10pt,0) --++(5pt,-0.15cm)--cycle; + \node[below ,text=outermarginfgcolor,font=\sffamily\bfseries\fontsize{15}{15}\selectfont] at ([shift={(.5\outermarginwidth,-0.15cm)}]current page.north west) {\thepage}; + \fill[outermarginfgcolor!50,rounded corners=1pt] ([shift={(-0.2\outermarginwidth,0.2cm)}]anchor of headmark) --++(5pt,-0.15cm)--++(.45\linewidth,0) --++(5pt,0.15cm)--cycle; % 页眉横线 + \node[below right,font=\upshape,text=outermarginfgcolor] at ([yshift=0.05cm]anchor of headmark) {\begin{varwidth}{\linewidth}\rightmark\end{varwidth}}; + \fill[outermarginfgcolor,rounded corners=2pt] (current page.south west) --++(5pt,0.15cm)--++(\outermarginwidth-10pt,0) --++(5pt,-0.15cm)--cycle; % 页码横线 \fi \end{pgfonlayer}} } @@ -417,8 +555,8 @@ citecolor = purple, \if@mainmatter \tikzoverlay{ \shade[top color=outermarginfgcolor!90,bottom color=outermarginbgcolor] - (\outermarginwidth,-.5\outermarginwidth) rectangle (0,-1.5\outermarginwidth); - \node[anchor=center,text=white,font=\bfseries] at (1/2*\outermarginwidth,-\outermarginwidth) {\usekomafont{chapternumber}{\botmarks\chapternum}};% + (\outermarginwidth,-.5\outermarginwidth+2mm) rectangle (0,-1.5\outermarginwidth+2mm); + \node[anchor=center,text=white,font=\sffamily\bfseries] at (1/2*\outermarginwidth,-\outermarginwidth+2mm) {\usekomafont{chapternumber}{\botmarks\chapternum}};% } \fi \vfill @@ -445,7 +583,7 @@ citecolor = purple, \makeatother % \newkomafont{outermargin}{%页边章节名称字体 - \sffamily\bfseries\fontsize{15}{15}\selectfont\color{outermarginfgcolor} + \bfseries\fontsize{15}{15}\selectfont\color{outermarginfgcolor} } % declare new page style using layers \DeclareNewPageStyleByLayers{scth}{% @@ -562,11 +700,9 @@ citecolor = purple, \ohead{} \cfoot{} \ofoot{} -% set the contents of the outer margin on even and odd pages for scrheadings, plain and scth -\oddoutermargin{\bf\leftmark} % Odd 奇数页 -\makeatletter -\evenoutermargin{\bfseries\@title} % Even 偶数页 -\makeatother + +%%-------------------------------- SCRLAYER-SCRPAGE -------------------------------------%% + %% Begin The Most Beautiful Box (STYLE : ys style) % 中国风盒子 \makeatletter \definecolor{framegolden}{HTML}{455a64} % 控制外框颜色 @@ -835,8 +971,8 @@ color(75bp)=(pgftransparent!100); color(100bp)=(pgftransparent!100)} }, } \makeatother -\newtcolorbox{fancybox}{enhanced,ys style,breakable,pad at break=2mm, - ys/frame/not at break,ys/frame/fill opacity=0} +\newtcolorbox{fancybox}[1][]{enhanced,ys style,breakable,pad at break=2mm, + ys/frame/not at break,ys/frame/fill opacity=0,#1,fontupper=\itshape} %% End The Most Beautiful Box \makeatletter \definecolor{CyaN}{HTML}{dbe1e5} @@ -901,7 +1037,7 @@ color(75bp)=(pgftransparent!100); color(100bp)=(pgftransparent!100)} %%============== First ==============%% \fill[black!60] ([xshift=1cm,yshift=5pt]frame.north west)-- ([xshift=0.8cm,yshift=0cm]frame.north west)--([xshift=1.2cm,yshift=0cm]frame.north west)--cycle; \node[rectangle, text=white, drop shadow={opacity=.3, shadow xshift=0.1cm}, inner sep=1.5mm,fill=#2, -anchor=west,rounded corners=3pt,font=\bfseries\normalsize] at ([xshift=0cm,yshift=-3.mm]frame.north west) {\hspace*{1.5em}#1.\ \ifdefvoid{\tcbtitletext}{}{(\tcbtitletext)}}; +anchor=west,rounded corners=3pt,font=\bfseries\normalsize] at ([xshift=0cm,yshift=-3.mm]frame.north west) {\hspace*{1.5em}#1.\ \ifdefvoid{\tcbtitletext}{}{(\itshape\tcbtitletext)}}; \fill[color=#2,drop shadow={opacity=0.3,shadow xshift=.3pt}] ([xshift=1cm,yshift=5pt]frame.north west) {[rounded corners=3pt]--++(-1cm-5pt,0)}--++(0,-1cm-5pt)--cycle; \fill[color=black!60] ([xshift=-5pt,yshift=-1cm]frame.north west)--([xshift=0cm,yshift=-0.8cm]frame.north west)-- ([xshift=0cm,yshift=-1.2cm]frame.north west)--cycle; @@ -913,7 +1049,7 @@ anchor=west,rounded corners=3pt,font=\bfseries\normalsize] at ([xshift=0cm,yshif } \newcommand{\my@theorem@overlay@first}[2]{ \fill[black!60] ([xshift=1cm,yshift=5pt]frame.north west)-- ([xshift=0.8cm,yshift=0cm]frame.north west)--([xshift=1.2cm,yshift=0cm]frame.north west)--cycle; - \node[rectangle, text=white, drop shadow={opacity=.3, shadow xshift=0.1cm}, inner sep=1.5mm,fill=#2, anchor=west,rounded corners=3pt,font=\bfseries\normalsize] at ([xshift=0cm,yshift=-3.mm]frame.north west) {\hspace*{1.5em}#1.\ \ifdefvoid{\tcbtitletext}{}{(\tcbtitletext)}}; + \node[rectangle, text=white, drop shadow={opacity=.3, shadow xshift=0.1cm}, inner sep=1.5mm,fill=#2, anchor=west,rounded corners=3pt,font=\bfseries\normalsize] at ([xshift=0cm,yshift=-3.mm]frame.north west) {\hspace*{1.5em}#1.\ \ifdefvoid{\tcbtitletext}{}{(\itshape\tcbtitletext)}}; \fill[color=#2,drop shadow={opacity=0.3,shadow xshift=.3pt}] ([xshift=1cm,yshift=5pt]frame.north west) {[rounded corners=3pt]--++(-1cm-5pt,0)}--++(0,-1cm-5pt)--cycle; \fill[color=black!60] ([xshift=-5pt,yshift=-1cm]frame.north west)--([xshift=0cm,yshift=-0.8cm]frame.north west)-- ([xshift=0cm,yshift=-1.2cm]frame.north west)--cycle; @@ -932,10 +1068,10 @@ anchor=west,rounded corners=3pt,font=\bfseries\normalsize] at ([xshift=0cm,yshif \def\rad{7pt}% \path[fill=#2,drop shadow={opacity=0.3,shadow xshift=.05cm,shadow yshift=-.05cm}]node[append after command={ ([xshift=-1.5*\rad]thmname.north west) to[out=0,in=180,looseness=1] ([xshift=2.5*\rad]thmname.south west) --([xshift=-\rad]thmname.south east) to[out=0,in=180,looseness=1] ([xshift=3*\rad]thmname.north east) --cycle}, - text=white,font=\bfseries,align=center,inner ysep=1.5mm,minimum height=0.6cm,right] (thmname) at ([xshift=\rad,yshift=-\rad]frame.north west) {\hspace*{10pt}#1.\ \ifdefvoid{\tcbtitletext}{}{(\tcbtitletext)}}; + text=white,font=\bfseries,align=center,inner ysep=1.5mm,minimum height=0.6cm,right] (thmname) at ([xshift=\rad,yshift=-.7*\rad]frame.north west) {\hspace*{10pt}#1.\ \ifdefvoid{\tcbtitletext}{}{(\itshape\tcbtitletext)}}; \begin{pgfonlayer}{bottom} \fill[#2,opacity=0.5] - ([xshift=-1.5*\rad]thmname.north west) to[out=-90,in=0,looseness=1.5] +(3pt,-6pt) -| +(10pt,0)--cycle; + ([xshift=-1.5*\rad]thmname.north west) to[out=180,in=305,looseness=1.5] +(3pt,-6pt) -| ++(12pt,0)--cycle; \fill[#2,opacity=0.5] ([xshift=3*\rad]thmname.north east) to[out=0,in=-90] +(5pt,-5pt) -| ++(-10pt,0) --cycle; \end{pgfonlayer} @@ -944,7 +1080,7 @@ anchor=west,rounded corners=3pt,font=\bfseries\normalsize] at ([xshift=0cm,yshif \path[fill=#2,drop shadow={opacity=0.3,shadow xshift=.3pt}] ([xshift=-2*\rad,yshift=-5pt]frame.south east) coordinate (SE) to[out=0,in=180] +(4*\rad,5pt+\theight) --([shift={(-\tlen+4*\rad,5pt+\theight)}]SE) to[out=180,in=0] +(-4*\rad,-5pt-\theight) --cycle; \begin{pgfonlayer}{bottom} - \fill[color=#2!80!black] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east) to[out=180,in=90,looseness=0.7] ([xshift=-1.35*\tlen-0.5*\Rad]frame.south east) coordinate (NWl)--([xshift=2*\rad]NWl) to[out=-90,in=-180,looseness=0.7] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east)--cycle; + \fill[color=#2,opacity=0.5] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east) to[out=180,in=90,looseness=0.7] ([xshift=-1.35*\tlen-0.5*\Rad]frame.south east) coordinate (NWl)--([xshift=2*\rad]NWl) to[out=-90,in=-180,looseness=0.7] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east)--cycle; \end{pgfonlayer} } \newcommand{\my@lemma@overlay@first}[2]{ @@ -954,10 +1090,10 @@ anchor=west,rounded corners=3pt,font=\bfseries\normalsize] at ([xshift=0cm,yshif \def\rad{7pt}% \path[fill=#2,drop shadow={opacity=0.3,shadow xshift=.05cm,shadow yshift=-.05cm}]node[append after command={ ([xshift=-1.5*\rad]thmname.north west) to[out=0,in=180,looseness=1] ([xshift=2.5*\rad]thmname.south west) --([xshift=-\rad]thmname.south east) to[out=0,in=180,looseness=1] ([xshift=3*\rad]thmname.north east) --cycle}, - text=white,font=\bfseries,align=center,inner ysep=1.5mm,minimum height=0.6cm,right] (thmname) at ([xshift=\rad,yshift=-\rad]frame.north west) {\hspace*{10pt}#1.\ \ifdefvoid{\tcbtitletext}{}{(\tcbtitletext)}}; + text=white,font=\bfseries,align=center,inner ysep=1.5mm,minimum height=0.6cm,right] (thmname) at ([xshift=\rad,yshift=-.7*\rad]frame.north west) {\hspace*{10pt}#1.\ \ifdefvoid{\tcbtitletext}{}{(\itshape\tcbtitletext)}}; \begin{pgfonlayer}{bottom} \fill[#2,opacity=0.5] - ([xshift=-1.5*\rad]thmname.north west) to[out=-90,in=0,looseness=1.5] +(3pt,-6pt) -| +(10pt,0)--cycle; + ([xshift=-1.5*\rad]thmname.north west) to[out=180,in=305,looseness=1.5] +(3pt,-6pt) -| ++(12pt,0)--cycle; \fill[#2,opacity=0.5] ([xshift=3*\rad]thmname.north east) to[out=0,in=-90] +(5pt,-5pt) -| ++(-10pt,0) --cycle; \end{pgfonlayer} @@ -971,37 +1107,27 @@ anchor=west,rounded corners=3pt,font=\bfseries\normalsize] at ([xshift=0cm,yshif \path[fill=#1,drop shadow={opacity=0.3,shadow xshift=.3pt}] ([xshift=-2*\rad,yshift=-5pt]frame.south east) coordinate (SE) to[out=0,in=180] +(4*\rad,5pt+\theight) --([shift={(-\tlen+4*\rad,5pt+\theight)}]SE) to[out=180,in=0] +(-4*\rad,-5pt-\theight) --cycle; \begin{pgfonlayer}{bottom} - \fill[color=#1!80!black] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east) to[out=180,in=90,looseness=0.7] ([xshift=-1.35*\tlen-0.5*\Rad]frame.south east) coordinate (NWl)--([xshift=2*\rad]NWl) to[out=-90,in=-180,looseness=0.7] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east)--cycle; + \fill[color=#1,opacity=0.5] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east) to[out=180,in=90,looseness=0.7] ([xshift=-1.35*\tlen-0.5*\Rad]frame.south east) coordinate (NWl)--([xshift=2*\rad]NWl) to[out=-90,in=-180,looseness=0.7] ([xshift=-1.35*\tlen+\Rad,yshift=-5pt]frame.south east)--cycle; \end{pgfonlayer} } \makeatother %% % proof +\newcommand{\itbf}[1]{\textit{\textbf{#1}}} \declaretheoremstyle[ spaceabove=3pt,spacebelow=3pt, headfont=\normalfont\bfseries, notefont=\normalfont\bfseries,notebraces={(}{)}, bodyfont=\normalfont, - postheadspace=1em, + postheadspace=.5em, headpunct={.}, - qed=\qedsymbol + qed=$\blacksquare$,%\qedsymbol ]{Proofstyle} -\declaretheorem[style=Proofstyle,numbered=no,name={ Proof}]{Proof} +\declaretheorem[style=Proofstyle,numbered=no,name={\itbf{Proof}}]{Proof} \renewenvironment{proof}{\begin{Proof} }{\end{Proof}} -\declaretheorem[style=Proofstyle,numbered=no,name={ Solution}]{solution} -%% --------参考文献 -\RequirePackage[ -backend=biber, -style=gb7714-2015, -sorting=nty -]{biblatex} -\addbibresource{ref.bib} -\indexsetup{level=\chapter*,noclearpage} -\makeindex[title={ References},columns=3,columnsep=15pt,columnseprule] -\makeindex -\newcommand{\Diff}[2][]{\frac{\partial #1}{\partial #2}} -\newcommand{\Dif}[2]{\frac{\dd #1}{\dd #2}} +\declaretheorem[style=Proofstyle,numbered=no,name={\itbf{Solution}}]{solution} + %%%%%%%%%%%%%%% 计数器知识 %%%%%%%%%%%%%%%%%%%%%% % 每次用 \newcounter{foo} 定义新计数器,内部都会定义这几个命令 diff --git a/macros/latex/contrib/beautybook/Beautybook-introduction-chinese.pdf b/macros/latex/contrib/beautybook/Beautybook-cn.pdf Binary files differindex 9ca04761a9..d5fe6b8561 100644 --- a/macros/latex/contrib/beautybook/Beautybook-introduction-chinese.pdf +++ b/macros/latex/contrib/beautybook/Beautybook-cn.pdf diff --git a/macros/latex/contrib/beautybook/Beautybook-introduction-chinese.tex b/macros/latex/contrib/beautybook/Beautybook-cn.tex index 6c6fa3b714..5722dcb40c 100644 --- a/macros/latex/contrib/beautybook/Beautybook-introduction-chinese.tex +++ b/macros/latex/contrib/beautybook/Beautybook-cn.tex @@ -6,231 +6,303 @@ cover-choose=cn, % cn (需新增项\entitle{#}); en ; enfig ; birkar } \mathstyle={ % 数学字体键值列表 - math-font=plain, %plain (默认数学字体); mtpro2 + math-font=plain, %plain (默认数学字体); stix; mtpro2 } -%% 定义第一种定理 +%% First one \mynewtheorem{ - defi={\textbf{定义}}[section]{interior style={left color=ReD!8,right color=ReD!5!CyaN!50}, borderline west={1.5mm}{0mm}{ReD}}, - thm={\textbf{定理}}[section]{interior style={left color=CyaN!80!black!20,right color=CyaN!80!black!15!CyaN!50}, borderline west={1.5mm}{0mm}{CyaN!80!black}}, - lem={\textbf{引理}}[section]{interior style={left color=BluE!8,right color=BluE!5!CyaN!50}, borderline west={1.5mm}{0mm}{BluE}}, - prop={\textbf{命题}}[section]{interior style={left color=OrangE!8,right color=OrangE!5!CyaN!50}, borderline west={1.5mm}{0mm}{OrangE}}, - exam={\textbf{题}}[chapter]{interior style={left color=DarkGreen!8,right color=DarkGreen!5!CyaN!50}, borderline west={1.5mm}{0mm}{DarkGreen}}, - cor={\textbf{推论}}[chapter]{interior style={left color=violet!8,right color=violet!5!CyaN!50}, borderline west={1.5mm}{0mm}{violet}}, + defi={\textbf{Definition}}[section]{interior style={left color=ReD!8,right color=ReD!5!CyaN!50}, borderline west={1.5mm}{0mm}{ReD}}, + thm={\textbf{Theorem}}[section]{interior style={left color=CyaN!80!black!20,right color=CyaN!80!black!15!CyaN!50}, borderline west={1.5mm}{0mm}{CyaN!80!black}}, + lem={\textbf{Lemma}}[section]{interior style={left color=BluE!8,right color=BluE!5!CyaN!50}, borderline west={1.5mm}{0mm}{BluE}}, + prop={\textbf{Proposition}}[section]{interior style={left color=OrangE!8,right color=OrangE!5!CyaN!50}, borderline west={1.5mm}{0mm}{OrangE}}, + exam={\textbf{Example}}[chapter]{interior style={left color=DarkGreen!8,right color=DarkGreen!5!CyaN!50}, borderline west={1.5mm}{0mm}{DarkGreen}}, + cor={\textbf{Corollary}}[chapter]{interior style={left color=violet!8,right color=violet!5!CyaN!50}, borderline west={1.5mm}{0mm}{violet}}, } -\newtheorem*{remark}{\textbf{注}} -%% 定义第二种定理 -% overlay unbroken=\my@theorem@overlay@unbroken{\theorem@name\ \thetcbthm}{额外的选项} -% overlay first=\my@theorem@overlay@first{\theorem@name\ \thetcbthm}{额外的选项} -%% 用户接口区 -\definecolor{examback}{HTML}{e3e6e8} +\newtheorem*{remark}{\textbf{Remark}} +%% Second one \makeatletter \mynewtcbtheorem{ % 这个 theorem 是环境名 - theorem={ - counter=tcbthm, - the counter=\thesection.\arabic{tcbthm}, - name=定理, % 它保存到 \theorem@name 里 - thmcolor=高粱红, - autoref name=\bfseries 定理, + problem={ + counter=tcbprob, + the counter=\thesection.\arabic{tcbprob}, + name=Problem, % 它保存到 \theorem@name 里 + thmcolor=绛紫, + autoref name=\bfseries Problem, style={ - arc=3pt,breakable,enhanced,interior style={top color=高粱红!12 ,middle color=高粱红!9, bottom color=高粱红!6},boxrule=0pt,top=8mm, + arc=3pt,breakable,enhanced,interior style={top color=绛紫!9 ,middle color=绛紫!6, bottom color=绛紫!3},boxrule=0pt,top=8mm, fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 opacityframe=0, opacityback=0.98, - fontupper=\itshape, step={tcbthm}, + fontupper=\itshape, step={tcbprob}, before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@theorem@overlay@unbroken{\theorem@name\ \thetcbthm}{\theorem@thmcolor}, - overlay first=\my@theorem@overlay@first{\theorem@name\ \thetcbthm}{\theorem@thmcolor}, - overlay last=\my@theorem@overlay@last{\theorem@thmcolor}, + overlay unbroken=\my@theorem@overlay@unbroken{Problem\ \thetcbprob}{绛紫}, + overlay first=\my@theorem@overlay@first{Problem\ \thetcbprob}{绛紫}, + overlay last=\my@theorem@overlay@last{绛紫}, } }, - proposition={ - counter=tcbprop, - the counter=\thesection.\arabic{tcbprop}, - autoref name=\bfseries 命题, + lemma={ + counter=tcblem, + the counter=\thesection.\arabic{tcblem}, + name=Lemma, + lemcolor=靛蓝, + autoref name=\bfseries Lemma, style={ - arc=3pt,breakable,enhanced,interior style={top color=高粱红!12 ,middle color=高粱红!9, bottom color=高粱红!6},boxrule=0pt,top=8mm, + arc=0mm,breakable,enhanced,interior style={top color=靛蓝!9 ,middle color=靛蓝!6, bottom color=靛蓝!3},arc=3pt,boxrule=0pt,top=6mm,bottom=5mm, fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 opacityframe=0, opacityback=0.98, - fontupper=\itshape, step={tcbprop}, + fontupper=\itshape,step={tcblem}, before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@theorem@overlay@unbroken{命题\ \thetcbprop}{高粱红}, - overlay first=\my@theorem@overlay@first{命题\ \thetcbprop}{高粱红}, - overlay last=\my@theorem@overlay@last{高粱红}, + overlay unbroken=\my@lemma@overlay@unbroken{\lemma@name\ \thetcblem}{\lemma@lemcolor}, + overlay first=\my@lemma@overlay@first{\lemma@name\ \thetcblem}{\lemma@lemcolor}, + overlay last=\my@lemma@overlay@last{\lemma@lemcolor}, } }, - definition={ - counter=tcbdefi, - the counter=\thesection.\arabic{tcbdefi}, - autoref name=\bfseries 定义, + corollary={ + counter=tcbcor, + the counter=\thesection.\arabic{tcbcor}, + autoref name=\bfseries Corollary, style={ - arc=3pt,breakable,enhanced,interior style={top color=紫棠!12 ,middle color=紫棠!9, bottom color=紫棠!6},boxrule=0pt,top=8mm, + arc=0mm,breakable,enhanced,interior style={top color=茶色!9 ,middle color=茶色!6, bottom color=茶色!3},arc=3pt,boxrule=0pt,top=6mm,bottom=5mm, fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 opacityframe=0, opacityback=0.98, - fontupper=\itshape, step={tcbdefi}, + fontupper=\itshape,step={tcbcor}, before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@theorem@overlay@unbroken{定义\ \thetcbdefi}{紫棠}, - overlay first=\my@theorem@overlay@first{定义\ \thetcbdefi}{紫棠}, - overlay last=\my@theorem@overlay@last{紫棠}, + overlay unbroken=\my@lemma@overlay@unbroken{Corollary\ \thetcbcor}{茶色}, + overlay first=\my@lemma@overlay@first{Corollary\ \thetcbcor}{茶色}, + overlay last=\my@lemma@overlay@last{茶色}, } }, - lemma={ - counter=tcblem, - the counter=\thesection.\arabic{tcblem}, - name=引理, - lemcolor=靛蓝, - autoref name=\bfseries 引理, + proposition={ + counter=tcbprop, + the counter=\thesection.\arabic{tcbprop}, + autoref name=\bfseries Proposition, style={ - arc=0mm,breakable,enhanced,interior style={top color=靛蓝!12 ,middle color=靛蓝!9, bottom color=靛蓝!6},arc=3pt,boxrule=0pt,top=7mm,bottom=5mm, + arc=0mm,breakable,enhanced,interior style={top color=黛绿!9 ,middle color=黛绿!6, bottom color=黛绿!3},arc=3pt,boxrule=0pt,top=6mm,bottom=5mm, fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 opacityframe=0, opacityback=0.98, - fontupper=\normalsize,step={tcblem}, + fontupper=\itshape,step={tcbprop}, before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@lemma@overlay@unbroken{\lemma@name\ \thetcblem}{\lemma@lemcolor}, - overlay first=\my@lemma@overlay@first{\lemma@name\ \thetcblem}{\lemma@lemcolor}, - overlay last=\my@lemma@overlay@last{\lemma@lemcolor}, + overlay unbroken=\my@lemma@overlay@unbroken{Proposition\ \thetcbprop}{黛绿}, + overlay first=\my@lemma@overlay@first{Proposition\ \thetcbprop}{黛绿}, + overlay last=\my@lemma@overlay@last{黛绿}, } }, - corollary={ - counter=tcbcor, - the counter=\thesection.\arabic{tcbcor}, - autoref name=\bfseries 推论, + definition={ + counter=tcbdefi, + the counter=\thesection.\arabic{tcbdefi}, + autoref name=\bfseries Definition, style={ - arc=0mm,breakable,enhanced,interior style={top color=茶色!12 ,middle color=茶色!9, bottom color=茶色!6},arc=3pt,boxrule=0pt,top=7mm,bottom=5mm, + arc=0mm,breakable,enhanced,interior style={top color=茜色!9 ,middle color=茜色!6, bottom color=茜色!3},arc=3pt,boxrule=0pt,top=6mm,bottom=5mm, fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 opacityframe=0, opacityback=0.98, - fontupper=\normalsize,step={tcbcor}, + fontupper=\normalsize,step={tcbdefi}, before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@lemma@overlay@unbroken{推论\ \thetcbcor}{茶色}, - overlay first=\my@lemma@overlay@first{推论\ \thetcbcor}{茶色}, - overlay last=\my@lemma@overlay@last{茶色}, + overlay unbroken=\my@lemma@overlay@unbroken{Definition\ \thetcbdefi}{茜色}, + overlay first=\my@lemma@overlay@first{Definition\ \thetcbdefi}{茜色}, + overlay last=\my@lemma@overlay@last{茜色}, } }, example={ counter=tcbexam, the counter=\thesection.\arabic{tcbexam}, - autoref name=\bfseries 例题, + autoref name=\bfseries Example, style={ - arc=0mm,breakable,enhanced,interior style={top color=黛绿!12 ,middle color=黛绿!9, bottom color=黛绿!6},arc=3pt,boxrule=0pt,top=7mm,bottom=5mm, + arc=0mm,breakable,enhanced,interior style={top color=黛绿!9 ,middle color=黛绿!6, bottom color=黛绿!3},arc=3pt,boxrule=0pt,top=6mm,bottom=5mm, fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 opacityframe=0, opacityback=0.98, fontupper=\normalsize,step={tcbexam}, before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@lemma@overlay@unbroken{例题\ \thetcbexam}{黛绿}, - overlay first=\my@lemma@overlay@first{例题\ \thetcbexam}{黛绿}, + overlay unbroken=\my@lemma@overlay@unbroken{Example\ \thetcbexam}{黛绿}, + overlay first=\my@lemma@overlay@first{Example\ \thetcbexam}{黛绿}, overlay last=\my@lemma@overlay@last{黛绿}, } }, + Exercise={ + counter=tcbexer, + the counter=\thechapter.\arabic{tcbexer}, + autoref name=\bfseries Exercise, + style={ + arc=0mm,breakable,enhanced,interior style={top color=绛紫!9 ,middle color=绛紫!6, bottom color=绛紫!3},arc=3pt,boxrule=0pt,top=6mm,bottom=5mm, + fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 + fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 + opacityframe=0, opacityback=0.9, + fontupper=\normalsize,step={tcbexer}, + before pre=\smallskip, after app=\smallskip, + overlay unbroken=\my@lemma@overlay@unbroken{Exercise\ \thetcbexer}{绛紫}, + overlay first=\my@lemma@overlay@first{Exercise\ \thetcbexer}{绛紫}, + overlay last=\my@lemma@overlay@last{绛紫}, + } + }, + theorem={ + counter=tcbthm, + the counter=\thesection.\arabic{tcbthm}, + autoref name=\bfseries Theorem, + style={ + arc=0mm,breakable,enhanced,interior style={top color=黛绿!9 ,middle color=黛绿!6, bottom color=黛绿!3},arc=3pt,boxrule=0pt,top=6mm,bottom=5mm, + fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 + fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 + opacityframe=0, opacityback=0.98, + fontupper=\itshape,step={tcbthm}, + before pre=\smallskip, after app=\smallskip, + overlay unbroken=\my@lemma@overlay@unbroken{Theorem\ \thetcbthm}{黛绿}, + overlay first=\my@lemma@overlay@first{Theorem\ \thetcbthm}{黛绿}, + overlay last=\my@lemma@overlay@last{黛绿}, + } + }, + conjecture={ + counter=tcbconj, + the counter=\thesection.\arabic{tcbconj}, + name=Conjecture, + lemcolor=靛蓝, + autoref name=\bfseries Conjecture, + style={ + arc=0mm,breakable,enhanced,interior style={top color=靛蓝!9 ,middle color=靛蓝!6, bottom color=靛蓝!3},arc=3pt,boxrule=0pt,top=6mm,bottom=5mm, + fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 + fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 + opacityframe=0, opacityback=0.98, + fontupper=\itshape,step={tcbconj}, + before pre=\smallskip, after app=\smallskip, + overlay unbroken=\my@lemma@overlay@unbroken{Conjecture\ \thetcblem}{靛蓝}, + overlay first=\my@lemma@overlay@first{Conjecture\ \thetcblem}{靛蓝}, + overlay last=\my@lemma@overlay@last{靛蓝}, + } + }, } \makeatother -% \newenvironment{note}[1][\bf 笔记:]{\Line\uuline{#1} }{\Line} -% \renewcommand{\Line}{\noindent\\\tikz\draw[line width=0.65pt,gray!80,dashed] (0,0)--++(.99\linewidth,0);\par} -% \newenvironment{key}[1][]{\begin{fancybox}{#1}}{\end{fancybox}} -% \newcommand{\Diff}[2][]{\frac{\partial #1}{\partial #2}} -% \newcommand{\Dif}[2]{\frac{\dd #1}{\dd #2}} -% \newcommand{\pr}{^\prime} -\usepackage{extarrows} -\usetikzlibrary{tikzmark} -% \arrowname{super-script} -% \arrowname[sub-script]{super-script} -\usepackage{appendix} % 附录 -% 代码环境 -\usepackage{listings} -\lstset{ - basicstyle=\small\ttfamily, % 基本样式 - keywordstyle=\color{NavyBlue}, % 关键词样式 - commentstyle=\color{gray!50!black!50}, % 注释样式 - stringstyle=\rmfamily\slshape\color{red}, % 字符串样式 - backgroundcolor=\color{gray!5}, % 代码块背景颜色 - frame=leftline, % 代码框形状 - framerule=12pt,% - rulecolor=\color{gray!90}, % 代码框颜色 - numbers=left, % 左侧显示行号往左靠, 还可以为right ,或none,即不加行号 - numberstyle=\footnotesize\itshape, % 行号的样式 - firstnumber=1, - stepnumber=1, % 若设置为2,则显示行号为1,3,5 - numbersep=7pt, % 行号与代码之间的间距 - aboveskip=.25em, % 代码块边框 - showspaces=false, % 显示添加特定下划线的空格 - showstringspaces=false, % 不显示代码字符串中间的空格标记 - keepspaces=true, - showtabs=false, % 在字符串中显示制表符 - tabsize=2, % 默认缩进2个字符 - captionpos=b, % 将标题位置设置为底部 - flexiblecolumns=true, % - breaklines=true, % 设置自动断行 - breakatwhitespace=false, % 设置自动中断是否只发生在空格处 - breakautoindent=true, % - breakindent=1em, % - title=\lstname, % - escapeinside=``, % 在``里显示中文 - xleftmargin=1em, xrightmargin=1em, % 设定listing左右的空白 - aboveskip=1ex, belowskip=1ex, - framextopmargin=1pt, framexbottommargin=1pt, - abovecaptionskip=-2pt,belowcaptionskip=3pt, - % 设定中文冲突,断行,列模式,数学环境输入,listing数字的样式 - extendedchars=false, columns=flexible, mathescape=true, - texcl=true, - fontadjust -}% + +%% --------参考文献 +\RequirePackage[ +backend=biber, +style=numeric, +sorting=nty +]{biblatex} +\addbibresource{ref.bib} + +\indexsetup{level=\chapter*,noclearpage} +\makeindex[title={\sffamily References},columns=3,columnsep=15pt,columnseprule] +\makeindex + +\newcommand{\pr}{^\prime} +\newcommand{\prr}{^{\prime\prime}} +\newcommand{\bd}{\partial} +\newcommand{\bdd}{\overline{\partial}} +\newcommand{\Dif}[2]{\frac{\dd #1}{\dd #2}} +\newcommand{\Diff}[2][]{\frac{\partial #1}{\partial #2}} +\usepackage{shadowtext}\shadowoffset{.65pt} +\newcommand*{\circledd}[1]{\lower.7ex\hbox{\tikz\draw (0pt, 0pt)% + circle (.5em) node {\makebox[1em][c]{\small #1}};}} + \usepackage{listings} + \lstset{ + basicstyle=\small\ttfamily, + keywordstyle=\color{NavyBlue}, + commentstyle=\color{gray!50!black!50}, + stringstyle=\rmfamily\slshape\color{red}, + backgroundcolor=\color{gray!5}, + frame=leftline, + framerule=0.5pt,rulecolor=\color{gray!80}, + numbers=left, + numberstyle=\footnotesize, + firstnumber=1, + stepnumber=1, + numbersep=7pt, + aboveskip=.25em, + showspaces=false, + showstringspaces=false, + keepspaces=true, + showtabs=false, + tabsize=2, + captionpos=b, + flexiblecolumns=true, + breaklines=true, + breakatwhitespace=false, + breakautoindent=true, + breakindent=1em, + title=\lstname, + escapeinside=``, + xleftmargin=1em, xrightmargin=1em, + aboveskip=1ex, belowskip=1ex, + framextopmargin=1pt, framexbottommargin=1pt, + abovecaptionskip=-2pt,belowcaptionskip=3pt, + extendedchars=false, columns=flexible, mathescape=true, + texcl=true, + fontadjust + }% + \begin{document} \thispagestyle{empty} -\entitle{The introduction to Beautybook Template} % cncover专用 -\title{Beautybook 说明文档} -\subtitle{Beautybook 说明文档} +\title{Beautybook模板简介} +\subtitle{} \edition{First Edition} \bookseries{Illustrated by Ethan Lu} \author{Ethan Lu} -\pressname{logo} +\pressname{Beautybook} \presslogo{inner_pics/logo.png} -\coverimage{inner_pics/coverimage.jpg} % cncover专用 -%\coverimage{inner_pics/ivy-ge998908f8_1280.jpg} -\makecover % 封面生成命令 +\coverimage{inner_pics/coverimage.jpg}%ivy-ge998908f8_1280.jpg +\makecover + -% 主题色调 \definecolor{bg}{HTML}{e0e0e0} -\definecolor{fg}{HTML}{203A43} +\definecolor{fg}{HTML}{2c4f54} \colorlet{outermarginbgcolor}{bg} \colorlet{outermarginfgcolor}{fg} \colorlet{framegolden}{fg} -\colorlet{framegray}{黛绿!5} -\chapoddimage{inner_pics/songodd.png} -\chapevenimage{inner_pics/songeven.png} +\colorlet{framegray}{bg!50} + +\makeatletter +% set the contents of the outer margin on even and odd pages for scrheadings, plain and scth +\oddoutermargin{\sffamily Vanishing Theorems on Vector Bundles with Semidefinite Curvature} % Odd 奇数页 +\evenoutermargin{\sffamily\@title} % Even 偶数页 % -\thispagestyle{empty}\newpage % left blank +\titleimage{ + chapteroddimage={odd1,odd2,odd3,odd4,odd5,odd6,odd7,odd8,odd9,odd10,odd11,odd12,odd13,odd14,odd15,mid1,mid2,mid3,mid4,mid5,mid6,mid7,mid8,mid9,mid10,mid11}, % -\frontmatter % 前置材料 + partoddimage={odd1,odd2,odd3,odd4,odd5,odd6,odd7,odd8,odd9,odd10,odd11,odd12,odd13,odd14,odd15,mid1,mid2,mid3,mid4,mid5,mid6,mid7,mid8,mid9,mid10,mid11}, +% + chapterevenimage={songeven,even1,even2,even3,even4,mid1,mid2,mid3,mid4,mid5,mid6,mid7,mid8,mid9,mid10,mid11}, +% + partevenimage={songeven,even1,even2,even3,even4,mid1,mid2,mid3,mid4,mid5,mid6,mid7,mid8,mid9,mid10,mid11}, +} +\chapimage{\Beautybook@chapterimagename} % 会自动改变 +\partimage{\Beautybook@partimagename} % 会自动改变 +\makeatother +% +\frontmatter \pagenumbering{Roman} -% preface + +{% Preface \thispagestyle{empty} -\addcontentsline{toc}{chapter}{前言} -\chapter*{前言} -怀着复杂的心情写下了这本不算是笔记的笔记,大差不离就是抄写本吧! +% \addcontentsline{toc}{chapter}{Preface} +\chapter*{Preface} +Introduction to Beatybook template. -\hfill +\hfill \begin{tabular}{lr} - &----- 作者\\ -&2023年 01月 11日 + &----- Ethan Lu\\ + &2023-09-01 \end{tabular} +\clearpage} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\let\cleardoublepage\clearpage -% \thispagestyle{empty} -\tableofcontents\let\cleardoublepage\clearpage % 目录 +\tableofcontents\let\cleardoublepage\clearpage + -\mainmatter % 正文 +\mainmatter \pagenumbering{arabic} -\partimage{inner_pics/part.png} + \partabstract{\hspace*{2em} \textbf{Beautybook} 模板的使用说明,这里是每一个部分 (Part) 的简介区域, 您可以在此处书写下您对该部分的一个简明扼要的概述, 当然,倘若无话可说,此处可以留空.} \part{\textbf{Beautybook} 模板使用说明} \chapter{Beautybook模板的简要介绍} + +\section{简介} + Beauty\LaTeX{} 系列模板是由我所做的书籍模板系列, 名叫\textbf{Beautybook}! 关于为何起这么奇怪的名字? 我的答案是, 本来我是想起名elegantboook的,但是奈何已经有了大名鼎鼎的elegantbook系列, 所以鄙人只能退而求其次,命名为同样是美丽意思的名词与书籍相组合,古人云:书中自有颜如玉,这不, 美女配书籍,岂不美哉! 故而,这就是 \textbf{Beautybook} 的由来! 本人致力于打造一系列美观、优雅、简便的模板以方便用户和我自己 (主要是服务于自己的,但是耐不住大伙的赏识,遂毛遂自荐一番,望谅解!) 使用。版本经常有所更迭,请关注版本信息,在未开始使用模板前,建议直接选择最新正式版本!最新测试版通常会发布在QQ群内,诸君可自取, 取完后是留是去随意. @@ -258,203 +330,209 @@ Beauty\LaTeX{} 系列模板是由我所做的书籍模板系列, 名叫\textbf{B 以下是最小工作示例: \begin{lstlisting} - \documentclass[zihao=-4,fontset=windows]{Beautybook-CN} - \coverstyle={ % 封面键值列表 - cover-choose=cn, % cn (需新增项\entitle{#}); en ; enfig ; birkar - } - \mathstyle={ % 数学字体键值列表 - math-font=plain, %plain (默认数学字体); mtpro2 - } - \graphicspath{{E:/texlive/2023/texmf-dist/doc/latex/beautybook/}} % 这里改为您的texlive安装位置,记住 - %% 定义第一种定理 - \mynewtheorem{ - defi={\textbf{定义}}[section]{interior style={left color=ReD!8,right color=ReD!5!CyaN!50}, borderline west={1.5mm}{0mm}{ReD}}, - thm={\textbf{定理}}[section]{interior style={left color=CyaN!80!black!20,right color=CyaN!80!black!15!CyaN!50}, borderline west={1.5mm}{0mm}{CyaN!80!black}}, - lem={\textbf{引理}}[section]{interior style={left color=BluE!8,right color=BluE!5!CyaN!50}, borderline west={1.5mm}{0mm}{BluE}}, - prop={\textbf{命题}}[section]{interior style={left color=OrangE!8,right color=OrangE!5!CyaN!50}, borderline west={1.5mm}{0mm}{OrangE}}, - exam={\textbf{题}}[chapter]{interior style={left color=DarkGreen!8,right color=DarkGreen!5!CyaN!50}, borderline west={1.5mm}{0mm}{DarkGreen}}, - cor={\textbf{推论}}[chapter]{interior style={left color=violet!8,right color=violet!5!CyaN!50}, borderline west={1.5mm}{0mm}{violet}}, - } - \newtheorem*{remark}{\textbf{注}} - %% 定义第二种定理 - % overlay unbroken=\my@theorem@overlay@unbroken{\theorem@name\ \thetcbthm}{额外的选项} - % overlay first=\my@theorem@overlay@first{\theorem@name\ \thetcbthm}{额外的选项} - %% 用户接口区 - \definecolor{examback}{HTML}{e3e6e8} - \makeatletter - \mynewtcbtheorem{ - % 这个 theorem 是环境名 - theorem={ - counter=tcbthm, - the counter=\thesection.\arabic{tcbthm}, - name=定理, % 它保存到 \theorem@name 里 - thmcolor=高粱红, - autoref name=\bfseries 定理, - style={ - arc=3pt,breakable,enhanced,interior style={top color=高粱红!12 ,middle color=高粱红!9, bottom color=高粱红!6},boxrule=0pt,top=8mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 - opacityframe=0, opacityback=0.98, - fontupper=\itshape, step={tcbthm}, - before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@theorem@overlay@unbroken{\theorem@name\ \thetcbthm}{\theorem@thmcolor}, - overlay first=\my@theorem@overlay@first{\theorem@name\ \thetcbthm}{\theorem@thmcolor}, - overlay last=\my@theorem@overlay@last{\theorem@thmcolor}, - } - }, - proposition={ - counter=tcbprop, - the counter=\thesection.\arabic{tcbprop}, - autoref name=\bfseries 命题, - style={ - arc=3pt,breakable,enhanced,interior style={top color=高粱红!12 ,middle color=高粱红!9, bottom color=高粱红!6},boxrule=0pt,top=8mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 - opacityframe=0, opacityback=0.98, - fontupper=\itshape, step={tcbprop}, - before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@theorem@overlay@unbroken{命题\ \thetcbprop}{高粱红}, - overlay first=\my@theorem@overlay@first{命题\ \thetcbprop}{高粱红}, - overlay last=\my@theorem@overlay@last{高粱红}, - } - }, - definition={ - counter=tcbdefi, - the counter=\thesection.\arabic{tcbdefi}, - autoref name=\bfseries 定义, - style={ - arc=3pt,breakable,enhanced,interior style={top color=紫棠!12 ,middle color=紫棠!9, bottom color=紫棠!6},boxrule=0pt,top=8mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 - opacityframe=0, opacityback=0.98, - fontupper=\itshape, step={tcbdefi}, - before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@theorem@overlay@unbroken{定义\ \thetcbdefi}{紫棠}, - overlay first=\my@theorem@overlay@first{定义\ \thetcbdefi}{紫棠}, - overlay last=\my@theorem@overlay@last{紫棠}, - } - }, - lemma={ - counter=tcblem, - the counter=\thesection.\arabic{tcblem}, - name=引理, - lemcolor=靛蓝, - autoref name=\bfseries 引理, - style={ - arc=0mm,breakable,enhanced,interior style={top color=靛蓝!12 ,middle color=靛蓝!9, bottom color=靛蓝!6},arc=3pt,boxrule=0pt,top=7mm,bottom=5mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 - opacityframe=0, opacityback=0.98, - fontupper=\normalsize,step={tcblem}, - before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@lemma@overlay@unbroken{\lemma@name\ \thetcblem}{\lemma@lemcolor}, - overlay first=\my@lemma@overlay@first{\lemma@name\ \thetcblem}{\lemma@lemcolor}, - overlay last=\my@lemma@overlay@last{\lemma@lemcolor}, - } - }, - corollary={ - counter=tcbcor, - the counter=\thesection.\arabic{tcbcor}, - autoref name=\bfseries 推论, - style={ - arc=0mm,breakable,enhanced,interior style={top color=茶色!12 ,middle color=茶色!9, bottom color=茶色!6},arc=3pt,boxrule=0pt,top=7mm,bottom=5mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 - opacityframe=0, opacityback=0.98, - fontupper=\normalsize,step={tcbcor}, - before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@lemma@overlay@unbroken{推论\ \thetcbcor}{茶色}, - overlay first=\my@lemma@overlay@first{推论\ \thetcbcor}{茶色}, - overlay last=\my@lemma@overlay@last{茶色}, - } - }, - example={ - counter=tcbexam, - the counter=\thesection.\arabic{tcbexam}, - autoref name=\bfseries 例题, - style={ - arc=0mm,breakable,enhanced,interior style={top color=黛绿!12 ,middle color=黛绿!9, bottom color=黛绿!6},arc=3pt,boxrule=0pt,top=7mm,bottom=5mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 - opacityframe=0, opacityback=0.98, - fontupper=\normalsize,step={tcbexam}, - before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@lemma@overlay@unbroken{例题\ \thetcbexam}{黛绿}, - overlay first=\my@lemma@overlay@first{例题\ \thetcbexam}{黛绿}, - overlay last=\my@lemma@overlay@last{黛绿}, - } - }, - } - \makeatother - \begin{document} - \thispagestyle{empty} - \entitle{The introduction to Beautybook Template} % cncover专用 - \title{Beautybook 说明文档} - \subtitle{Beautybook 说明文档} - \edition{First Edition} - \bookseries{Illustrated by Ethan Lu} - \author{Ethan Lu} - \pressname{logo} - \presslogo{inner_pics/logo.png} - \coverimage{inner_pics/coverimage.jpg} % cncover专用 - %\coverimage{inner_pics/ivy-ge998908f8_1280.jpg} - \makecover % 封面生成命令 - - % 主题色调 - \definecolor{bg}{HTML}{e0e0e0} - \definecolor{fg}{HTML}{203A43} - \colorlet{outermarginbgcolor}{bg} - \colorlet{outermarginfgcolor}{fg} - \colorlet{framegolden}{fg} - \colorlet{framegray}{黛绿!5} - \chapoddimage{inner_pics/songodd.png} - \chapevenimage{inner_pics/songeven.png} - % - \thispagestyle{empty}\newpage % left blank - % - \frontmatter % 前置材料 - \pagenumbering{Roman} - % preface - \thispagestyle{empty} - \addcontentsline{toc}{chapter}{前言} - \chapter*{前言} - 怀着复杂的心情写下了这本不算是笔记的笔记,大差不离就是抄写本吧! - - - \hfill - \begin{tabular}{lr} - &----- 作者\\ - &2023年 01月 11日 - \end{tabular} - - \let\cleardoublepage\clearpage - % - \thispagestyle{empty} - \tableofcontents\let\cleardoublepage\clearpage % 目录 - - \mainmatter % 正文 - \pagenumbering{arabic} - \partimage{inner_pics/part.png} - \partabstract{\hspace*{2em} \textbf{Beautybook} 模板的使用说明,这里是每一个部分 (Part) 的简介区域, 您可以在此处书写下您对该部分的一个简明扼要的概述, 当然,倘若无话可说,此处可以留空.} - \part{\textbf{Beautybook} 模板使用说明} - - \chapter{Beautybook模板的简要介绍} - - - - {\normalem - \printbibliography[ - heading=bibintoc, - title={参考文献} - ] - \printindex - \thispagestyle{empty}} - %------------ 封底 ----------------% - \bottomimage{inner_pics/ivy-ge998908f8_1280.jpg} - %\ISBNcode{\EANisbn[ISBN=您的书对应的ISBN号]} % - \summary{封底信息} - \makebottomcover - \end{document} +\documentclass[zihao=-4,fontset=windows]{Beautybook-CN} +\coverstyle={ + cover-choose=enfig, % cn (en ; enfig ; birkar) +} +\mathstyle={ + math-font=plain, % plain; stix; mtpro2 +} +\usepackage{bm} +% \overfullrule=1pt +% \RequirePackage[fontsize=13.5pt]{fontsize} +%% First one +\mynewtheorem{ + defi={\textbf{Definition}}[section]{interior style={left color=ReD!8,right color=ReD!5!CyaN!50}, borderline west={1.5mm}{0mm}{ReD}}, + thm={\textbf{Theorem}}[section]{interior style={left color=CyaN!80!black!20,right color=CyaN!80!black!15!CyaN!50}, borderline west={1.5mm}{0mm}{CyaN!80!black}}, + lem={\textbf{Lemma}}[section]{interior style={left color=BluE!8,right color=BluE!5!CyaN!50}, borderline west={1.5mm}{0mm}{BluE}}, + prop={\textbf{Proposition}}[section]{interior style={left color=OrangE!8,right color=OrangE!5!CyaN!50}, borderline west={1.5mm}{0mm}{OrangE}}, + exam={\textbf{Example}}[chapter]{interior style={left color=DarkGreen!8,right color=DarkGreen!5!CyaN!50}, borderline west={1.5mm}{0mm}{DarkGreen}}, + cor={\textbf{Corollary}}[chapter]{interior style={left color=violet!8,right color=violet!5!CyaN!50}, borderline west={1.5mm}{0mm}{violet}}, +} +\newtheorem*{remark}{\textbf{Remark}} +%% Second one +\makeatletter +\mynewtcbtheorem{ + % Theorems + problem={ + counter=tcbprob, + the counter=\thesection.\arabic{tcbprob}, + name=Problem, + thmcolor=purple, + autoref name=\bfseries Problem, + style={ + arc=3pt,breakable,enhanced,interior style={top color=purple!9 ,middle color=purple!6, bottom color=purple!3},boxrule=0pt,top=8mm, + fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray}, + fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray}, + opacityframe=0, opacityback=0.98, + fontupper=\itshape, step={tcbprob}, + before pre=\smallskip, after app=\smallskip, + overlay unbroken=\my@theorem@overlay@unbroken{Problem\ \thetcbprob}{purple}, + overlay first=\my@theorem@overlay@first{Problem\ \thetcbprob}{purple}, + overlay last=\my@theorem@overlay@last{purple}, + } + }, + lemma={ + counter=tcblem, + the counter=\thesection.\arabic{tcblem}, + name=Lemma, + lemcolor=blue, + autoref name=\bfseries Lemma, + style={ + arc=0mm,breakable,enhanced,interior style={top color=blue!9 ,middle color=blue!6, bottom color=blue!3},arc=3pt,boxrule=0pt,top=6mm,bottom=5mm, + fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% + fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},% + opacityframe=0, opacityback=0.98, + fontupper=\itshape,step={tcblem}, + before pre=\smallskip, after app=\smallskip, + overlay unbroken=\my@lemma@overlay@unbroken{\lemma@name\ \thetcblem}{\lemma@lemcolor}, + overlay first=\my@lemma@overlay@first{\lemma@name\ \thetcblem}{\lemma@lemcolor}, + overlay last=\my@lemma@overlay@last{\lemma@lemcolor}, + } + }, +} +\makeatother +% + + +%% --------References +\RequirePackage[ +backend=biber, +style=numeric, +sorting=nty +]{biblatex} +\addbibresource{ref.bib} + +\indexsetup{level=\chapter*,noclearpage} +\makeindex[title={\sffamily References},columns=3,columnsep=15pt,columnseprule] +\makeindex + +\newcommand{\pr}{^\prime} +\newcommand{\prr}{^{\prime\prime}} +\newcommand{\bd}{\partial} +\newcommand{\bdd}{\overline{\partial}} +\newcommand{\Dif}[2]{\frac{\dd #1}{\dd #2}} +\newcommand{\Diff}[2][]{\frac{\partial #1}{\partial #2}} +\usepackage{shadowtext}\shadowoffset{.65pt} +\newcommand*{\circledd}[1]{\lower.7ex\hbox{\tikz\draw (0pt, 0pt)% + circle (.5em) node {\makebox[1em][c]{\small #1}};}} + \usepackage{listings} + \lstset{ + basicstyle=\small\ttfamily, + keywordstyle=\color{NavyBlue}, + commentstyle=\color{gray!50!black!50}, + stringstyle=\rmfamily\slshape\color{red}, + backgroundcolor=\color{gray!5}, + frame=leftline, + framerule=12pt,% + rulecolor=\color{gray!90}, + numbers=left, + numberstyle=\footnotesize\itshape, + firstnumber=1, + stepnumber=1, + numbersep=7pt, + aboveskip=.25em, + showspaces=false, + showstringspaces=false, + keepspaces=true, + showtabs=false, + tabsize=2, + captionpos=b, + flexiblecolumns=true, + breaklines=true, + breakatwhitespace=false, + breakautoindent=true, + breakindent=1em, + title=\lstname, + escapeinside=``, + xleftmargin=1em, xrightmargin=1em, + aboveskip=1ex, belowskip=1ex, + framextopmargin=1pt, framexbottommargin=1pt, + abovecaptionskip=-2pt,belowcaptionskip=3pt, + extendedchars=false, columns=flexible, mathescape=true, + texcl=true, + fontadjust + }% + +\begin{document} +\thispagestyle{empty} +\title{An Introduction to Beautybook template} +\subtitle{} +\edition{First Edition} +\bookseries{Illustrated by Ethan Lu} +\author{Ethan Lu} +\pressname{Springer} +\presslogo{inner_pics/logo.png} +\coverimage{inner_pics/coverimage.jpg}%ivy-ge998908f8_1280.jpg +\makecover + + +\definecolor{bg}{HTML}{e0e0e0} +\definecolor{fg}{HTML}{2c4f54} +\colorlet{outermarginbgcolor}{bg} +\colorlet{outermarginfgcolor}{fg} +\colorlet{framegolden}{fg} +\colorlet{framegray}{bg!50} + +\makeatletter +% set the contents of the outer margin on even and odd pages for scrheadings, plain and scth +\oddoutermargin{\sffamily Vanishing Theorems on Vector Bundles with Semidefinite Curvature} % Odd pages +\evenoutermargin{\sffamily\@title} % Even pages +% +\titleimage{ + chapteroddimage={odd1,odd2,odd3,odd4,odd5,odd6,odd7,odd8,odd9,odd10,odd11,odd12,odd13,odd14,odd15,mid1,mid2,mid3,mid4,mid5,mid6,mid7,mid8,mid9,mid10,mid11}, +% + partoddimage={odd1,odd2,odd3,odd4,odd5,odd6,odd7,odd8,odd9,odd10,odd11,odd12,odd13,odd14,odd15,mid1,mid2,mid3,mid4,mid5,mid6,mid7,mid8,mid9,mid10,mid11}, +% + chapterevenimage={songeven,even1,even2,even3,even4,mid1,mid2,mid3,mid4,mid5,mid6,mid7,mid8,mid9,mid10,mid11}, +% + partevenimage={songeven,even1,even2,even3,even4,mid1,mid2,mid3,mid4,mid5,mid6,mid7,mid8,mid9,mid10,mid11}, +} +\chapimage{\Beautybook@chapterimagename} % Changing automatically. +\partimage{\Beautybook@partimagename} % Changing automatically. +\makeatother +% +\frontmatter +\pagenumbering{Roman} + +{% Preface +\thispagestyle{empty} +% \addcontentsline{toc}{chapter}{Preface} +\chapter*{Preface} +Your words here. + + +\hfill +\begin{tabular}{lr} + &----- author\\ + & 2023-09-01 +\end{tabular} +\clearpage} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\thispagestyle{empty} +\tableofcontents\let\cleardoublepage\clearpage + + +\mainmatter +\pagenumbering{arabic} + +\partabstract{\hspace*{2em} Here is the introduction area of each part, where you can write a concise overview of the part, of course, if there is nothing to say, you can leave it blank.} +\part{The template usage introduction of \textbf{Beautybook}} + +\chapter{A short introduction of \textbf{Beautybook}} + +\section{Section} + +% your main contents here! + + +\printindex\thispagestyle{empty} +\bottomimage{inner_pics/coverimage.jpg} +\ISBNcode{\EANisbn[ISBN=978-80-7340-097-2]} % +\summary{Summary.} +\makebottomcover +\end{document} \end{lstlisting} \subsection{发行版安装与更新} diff --git a/macros/latex/contrib/beautybook/Beautybook-introduction-english.pdf b/macros/latex/contrib/beautybook/Beautybook-introduction-english.pdf Binary files differdeleted file mode 100644 index 70f45601b5..0000000000 --- a/macros/latex/contrib/beautybook/Beautybook-introduction-english.pdf +++ /dev/null diff --git a/macros/latex/contrib/beautybook/README.md b/macros/latex/contrib/beautybook/README.md index 212f066dc6..a420158115 100644 --- a/macros/latex/contrib/beautybook/README.md +++ b/macros/latex/contrib/beautybook/README.md @@ -17,7 +17,7 @@ If you are an English user, then please use a cls file with the "-EN" suffix and --- ## Version -Release 2023-06-27. +Release 2023-10-02. --- ## License diff --git a/macros/latex/contrib/beautybook/beautybook-en.pdf b/macros/latex/contrib/beautybook/beautybook-en.pdf Binary files differnew file mode 100644 index 0000000000..5529baec45 --- /dev/null +++ b/macros/latex/contrib/beautybook/beautybook-en.pdf diff --git a/macros/latex/contrib/beautybook/Beautybook-introduction-english.tex b/macros/latex/contrib/beautybook/beautybook-en.tex index 3cead1ad38..4d89fd12af 100644 --- a/macros/latex/contrib/beautybook/Beautybook-introduction-english.tex +++ b/macros/latex/contrib/beautybook/beautybook-en.tex @@ -1,14 +1,14 @@ -%% This work is released under the LaTeX Project Public License, v1.3c or later. -% This template is made by Ethan Lu. -% Please use pdfLaTeX engine! -\documentclass{Beautybook-EN} +\documentclass[12pt]{Beautybook-EN} \coverstyle={ - cover-choose=en, % cn (Need \entitle{#}); en ; enfig ; birkar + cover-choose=enfig, % cn (en ; enfig ; birkar) } \mathstyle={ - math-font=plain, % plain; mtpro2 + math-font=plain, % plain; stix; mtpro2 } -% +\usepackage{bm} +% \overfullrule=1pt +% \RequirePackage[fontsize=13.5pt]{fontsize} +%% First one \mynewtheorem{ defi={\textbf{Definition}}[section]{interior style={left color=ReD!8,right color=ReD!5!CyaN!50}, borderline west={1.5mm}{0mm}{ReD}}, thm={\textbf{Theorem}}[section]{interior style={left color=CyaN!80!black!20,right color=CyaN!80!black!15!CyaN!50}, borderline west={1.5mm}{0mm}{CyaN!80!black}}, @@ -18,70 +18,40 @@ cor={\textbf{Corollary}}[chapter]{interior style={left color=violet!8,right color=violet!5!CyaN!50}, borderline west={1.5mm}{0mm}{violet}}, } \newtheorem*{remark}{\textbf{Remark}} +%% Second one \makeatletter \mynewtcbtheorem{ - theorem={ - counter=tcbthm, - the counter=\thesection.\arabic{tcbthm}, - name=Theorem, - thmcolor=purple, - autoref name=\bfseries Theorem, - style={ - arc=3pt,breakable,enhanced,interior style={top color=purple!12 ,middle color=purple!9, bottom color=purple!6},boxrule=0pt,top=8mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% up - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},% down - opacityframe=0, opacityback=0.98, - fontupper=\itshape, step={tcbthm}, - before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@theorem@overlay@unbroken{\theorem@name\ \thetcbthm}{\theorem@thmcolor}, - overlay first=\my@theorem@overlay@first{\theorem@name\ \thetcbthm}{\theorem@thmcolor}, - overlay last=\my@theorem@overlay@last, - } - }, - proposition={ - counter=tcbprop, - the counter=\thesection.\arabic{tcbprop}, - autoref name=\bfseries Proposition, - style={ - arc=3pt,breakable,enhanced,interior style={top color=purple!12 ,middle color=purple!9, bottom color=purple!6},boxrule=0pt,top=8mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray}, - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray}, - opacityframe=0, opacityback=0.98, - fontupper=\itshape, step={tcbprop}, - before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@theorem@overlay@unbroken{Proposition\ \thetcbprop}{purple}, - overlay first=\my@theorem@overlay@first{Proposition\ \thetcbprop}{purple}, - overlay last=\my@theorem@overlay@last{purple}, - } - }, - definition={ - counter=tcbdefi, - the counter=\thesection.\arabic{tcbdefi}, - autoref name=\bfseries Definition, + % 这个 theorem 是环境名 + problem={ + counter=tcbprob, + the counter=\thesection.\arabic{tcbprob}, + name=Problem, % 它保存到 \theorem@name 里 + thmcolor=绛紫, + autoref name=\bfseries Problem, style={ - arc=3pt,breakable,enhanced,interior style={top color=blue!12 ,middle color=blue!9, bottom color=blue!6},boxrule=0pt,top=8mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray}, - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray}, + arc=3pt,breakable,enhanced,interior style={top color=绛紫!9 ,middle color=绛紫!6, bottom color=绛紫!3},boxrule=0pt,top=8mm, + fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 + fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 opacityframe=0, opacityback=0.98, - fontupper=\itshape, step={tcbdefi}, + fontupper=\itshape, step={tcbprob}, before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@theorem@overlay@unbroken{Definition\ \thetcbdefi}{blue}, - overlay first=\my@theorem@overlay@first{Definition\ \thetcbdefi}{blue}, - overlay last=\my@theorem@overlay@last{blue}, + overlay unbroken=\my@theorem@overlay@unbroken{Problem\ \thetcbprob}{绛紫}, + overlay first=\my@theorem@overlay@first{Problem\ \thetcbprob}{绛紫}, + overlay last=\my@theorem@overlay@last{绛紫}, } }, lemma={ counter=tcblem, the counter=\thesection.\arabic{tcblem}, name=Lemma, - lemcolor=DarkCyan, + lemcolor=靛蓝, autoref name=\bfseries Lemma, style={ - arc=0mm,breakable,enhanced,interior style={top color=DarkCyan!12 ,middle color=DarkCyan!9, bottom color=DarkCyan!6},arc=3pt,boxrule=0pt,top=7mm,bottom=5mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray}, - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray}, + arc=0mm,breakable,enhanced,interior style={top color=靛蓝!9 ,middle color=靛蓝!6, bottom color=靛蓝!3},arc=3pt,boxrule=0pt,top=6mm,bottom=5mm, + fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 + fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 opacityframe=0, opacityback=0.98, - fontupper=\normalsize,step={tcblem}, + fontupper=\itshape,step={tcblem}, before pre=\smallskip, after app=\smallskip, overlay unbroken=\my@lemma@overlay@unbroken{\lemma@name\ \thetcblem}{\lemma@lemcolor}, overlay first=\my@lemma@overlay@first{\lemma@name\ \thetcblem}{\lemma@lemcolor}, @@ -93,15 +63,47 @@ the counter=\thesection.\arabic{tcbcor}, autoref name=\bfseries Corollary, style={ - arc=0mm,breakable,enhanced,interior style={top color=orange!12 ,middle color=orange!9, bottom color=orange!6},arc=3pt,boxrule=0pt,top=7mm,bottom=5mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray}, - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray}, + arc=0mm,breakable,enhanced,interior style={top color=茶色!9 ,middle color=茶色!6, bottom color=茶色!3},arc=3pt,boxrule=0pt,top=6mm,bottom=5mm, + fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 + fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 + opacityframe=0, opacityback=0.98, + fontupper=\itshape,step={tcbcor}, + before pre=\smallskip, after app=\smallskip, + overlay unbroken=\my@lemma@overlay@unbroken{Corollary\ \thetcbcor}{茶色}, + overlay first=\my@lemma@overlay@first{Corollary\ \thetcbcor}{茶色}, + overlay last=\my@lemma@overlay@last{茶色}, + } + }, + proposition={ + counter=tcbprop, + the counter=\thesection.\arabic{tcbprop}, + autoref name=\bfseries Proposition, + style={ + arc=0mm,breakable,enhanced,interior style={top color=黛绿!9 ,middle color=黛绿!6, bottom color=黛绿!3},arc=3pt,boxrule=0pt,top=6mm,bottom=5mm, + fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 + fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 opacityframe=0, opacityback=0.98, - fontupper=\normalsize,step={tcbcor}, + fontupper=\itshape,step={tcbprop}, before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@lemma@overlay@unbroken{Corollary\ \thetcbcor}{orange}, - overlay first=\my@lemma@overlay@first{Corollary\ \thetcbcor}{orange}, - overlay last=\my@lemma@overlay@last{orange}, + overlay unbroken=\my@lemma@overlay@unbroken{Proposition\ \thetcbprop}{黛绿}, + overlay first=\my@lemma@overlay@first{Proposition\ \thetcbprop}{黛绿}, + overlay last=\my@lemma@overlay@last{黛绿}, + } + }, + definition={ + counter=tcbdefi, + the counter=\thesection.\arabic{tcbdefi}, + autoref name=\bfseries Definition, + style={ + arc=0mm,breakable,enhanced,interior style={top color=茜色!9 ,middle color=茜色!6, bottom color=茜色!3},arc=3pt,boxrule=0pt,top=6mm,bottom=5mm, + fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 + fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 + opacityframe=0, opacityback=0.98, + fontupper=\normalsize,step={tcbdefi}, + before pre=\smallskip, after app=\smallskip, + overlay unbroken=\my@lemma@overlay@unbroken{Definition\ \thetcbdefi}{茜色}, + overlay first=\my@lemma@overlay@first{Definition\ \thetcbdefi}{茜色}, + overlay last=\my@lemma@overlay@last{茜色}, } }, example={ @@ -109,15 +111,15 @@ the counter=\thesection.\arabic{tcbexam}, autoref name=\bfseries Example, style={ - arc=0mm,breakable,enhanced,interior style={top color=cyan!12 ,middle color=cyan!9, bottom color=cyan!6},arc=3pt,boxrule=0pt,top=7mm,bottom=5mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray}, - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray}, + arc=0mm,breakable,enhanced,interior style={top color=黛绿!9 ,middle color=黛绿!6, bottom color=黛绿!3},arc=3pt,boxrule=0pt,top=6mm,bottom=5mm, + fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 + fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 opacityframe=0, opacityback=0.98, fontupper=\normalsize,step={tcbexam}, before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@lemma@overlay@unbroken{Example\ \thetcbexam}{cyan}, - overlay first=\my@lemma@overlay@first{Example\ \thetcbexam}{cyan}, - overlay last=\my@lemma@overlay@last{cyan}, + overlay unbroken=\my@lemma@overlay@unbroken{Example\ \thetcbexam}{黛绿}, + overlay first=\my@lemma@overlay@first{Example\ \thetcbexam}{黛绿}, + overlay last=\my@lemma@overlay@last{黛绿}, } }, Exercise={ @@ -125,104 +127,170 @@ the counter=\thechapter.\arabic{tcbexer}, autoref name=\bfseries Exercise, style={ - arc=0mm,breakable,enhanced,interior style={top color=red!12 ,middle color=red!9, bottom color=red!6},arc=3pt,boxrule=0pt,top=7mm,bottom=5mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray}, - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray}, + arc=0mm,breakable,enhanced,interior style={top color=绛紫!9 ,middle color=绛紫!6, bottom color=绛紫!3},arc=3pt,boxrule=0pt,top=6mm,bottom=5mm, + fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 + fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 opacityframe=0, opacityback=0.9, fontupper=\normalsize,step={tcbexer}, before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@lemma@overlay@unbroken{Exercise\ \thetcbexer}{red}, - overlay first=\my@lemma@overlay@first{Exercise\ \thetcbexer}{red}, - overlay last=\my@lemma@overlay@last{red}, + overlay unbroken=\my@lemma@overlay@unbroken{Exercise\ \thetcbexer}{绛紫}, + overlay first=\my@lemma@overlay@first{Exercise\ \thetcbexer}{绛紫}, + overlay last=\my@lemma@overlay@last{绛紫}, + } + }, + theorem={ + counter=tcbthm, + the counter=\thesection.\arabic{tcbthm}, + autoref name=\bfseries Theorem, + style={ + arc=0mm,breakable,enhanced,interior style={top color=黛绿!9 ,middle color=黛绿!6, bottom color=黛绿!3},arc=3pt,boxrule=0pt,top=6mm,bottom=5mm, + fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 + fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 + opacityframe=0, opacityback=0.98, + fontupper=\itshape,step={tcbthm}, + before pre=\smallskip, after app=\smallskip, + overlay unbroken=\my@lemma@overlay@unbroken{Theorem\ \thetcbthm}{黛绿}, + overlay first=\my@lemma@overlay@first{Theorem\ \thetcbthm}{黛绿}, + overlay last=\my@lemma@overlay@last{黛绿}, + } + }, + conjecture={ + counter=tcbconj, + the counter=\thesection.\arabic{tcbconj}, + name=Conjecture, + lemcolor=靛蓝, + autoref name=\bfseries Conjecture, + style={ + arc=0mm,breakable,enhanced,interior style={top color=靛蓝!9 ,middle color=靛蓝!6, bottom color=靛蓝!3},arc=3pt,boxrule=0pt,top=6mm,bottom=5mm, + fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% 上 + fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},%下 + opacityframe=0, opacityback=0.98, + fontupper=\itshape,step={tcbconj}, + before pre=\smallskip, after app=\smallskip, + overlay unbroken=\my@lemma@overlay@unbroken{Conjecture\ \thetcblem}{靛蓝}, + overlay first=\my@lemma@overlay@first{Conjecture\ \thetcblem}{靛蓝}, + overlay last=\my@lemma@overlay@last{靛蓝}, } }, } \makeatother % -% \newenvironment{note}[1][\bf Note:]{\par\Line\uuline{#1} }{\par\Line} -% \renewcommand{\Line}{\noindent\tikz\draw[line width=0.65pt,gray!80,dashed] (0,0)--++(.99\linewidth,0);\par} -% % \newcommand{\Wedge}[1][]{\tikz\path [draw,line width=1pt] (0,0)--++(4pt,12pt) node[right,font=\scriptsize] {#1} --++(4pt,-12pt);} -% \newenvironment{key}[1]{\begin{fancybox}{#1}\ }{\end{fancybox}} -% \newcommand{\pr}{^\prime} -% \newcommand{\prr}{^{\prime\prime}} -% \newcommand{\itbf}[1]{\textit{\textbf{#1}}} -\usepackage{listings} -\lstset{ - basicstyle=\small\ttfamily, - keywordstyle=\color{NavyBlue}, - commentstyle=\color{gray!50!black!50}, - stringstyle=\rmfamily\slshape\color{red}, - backgroundcolor=\color{gray!5}, - frame=leftline, - framerule=12pt,% - rulecolor=\color{gray!90}, - numbers=left, - numberstyle=\footnotesize\itshape, - firstnumber=1, - stepnumber=1, - numbersep=7pt, - aboveskip=.25em, - showspaces=false, - showstringspaces=false, - keepspaces=true, - showtabs=false, - tabsize=2, - captionpos=b, - flexiblecolumns=true, - breaklines=true, - breakatwhitespace=false, - breakautoindent=true, - breakindent=1em, - title=\lstname, - escapeinside=``, - xleftmargin=1em, xrightmargin=1em, - aboveskip=1ex, belowskip=1ex, - framextopmargin=1pt, framexbottommargin=1pt, - abovecaptionskip=-2pt,belowcaptionskip=3pt, - extendedchars=false, columns=flexible, mathescape=true, - texcl=true, - fontadjust -}% + + +%% --------参考文献 +\RequirePackage[ +backend=biber, +style=numeric, +sorting=nty +]{biblatex} +\addbibresource{ref.bib} + +\indexsetup{level=\chapter*,noclearpage} +\makeindex[title={\sffamily References},columns=3,columnsep=15pt,columnseprule] +\makeindex + +\newcommand{\pr}{^\prime} +\newcommand{\prr}{^{\prime\prime}} +\newcommand{\bd}{\partial} +\newcommand{\bdd}{\overline{\partial}} +\newcommand{\Dif}[2]{\frac{\dd #1}{\dd #2}} +\newcommand{\Diff}[2][]{\frac{\partial #1}{\partial #2}} +\usepackage{shadowtext}\shadowoffset{.65pt} +\newcommand*{\circledd}[1]{\lower.7ex\hbox{\tikz\draw (0pt, 0pt)% + circle (.5em) node {\makebox[1em][c]{\small #1}};}} + \usepackage{listings} + \lstset{ + basicstyle=\small\ttfamily, + keywordstyle=\color{NavyBlue}, + commentstyle=\color{gray!50!black!50}, + stringstyle=\rmfamily\slshape\color{red}, + backgroundcolor=\color{gray!5}, + frame=leftline, + framerule=0.5pt,rulecolor=\color{gray!80}, + numbers=left, + numberstyle=\footnotesize, + firstnumber=1, + stepnumber=1, + numbersep=7pt, + aboveskip=.25em, + showspaces=false, + showstringspaces=false, + keepspaces=true, + showtabs=false, + tabsize=2, + captionpos=b, + flexiblecolumns=true, + breaklines=true, + breakatwhitespace=false, + breakautoindent=true, + breakindent=1em, + title=\lstname, + escapeinside=``, + xleftmargin=1em, xrightmargin=1em, + aboveskip=1ex, belowskip=1ex, + framextopmargin=1pt, framexbottommargin=1pt, + abovecaptionskip=-2pt,belowcaptionskip=3pt, + extendedchars=false, columns=flexible, mathescape=true, + texcl=true, + fontadjust + }% \begin{document} -%------------ Cover ----------------% \thispagestyle{empty} \title{An Introduction to Beautybook template} \subtitle{} \edition{First Edition} \bookseries{Illustrated by Ethan Lu} \author{Ethan Lu} -\pressname{logo} +\pressname{Beautybook} \presslogo{inner_pics/logo.png} -\coverimage{inner_pics/ivy-ge998908f8_1280.jpg} +\coverimage{inner_pics/coverimage.jpg}%ivy-ge998908f8_1280.jpg \makecover -% Theme color + + \definecolor{bg}{HTML}{e0e0e0} -\definecolor{fg}{HTML}{203A43} +\definecolor{fg}{HTML}{2c4f54} \colorlet{outermarginbgcolor}{bg} \colorlet{outermarginfgcolor}{fg} \colorlet{framegolden}{fg} \colorlet{framegray}{bg!50} -\chapoddimage{inner_pics/songodd.png} -\chapevenimage{inner_pics/songeven.png} + +\makeatletter +% set the contents of the outer margin on even and odd pages for scrheadings, plain and scth +\oddoutermargin{\sffamily Vanishing Theorems on Vector Bundles with Semidefinite Curvature} % Odd 奇数页 +\evenoutermargin{\sffamily\@title} % Even 偶数页 +% +\titleimage{ + chapteroddimage={odd1,odd2,odd3,odd4,odd5,odd6,odd7,odd8,odd9,odd10,odd11,odd12,odd13,odd14,odd15,mid1,mid2,mid3,mid4,mid5,mid6,mid7,mid8,mid9,mid10,mid11}, +% + partoddimage={odd1,odd2,odd3,odd4,odd5,odd6,odd7,odd8,odd9,odd10,odd11,odd12,odd13,odd14,odd15,mid1,mid2,mid3,mid4,mid5,mid6,mid7,mid8,mid9,mid10,mid11}, +% + chapterevenimage={songeven,even1,even2,even3,even4,mid1,mid2,mid3,mid4,mid5,mid6,mid7,mid8,mid9,mid10,mid11}, +% + partevenimage={songeven,even1,even2,even3,even4,mid1,mid2,mid3,mid4,mid5,mid6,mid7,mid8,mid9,mid10,mid11}, +} +\chapimage{\Beautybook@chapterimagename} % 会自动改变 +\partimage{\Beautybook@partimagename} % 会自动改变 +\makeatother % -\thispagestyle{empty}\newpage % left blank \frontmatter \pagenumbering{Roman} -% preface + +{% Preface \thispagestyle{empty} -\addcontentsline{toc}{chapter}{Preface} +% \addcontentsline{toc}{chapter}{Preface} \chapter*{Preface} -As my first english book, i'm happy. +In this note, we obtain a logarithmic vanishing theorem on certain weakly pseudoconvex K\"ahler manifolds. It is a generalization of Norimatsu's result on compact K\"ahler manifolds. As a direct corollary, we obtain relative vanishing theorems of certain direct image sheaves. + \hfill \begin{tabular}{lr} &----- Ethan Lu\\ - &2023-01-11 + &2023-09-01 \end{tabular} +\clearpage} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\let\cleardoublepage\clearpage -% \thispagestyle{empty} \tableofcontents\let\cleardoublepage\clearpage @@ -230,11 +298,13 @@ As my first english book, i'm happy. \mainmatter \pagenumbering{arabic} -\partimage{inner_pics/part.png} \partabstract{\hspace*{2em} Here is the introduction area of each part, where you can write a concise overview of the part, of course, if there is nothing to say, you can leave it blank.} \part{The template usage introduction of \textbf{Beautybook}} + \chapter{A short introduction of \textbf{Beautybook}} +\section{Introduction} + The Beauty\LaTeX{} collection is a series of templates authored by a humble, unknown individual. In fact, there are only two series, one is the custom book template \textbf{fancybook } , which is dedicated to the fresh and elegant style, the other is my flagship product-\textbf{ Beautybook } ! Why did I choose such an unusual name? My answer is, originally I wanted to name it elegantboook, but there is already the famous elegantbook template. Inspired by the old poem "There is a jade-like beauty waiting for you in the book", the template is named ``Beautybook", which means a beautiful woman in your arms and the fragrance of a book overflowing! Therefore, this is the origin of the name \textbf{Beautybook } ! @@ -268,189 +338,186 @@ To install locally, follow these steps: download the latest version from GitHub, The following is an example of a minimal work: \begin{lstlisting} - \documentclass{Beautybook-EN} - \coverstyle={ - cover-choose=en, % cn (Need \entitle{#}); en ; enfig ; birkar - } - \mathstyle={ - math-font=plain, % plain; mtpro2 - } -\graphicspath{{E:/texlive/2023/texmf-dist/doc/latex/beautybook/}} % You must change it to your texlive installation address!! +\documentclass[12pt]{Beautybook-EN} +\coverstyle={ + cover-choose=enfig, % cn (en ; enfig ; birkar) +} +\mathstyle={ + math-font=plain, % plain; stix; mtpro2 +} +\usepackage{bm} +% \overfullrule=1pt +% \RequirePackage[fontsize=13.5pt]{fontsize} +%% First one +\mynewtheorem{ + defi={\textbf{Definition}}[section]{interior style={left color=ReD!8,right color=ReD!5!CyaN!50}, borderline west={1.5mm}{0mm}{ReD}}, + thm={\textbf{Theorem}}[section]{interior style={left color=CyaN!80!black!20,right color=CyaN!80!black!15!CyaN!50}, borderline west={1.5mm}{0mm}{CyaN!80!black}}, + lem={\textbf{Lemma}}[section]{interior style={left color=BluE!8,right color=BluE!5!CyaN!50}, borderline west={1.5mm}{0mm}{BluE}}, + prop={\textbf{Proposition}}[section]{interior style={left color=OrangE!8,right color=OrangE!5!CyaN!50}, borderline west={1.5mm}{0mm}{OrangE}}, + exam={\textbf{Example}}[chapter]{interior style={left color=DarkGreen!8,right color=DarkGreen!5!CyaN!50}, borderline west={1.5mm}{0mm}{DarkGreen}}, + cor={\textbf{Corollary}}[chapter]{interior style={left color=violet!8,right color=violet!5!CyaN!50}, borderline west={1.5mm}{0mm}{violet}}, +} +\newtheorem*{remark}{\textbf{Remark}} +%% Second one +\makeatletter +\mynewtcbtheorem{ + % Theorems + problem={ + counter=tcbprob, + the counter=\thesection.\arabic{tcbprob}, + name=Problem, + thmcolor=purple, + autoref name=\bfseries Problem, + style={ + arc=3pt,breakable,enhanced,interior style={top color=purple!9 ,middle color=purple!6, bottom color=purple!3},boxrule=0pt,top=8mm, + fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray}, + fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray}, + opacityframe=0, opacityback=0.98, + fontupper=\itshape, step={tcbprob}, + before pre=\smallskip, after app=\smallskip, + overlay unbroken=\my@theorem@overlay@unbroken{Problem\ \thetcbprob}{purple}, + overlay first=\my@theorem@overlay@first{Problem\ \thetcbprob}{purple}, + overlay last=\my@theorem@overlay@last{purple}, + } + }, + lemma={ + counter=tcblem, + the counter=\thesection.\arabic{tcblem}, + name=Lemma, + lemcolor=blue, + autoref name=\bfseries Lemma, + style={ + arc=0mm,breakable,enhanced,interior style={top color=blue!9 ,middle color=blue!6, bottom color=blue!3},arc=3pt,boxrule=0pt,top=6mm,bottom=5mm, + fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% + fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},% + opacityframe=0, opacityback=0.98, + fontupper=\itshape,step={tcblem}, + before pre=\smallskip, after app=\smallskip, + overlay unbroken=\my@lemma@overlay@unbroken{\lemma@name\ \thetcblem}{\lemma@lemcolor}, + overlay first=\my@lemma@overlay@first{\lemma@name\ \thetcblem}{\lemma@lemcolor}, + overlay last=\my@lemma@overlay@last{\lemma@lemcolor}, + } + }, +} +\makeatother % - \mynewtheorem{ - defi={\textbf{Definition}}[section]{interior style={left color=ReD!8,right color=ReD!5!CyaN!50}, borderline west={1.5mm}{0mm}{ReD}}, - thm={\textbf{Theorem}}[section]{interior style={left color=CyaN!80!black!20,right color=CyaN!80!black!15!CyaN!50}, borderline west={1.5mm}{0mm}{CyaN!80!black}}, - lem={\textbf{Lemma}}[section]{interior style={left color=BluE!8,right color=BluE!5!CyaN!50}, borderline west={1.5mm}{0mm}{BluE}}, - prop={\textbf{Proposition}}[section]{interior style={left color=OrangE!8,right color=OrangE!5!CyaN!50}, borderline west={1.5mm}{0mm}{OrangE}}, - exam={\textbf{Example}}[chapter]{interior style={left color=DarkGreen!8,right color=DarkGreen!5!CyaN!50}, borderline west={1.5mm}{0mm}{DarkGreen}}, - cor={\textbf{Corollary}}[chapter]{interior style={left color=violet!8,right color=violet!5!CyaN!50}, borderline west={1.5mm}{0mm}{violet}}, - } - \newtheorem*{remark}{\textbf{Remark}} - \makeatletter - \mynewtcbtheorem{ - theorem={ - counter=tcbthm, - the counter=\thesection.\arabic{tcbthm}, - name=Theorem, - thmcolor=purple, - autoref name=\bfseries Theorem, - style={ - arc=3pt,breakable,enhanced,interior style={top color=purple!12 ,middle color=purple!9, bottom color=purple!6},boxrule=0pt,top=8mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray},% up - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray},% down - opacityframe=0, opacityback=0.98, - fontupper=\itshape, step={tcbthm}, - before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@theorem@overlay@unbroken{\theorem@name\ \thetcbthm}{\theorem@thmcolor}, - overlay first=\my@theorem@overlay@first{\theorem@name\ \thetcbthm}{\theorem@thmcolor}, - overlay last=\my@theorem@overlay@last, - } - }, - proposition={ - counter=tcbprop, - the counter=\thesection.\arabic{tcbprop}, - autoref name=\bfseries Proposition, - style={ - arc=3pt,breakable,enhanced,interior style={top color=purple!12 ,middle color=purple!9, bottom color=purple!6},boxrule=0pt,top=8mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray}, - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray}, - opacityframe=0, opacityback=0.98, - fontupper=\itshape, step={tcbprop}, - before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@theorem@overlay@unbroken{Proposition\ \thetcbprop}{purple}, - overlay first=\my@theorem@overlay@first{Proposition\ \thetcbprop}{purple}, - overlay last=\my@theorem@overlay@last{purple}, - } - }, - definition={ - counter=tcbdefi, - the counter=\thesection.\arabic{tcbdefi}, - autoref name=\bfseries Definition, - style={ - arc=3pt,breakable,enhanced,interior style={top color=blue!12 ,middle color=blue!9, bottom color=blue!6},boxrule=0pt,top=8mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray}, - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray}, - opacityframe=0, opacityback=0.98, - fontupper=\itshape, step={tcbdefi}, - before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@theorem@overlay@unbroken{Definition\ \thetcbdefi}{blue}, - overlay first=\my@theorem@overlay@first{Definition\ \thetcbdefi}{blue}, - overlay last=\my@theorem@overlay@last{blue}, - } - }, - lemma={ - counter=tcblem, - the counter=\thesection.\arabic{tcblem}, - name=Lemma, - lemcolor=DarkCyan, - autoref name=\bfseries Lemma, - style={ - arc=0mm,breakable,enhanced,interior style={top color=DarkCyan!12 ,middle color=DarkCyan!9, bottom color=DarkCyan!6},arc=3pt,boxrule=0pt,top=7mm,bottom=5mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray}, - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray}, - opacityframe=0, opacityback=0.98, - fontupper=\normalsize,step={tcblem}, - before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@lemma@overlay@unbroken{\lemma@name\ \thetcblem}{\lemma@lemcolor}, - overlay first=\my@lemma@overlay@first{\lemma@name\ \thetcblem}{\lemma@lemcolor}, - overlay last=\my@lemma@overlay@last{\lemma@lemcolor}, - } - }, - corollary={ - counter=tcbcor, - the counter=\thesection.\arabic{tcbcor}, - autoref name=\bfseries Corollary, - style={ - arc=0mm,breakable,enhanced,interior style={top color=orange!12 ,middle color=orange!9, bottom color=orange!6},arc=3pt,boxrule=0pt,top=7mm,bottom=5mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray}, - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray}, - opacityframe=0, opacityback=0.98, - fontupper=\normalsize,step={tcbcor}, - before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@lemma@overlay@unbroken{Corollary\ \thetcbcor}{orange}, - overlay first=\my@lemma@overlay@first{Corollary\ \thetcbcor}{orange}, - overlay last=\my@lemma@overlay@last{orange}, - } - }, - example={ - counter=tcbexam, - the counter=\thesection.\arabic{tcbexam}, - autoref name=\bfseries Example, - style={ - arc=0mm,breakable,enhanced,interior style={top color=cyan!12 ,middle color=cyan!9, bottom color=cyan!6},arc=3pt,boxrule=0pt,top=7mm,bottom=5mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray}, - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray}, - opacityframe=0, opacityback=0.98, - fontupper=\normalsize,step={tcbexam}, - before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@lemma@overlay@unbroken{Example\ \thetcbexam}{cyan}, - overlay first=\my@lemma@overlay@first{Example\ \thetcbexam}{cyan}, - overlay last=\my@lemma@overlay@last{cyan}, - } - }, - Exercise={ - counter=tcbexer, - the counter=\thechapter.\arabic{tcbexer}, - autoref name=\bfseries Exercise, - style={ - arc=0mm,breakable,enhanced,interior style={top color=red!12 ,middle color=red!9, bottom color=red!6},arc=3pt,boxrule=0pt,top=7mm,bottom=5mm, - fuzzy shadow={-0.6mm}{0.6mm}{0mm}{0.3mm}{white!50!gray}, - fuzzy shadow={0.6mm}{-0.6mm}{0mm}{0.3mm}{fill=white!40!gray}, - opacityframe=0, opacityback=0.9, - fontupper=\normalsize,step={tcbexer}, - before pre=\smallskip, after app=\smallskip, - overlay unbroken=\my@lemma@overlay@unbroken{Exercise\ \thetcbexer}{red}, - overlay first=\my@lemma@overlay@first{Exercise\ \thetcbexer}{red}, - overlay last=\my@lemma@overlay@last{red}, - } - }, - } - \makeatother - % - + + +%% --------References +\RequirePackage[ +backend=biber, +style=numeric, +sorting=nty +]{biblatex} +\addbibresource{ref.bib} + +\indexsetup{level=\chapter*,noclearpage} +\makeindex[title={\sffamily References},columns=3,columnsep=15pt,columnseprule] +\makeindex + +\newcommand{\pr}{^\prime} +\newcommand{\prr}{^{\prime\prime}} +\newcommand{\bd}{\partial} +\newcommand{\bdd}{\overline{\partial}} +\newcommand{\Dif}[2]{\frac{\dd #1}{\dd #2}} +\newcommand{\Diff}[2][]{\frac{\partial #1}{\partial #2}} +\usepackage{shadowtext}\shadowoffset{.65pt} +\newcommand*{\circledd}[1]{\lower.7ex\hbox{\tikz\draw (0pt, 0pt)% + circle (.5em) node {\makebox[1em][c]{\small #1}};}} + \usepackage{listings} + \lstset{ + basicstyle=\small\ttfamily, + keywordstyle=\color{NavyBlue}, + commentstyle=\color{gray!50!black!50}, + stringstyle=\rmfamily\slshape\color{red}, + backgroundcolor=\color{gray!5}, + frame=leftline, + framerule=12pt,% + rulecolor=\color{gray!90}, + numbers=left, + numberstyle=\footnotesize\itshape, + firstnumber=1, + stepnumber=1, + numbersep=7pt, + aboveskip=.25em, + showspaces=false, + showstringspaces=false, + keepspaces=true, + showtabs=false, + tabsize=2, + captionpos=b, + flexiblecolumns=true, + breaklines=true, + breakatwhitespace=false, + breakautoindent=true, + breakindent=1em, + title=\lstname, + escapeinside=``, + xleftmargin=1em, xrightmargin=1em, + aboveskip=1ex, belowskip=1ex, + framextopmargin=1pt, framexbottommargin=1pt, + abovecaptionskip=-2pt,belowcaptionskip=3pt, + extendedchars=false, columns=flexible, mathescape=true, + texcl=true, + fontadjust + }% + \begin{document} -%------------ Cover ----------------% \thispagestyle{empty} \title{An Introduction to Beautybook template} \subtitle{} \edition{First Edition} \bookseries{Illustrated by Ethan Lu} \author{Ethan Lu} -\pressname{logo} +\pressname{Springer} \presslogo{inner_pics/logo.png} -\coverimage{inner_pics/ivy-ge998908f8_1280.jpg} +\coverimage{inner_pics/coverimage.jpg}%ivy-ge998908f8_1280.jpg \makecover -% Theme color + + \definecolor{bg}{HTML}{e0e0e0} -\definecolor{fg}{HTML}{203A43} +\definecolor{fg}{HTML}{2c4f54} \colorlet{outermarginbgcolor}{bg} \colorlet{outermarginfgcolor}{fg} \colorlet{framegolden}{fg} \colorlet{framegray}{bg!50} -\chapoddimage{inner_pics/songodd.png} -\chapevenimage{inner_pics/songeven.png} + +\makeatletter +% set the contents of the outer margin on even and odd pages for scrheadings, plain and scth +\oddoutermargin{\sffamily Vanishing Theorems on Vector Bundles with Semidefinite Curvature} % Odd pages +\evenoutermargin{\sffamily\@title} % Even pages +% +\titleimage{ + chapteroddimage={odd1,odd2,odd3,odd4,odd5,odd6,odd7,odd8,odd9,odd10,odd11,odd12,odd13,odd14,odd15,mid1,mid2,mid3,mid4,mid5,mid6,mid7,mid8,mid9,mid10,mid11}, +% + partoddimage={odd1,odd2,odd3,odd4,odd5,odd6,odd7,odd8,odd9,odd10,odd11,odd12,odd13,odd14,odd15,mid1,mid2,mid3,mid4,mid5,mid6,mid7,mid8,mid9,mid10,mid11}, +% + chapterevenimage={songeven,even1,even2,even3,even4,mid1,mid2,mid3,mid4,mid5,mid6,mid7,mid8,mid9,mid10,mid11}, +% + partevenimage={songeven,even1,even2,even3,even4,mid1,mid2,mid3,mid4,mid5,mid6,mid7,mid8,mid9,mid10,mid11}, +} +\chapimage{\Beautybook@chapterimagename} % Changing automatically. +\partimage{\Beautybook@partimagename} % Changing automatically. +\makeatother % -\thispagestyle{empty}\newpage % left blank \frontmatter \pagenumbering{Roman} -% preface + +{% Preface \thispagestyle{empty} -\addcontentsline{toc}{chapter}{Preface} +% \addcontentsline{toc}{chapter}{Preface} \chapter*{Preface} -As my first english book, i'm happy. +Your words here. + \hfill \begin{tabular}{lr} - &----- Ethan Lu\\ - &2023-01-11 + &----- author\\ + & 2023-09-01 \end{tabular} +\clearpage} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\begin{center} - \vfill - \thepage -\end{center} -\let\cleardoublepage\clearpage -% \thispagestyle{empty} \tableofcontents\let\cleardoublepage\clearpage @@ -458,22 +525,20 @@ As my first english book, i'm happy. \mainmatter \pagenumbering{arabic} -\partimage{inner_pics/part.png} \partabstract{\hspace*{2em} Here is the introduction area of each part, where you can write a concise overview of the part, of course, if there is nothing to say, you can leave it blank.} -\part{part title} -\chapter{chap title} +\part{The template usage introduction of \textbf{Beautybook}} + +\chapter{A short introduction of \textbf{Beautybook}} + +\section{Section} + % your main contents here! -{\printbibliography[ -heading=bibintoc, -title={References} -] -\printindex -\thispagestyle{empty}} -%--------- Bottom page -------% -\bottomimage{inner_pics/ivy-ge998908f8_1280.jpg} -\ISBNcode{\EANisbn[ISBN=978-80-7340-097-2]} %If no use, delete this line! -\summary{This is the area of the bottom information!} + +\printindex\thispagestyle{empty} +\bottomimage{inner_pics/coverimage.jpg} +\ISBNcode{\EANisbn[ISBN=978-80-7340-097-2]} % +\summary{Summary.} \makebottomcover \end{document} \end{lstlisting} @@ -547,9 +612,9 @@ This template has multiple sets of covers that can be used at will, and the use \begin{enumerate} \item Chinese classic cover (Chinese default) --corresponding macro package \lstinline{cover-choose=cn} , - \item Springer Classic Cover No. 1 (English default) --corresponding to the macro package \lstinline{cover-choose=en} , - \item Springer Classic Cover No. 2 (image background) --corresponding to macro package \lstinline{cover-choose=enfig} , - \item Springer Classic cover No. 3 (Geometric style) --corresponding to the macro package \lstinline{cover-choose=birkar} . + \item Springer Classic Cover 1 (English default) --corresponding to the macro package \lstinline{cover-choose=en} , + \item Springer Classic Cover 2 (image background) --corresponding to macro package \lstinline{cover-choose=enfig} , + \item Springer Classic cover 3 (Geometric style) --corresponding to the macro package \lstinline{cover-choose=birkar} . Note that the information corresponding to the cover is not the same, look at the above example, just follow the requirements. \end{enumerate} @@ -681,7 +746,7 @@ Here is the effect of the theorem environment provided by amsthm. The usage is the same as above, refer to the tag \ref{def label} below or you can \autoref{def label}. \end{example} -\paragraph*{Ancient style box} +\subsection*{Ancient style box} \begin{fancybox} Test ancient style box , you can use it to nest outside of other environments arbitrarily! \end{fancybox} @@ -804,36 +869,10 @@ sorting=nty \addbibresource{ref.bib} \end{lstlisting} -\chapter{Font options (Chinese users only, English users please do not omit the contents of this chapter.)} - -The reason why the font options are independent is that we hope that users of this template care about the fonts used by the template, know the fonts they use and encounter font-related problems more easily to find answers. - -This template uses ctexbook class, so the fontset is consistent with it. The default option is \lstinline{fontset=windows}. If not necessary, the font should not be changed. If you do have a need for third-party fonts, then you can set them up as follows. -\begin{lstlisting} - \setCJKmainfont[Path=fonts/,BoldFont={XX.TTF},ItalicFont={YY.TTF},SlantedFont = {ZZ.TTF} , SlantedFeatures = {FakeSlant}]{WW.TTF} - \setCJKsansfont[Path=fonts/,BoldFont={XX.TTF},ItalicFont={XX.TTF}]{XX.TTF} - \setCJKmonofont[Path=fonts/,BoldFont={XX.TTF},ItalicFont={XX.TTF}]{XX.TTF} - % Setting new CJK font family - \newCJKfontfamily[song]\songti{XX.TTF}[Path=fonts/] - % Setting new font family - \newfontfamily\largetitlestyle[Path=fonts/]{XX.TTF} -\end{lstlisting} - - - -%\appendix - - - -{\printbibliography[ -heading=bibintoc, -title={References} -] -\printindex -\thispagestyle{empty}} -\bottomimage{inner_pics/ivy-ge998908f8_1280.jpg} +\printindex\thispagestyle{empty} +\bottomimage{inner_pics/coverimage.jpg} \ISBNcode{\EANisbn[ISBN=978-80-7340-097-2]} % -\summary{This is the area of the bottom information!} +\summary{A Research Notes Series For papers.} \makebottomcover -\end{document}
\ No newline at end of file +\end{document} diff --git a/macros/latex/contrib/beautybook/inner_pics/part.png b/macros/latex/contrib/beautybook/inner_pics/part.png Binary files differdeleted file mode 100644 index 504bf1c33f..0000000000 --- a/macros/latex/contrib/beautybook/inner_pics/part.png +++ /dev/null diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/even1.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/even1.png Binary files differnew file mode 100644 index 0000000000..81ed4fc54a --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/even1.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/even2.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/even2.png Binary files differnew file mode 100644 index 0000000000..1564f69561 --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/even2.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/even3.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/even3.png Binary files differnew file mode 100644 index 0000000000..21c7a0839d --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/even3.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/even4.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/even4.png Binary files differnew file mode 100644 index 0000000000..a8f9a1d619 --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/even4.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/mid1.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid1.png Binary files differnew file mode 100644 index 0000000000..d23b938b3b --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid1.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/mid10.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid10.png Binary files differnew file mode 100644 index 0000000000..eea157d7e4 --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid10.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/mid11.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid11.png Binary files differnew file mode 100644 index 0000000000..c745d9f3fc --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid11.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/mid2.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid2.png Binary files differnew file mode 100644 index 0000000000..d0f47b10a6 --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid2.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/mid3.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid3.png Binary files differnew file mode 100644 index 0000000000..befb4e8c71 --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid3.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/mid4.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid4.png Binary files differnew file mode 100644 index 0000000000..e64d6339cd --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid4.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/mid5.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid5.png Binary files differnew file mode 100644 index 0000000000..a88ef1b7d2 --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid5.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/mid6.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid6.png Binary files differnew file mode 100644 index 0000000000..62aa764a1c --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid6.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/mid7.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid7.png Binary files differnew file mode 100644 index 0000000000..5578e26286 --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid7.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/mid8.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid8.png Binary files differnew file mode 100644 index 0000000000..10a633a137 --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid8.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/mid9.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid9.png Binary files differnew file mode 100644 index 0000000000..e0495310ce --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/mid9.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/odd1.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd1.png Binary files differnew file mode 100644 index 0000000000..bf3acacd41 --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd1.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/odd10.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd10.png Binary files differnew file mode 100644 index 0000000000..d9a4832a12 --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd10.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/odd11.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd11.png Binary files differnew file mode 100644 index 0000000000..1ba2eb2996 --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd11.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/odd12.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd12.png Binary files differnew file mode 100644 index 0000000000..3b1d2acdab --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd12.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/odd13.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd13.png Binary files differnew file mode 100644 index 0000000000..bc56b66c61 --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd13.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/odd14.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd14.png Binary files differnew file mode 100644 index 0000000000..032d76f36d --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd14.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/odd15.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd15.png Binary files differnew file mode 100644 index 0000000000..e50511157d --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd15.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/odd2.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd2.png Binary files differnew file mode 100644 index 0000000000..284f1760b6 --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd2.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/odd3.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd3.png Binary files differnew file mode 100644 index 0000000000..a0027504d8 --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd3.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/odd4.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd4.png Binary files differnew file mode 100644 index 0000000000..b8fd9d1297 --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd4.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/odd5.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd5.png Binary files differnew file mode 100644 index 0000000000..3ab616991d --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd5.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/odd6.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd6.png Binary files differnew file mode 100644 index 0000000000..51142397f7 --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd6.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/odd7.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd7.png Binary files differnew file mode 100644 index 0000000000..c4a5eef734 --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd7.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/odd8.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd8.png Binary files differnew file mode 100644 index 0000000000..1b110d7716 --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd8.png diff --git a/macros/latex/contrib/beautybook/inner_pics/titleimages/odd9.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd9.png Binary files differnew file mode 100644 index 0000000000..200798ed61 --- /dev/null +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/odd9.png diff --git a/macros/latex/contrib/beautybook/inner_pics/songeven.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/songeven.png Binary files differindex b9a46ab0d7..b9a46ab0d7 100644 --- a/macros/latex/contrib/beautybook/inner_pics/songeven.png +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/songeven.png diff --git a/macros/latex/contrib/beautybook/inner_pics/songodd.png b/macros/latex/contrib/beautybook/inner_pics/titleimages/songodd.png Binary files differindex a3a1129384..a3a1129384 100644 --- a/macros/latex/contrib/beautybook/inner_pics/songodd.png +++ b/macros/latex/contrib/beautybook/inner_pics/titleimages/songodd.png diff --git a/macros/latex/contrib/beautybook/ref.bib b/macros/latex/contrib/beautybook/ref.bib index 19a6e769a1..c1be504341 100644 --- a/macros/latex/contrib/beautybook/ref.bib +++ b/macros/latex/contrib/beautybook/ref.bib @@ -5,11 +5,3 @@ year={2010}, } - - - - - - - - diff --git a/macros/latex/contrib/beautybook/stys/Beautybook-bottompage.sty b/macros/latex/contrib/beautybook/stys/Beautybook-bottompage.sty index 5d6241e407..dca0a3f4ea 100644 --- a/macros/latex/contrib/beautybook/stys/Beautybook-bottompage.sty +++ b/macros/latex/contrib/beautybook/stys/Beautybook-bottompage.sty @@ -2,21 +2,23 @@ \ProvidesPackage{stys/Beautybook-bottompage}[2023/01/18,v2.0] \usepackage[ISBN=978-80-85955-35-4,SC0]{ean13isbn} \makeatletter +%%----------------------------------封面信息定义--------------------------------------------------------%% \newcommand\summary[1]{\def\@summary{#1}} \newcommand\ISBNcode[1]{\def\@ISBNcode{#1}} \newcommand\bottomimage[1]{\def\@bottomimage{#1}} +%%----------------------------------封面信息定义--------------------------------------------------------%% \makeatother % Define the layers to be used in document. % ***************************************************** -\pgfdeclarelayer{background} -\pgfdeclarelayer{foreground} -\pgfdeclarelayer{top} -\pgfdeclarelayer{bottom} +\pgfdeclarelayer{background} %背景%底层 +\pgfdeclarelayer{foreground} %上层 +\pgfdeclarelayer{top} %顶部 +\pgfdeclarelayer{bottom} %底部 \pgfsetlayers{bottom,background,main,foreground,top} -\definecolor{coverbgcolor}{HTML}{e0e0e0} -\definecolor{coverfgcolor}{HTML}{455a64} -\definecolor{coverbar}{HTML}{c02c38} -\definecolor{bottomcolor}{HTML}{24661c} +\definecolor{coverbgcolor}{HTML}{e0e0e0} %f9b868 +\definecolor{coverfgcolor}{HTML}{826e68} %503D4B +\definecolor{coverbar}{HTML}{7c9092} +\definecolor{bottomcolor}{HTML}{826e68} \makeatletter \newcommand*\makebottomcover{ %% Use the Tikz library positioning and clear the page header and footer @@ -45,11 +47,11 @@ \node[text=white,left] at ([xshift=0cm,yshift=-.25\covershift]current page.north east) {% \parbox{.6\linewidth}{\baselineskip=22.5pt \raggedright - \fontsize{20}{23}\selectfont\@bookseries} + \sc\fontsize{20}{23}\selectfont\@bookseries} }; %系列丛书名称 \node[right,text=white,font=\rmfamily\Large,] at ([shift={(-.5cm,1.5cm)}]current page.south west) % - {\raisebox{-1cm}{\includegraphics[width=2cm]{\@presslogo}}\hspace*{0ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};% + {\raisebox{-1.1cm}{\includegraphics[width=0.2\linewidth]{\@presslogo}}\hspace*{-3.5ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};% \ifdefvoid{\@ISBNcode}{}{ \node[scale=1.5] (isbn) at ([shift={(-1.85\outermarginwidth,.5\covershift)}]current page.south east) {\@ISBNcode};% \begin{pgfonlayer}{bottom} diff --git a/macros/latex/contrib/beautybook/stys/Beautybook-birkar.sty b/macros/latex/contrib/beautybook/stys/Beautybook-cover-birkar.sty index 605d71877c..8a2c51aa08 100644 --- a/macros/latex/contrib/beautybook/stys/Beautybook-birkar.sty +++ b/macros/latex/contrib/beautybook/stys/Beautybook-cover-birkar.sty @@ -1,20 +1,21 @@ \NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesPackage{stys/Beautybook-birkar}[2022/05/21,v1.0] -\usepackage{anyfontsize} -\usepackage[dvipsnames,svgnames,x11names,table]{xcolor}% Driver-independent color extensions +\ProvidesPackage{stys/Beautybook-cover-birkar}[2022/05/21,v1.0] +\usepackage{anyfontsize} % 提供\fontsize{}{}\selectfont命令 +\usepackage{etoolbox} %提供自定义封面选项接口 +\usepackage[dvipsnames,svgnames,x11names,table]{xcolor}%颜色宏包 % Driver-independent color extensions \usepackage{tikz} \usetikzlibrary{intersections, positioning, fit, backgrounds, shapes, fadings, -decorations.pathmorphing, graphs, quotes, angles, calc, through, backgrounds} -\usepackage{graphicx} +decorations.pathmorphing, graphs, quotes, angles, calc, through, backgrounds} % %Tikz指令库 +\usepackage{graphicx} %插图 \usetikzlibrary{calc,fadings,patterns} -\usepackage{adjustbox} +\usepackage{adjustbox} %修正minipage顶部对齐问题 % Define the layers to be used in document. % ***************************************************** -\pgfdeclarelayer{background} -\pgfdeclarelayer{foreground} -\pgfdeclarelayer{top} -\pgfdeclarelayer{bottom} +\pgfdeclarelayer{background} %背景%底层 +\pgfdeclarelayer{foreground} %上层 +\pgfdeclarelayer{top} %顶部 +\pgfdeclarelayer{bottom} %底部 \pgfsetlayers{bottom,background,main,foreground,top} \definecolor{RED}{RGB}{220, 41, 26} \definecolor{arc color}{HTML}{546E7A} @@ -39,7 +40,7 @@ decorations.pathmorphing, graphs, quotes, angles, calc, through, backgrounds} \begin{tikzpicture}[remember picture,overlay] \begin{pgfonlayer}{bottom} \fill[coverfgcolor] - (current page.north west) rectangle (current page.south east); + (current page.north west) rectangle (current page.south east);% 填充封面背景颜色 (coverbgcolor) \fill[RED] ([shift={(2.05cm,0)}]current page.north west) rectangle ([shift={(2.35cm,-6cm)}]current page.north west); \fill[coverfgcolor!80,opacity=0.5] @@ -74,29 +75,29 @@ decorations.pathmorphing, graphs, quotes, angles, calc, through, backgrounds} \end{pgfonlayer} \begin{pgfonlayer}{foreground} \fill[coverbar,opacity=.5] - ([yshift=2\outermarginwidth]current page.west) rectangle ([xshift=\outermarginwidth,yshift=-.2\outermarginwidth]current page.west); + ([yshift=2\outermarginwidth]current page.west) rectangle ([xshift=\outermarginwidth,yshift=-.2\outermarginwidth]current page.west); % 最左侧装饰矩形 \end{pgfonlayer} \shade[left color=coverfgcolor,right color=coverfgcolor!60,opacity=.3] - ([xshift=\outermarginwidth,yshift=2\outermarginwidth]current page.west) rectangle (current page.south east); + ([xshift=\outermarginwidth,yshift=2\outermarginwidth]current page.west) rectangle (current page.south east); % 标题背景大矩形 \node[anchor=south] at ([xshift=.3\outermarginwidth,yshift=-.4\covershift]current page.north) {% \parbox{.8\paperwidth}{ \filright - \color{white}\fontsize{20}{23}\selectfont\@bookseries} - }; + \color{white}\sffamily\fontsize{20}{23}\selectfont\@bookseries} + }; %系列丛书名称 \node[ anchor=south] at ([xshift=.3\outermarginwidth,yshift=-.57\paperheight]current page.north) {\parbox{.8\paperwidth}{% \raggedright% - {\renewcommand\baselinestretch{1.1}\selectfont \color{white}\bfseries\fontsize{40}{40}\selectfont\@title\\[0.5ex] - \color{white}\fontsize{30}{30}\selectfont + {\renewcommand\baselinestretch{1.1}\selectfont \color{white}\sffamily\bfseries\fontsize{40}{40}\selectfont\@title\\[0.5ex] + \color{white}\sffamily\fontsize{30}{30}\selectfont \ifdefvoid{\@subtitle}{}{\@subtitle}\par} - }}; - \node[anchor=west,font=\fontsize{23}{23}\selectfont,text=white] at ([xshift=1.8\outermarginwidth,yshift=-.6\covershift]current page.west) {\@edition}; - \node[anchor=west,font=\Huge,text=white] at ([xshift=1.8\outermarginwidth,yshift=\covershift]current page.west) {\@author}; + }};% 封面标题与副标题 + \node[anchor=west,font=\sffamily\fontsize{23}{23}\selectfont,text=white] at ([xshift=1.8\outermarginwidth,yshift=-.6\covershift]current page.west) {\@edition}; + \node[anchor=west,font=\sffamily\Huge,text=white] at ([xshift=1.8\outermarginwidth,yshift=\covershift]current page.west) {\@author}; \node[left,text=white,font=\rmfamily\Large,] at ([shift={(-1cm,2cm)}]current page.south east) % {\raisebox{-1.1cm}{\includegraphics[width=0.2\linewidth]{\@presslogo}}\hspace*{-3.5ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};% \end{tikzpicture}% - \newpage + {\newpage\thispagestyle{empty}} } \makeatother diff --git a/macros/latex/contrib/beautybook/stys/Beautybook-cn.sty b/macros/latex/contrib/beautybook/stys/Beautybook-cover-cn.sty index 04542e7a1f..73357bb24e 100644 --- a/macros/latex/contrib/beautybook/stys/Beautybook-cn.sty +++ b/macros/latex/contrib/beautybook/stys/Beautybook-cover-cn.sty @@ -1,10 +1,11 @@ \NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesPackage{stys/Beautybook-cn}[2023/05/10,v1.0] +\ProvidesPackage{stys/Beautybook-cover-cn}[2023/05/10,v1.0] \usetikzlibrary{calc,fadings,patterns} -\usepackage{adjustbox} -\makeatletter -\newcommand\entitle[1]{\def\@entitle{#1}} -\makeatother +\usepackage{adjustbox} %修正minipage顶部对齐问题 +%%%%===============================================================%%%%% +% \definecolor{coverbgcolor}{HTML}{9CCCDA} +% \definecolor{coverfgcolor}{HTML}{508E99} +% \definecolor{coverbar}{HTML}{305756} \tikzfading[name=fade right, right color =transparent!100, left color=transparent!50] @@ -24,28 +25,28 @@ bottom color=transparent!50] \thispagestyle{empty} \begin{tikzpicture}[remember picture,overlay] \fill[coverfgcolor!75] - (current page.north west) rectangle (current page.south east); + (current page.north west) rectangle (current page.south east);% 填充封面背景颜色 (coverbgcolor) \fill[coverfgcolor!50] - ([xshift=-3\covershift,yshift=-.4\covershift]current page.east) rectangle ([yshift=-1.35\covershift]current page.east); + ([xshift=-3\covershift,yshift=-.4\covershift]current page.east) rectangle ([yshift=-1.35\covershift]current page.east); % 被标题背景遮挡露出一部分的装饰矩形 \fill[coverfgcolor] - ([xshift=\outermarginwidth]current page.north west) rectangle ([xshift=-\outermarginwidth,yshift=1.5\covershift]current page.south east); + ([xshift=\outermarginwidth]current page.north west) rectangle ([xshift=-\outermarginwidth,yshift=1.5\covershift]current page.south east); % 标题背景大矩形 \fill[coverbar] - ([yshift=.44\covershift]current page.west) rectangle ([xshift=\outermarginwidth,yshift=-.4\covershift]current page.west); + ([yshift=.44\covershift]current page.west) rectangle ([xshift=\outermarginwidth,yshift=-.4\covershift]current page.west); % 最左侧装饰矩形 \node[left] at ([xshift=-1.8cm,yshift=-1.5cm]current page.north east) {% \parbox{3\covershift}{ \raggedleft - \color{white}\bfseries\fontsize{18}{22}\selectfont\@bookseries} - }; + \color{white}\sffamily\bfseries\fontsize{18}{22}\selectfont\@bookseries} + }; %系列丛书名称 \node[right] at ([xshift=\outermarginwidth,yshift=1.5*\covershift]current page.west) {\parbox{.8\paperwidth}{% \filright% - \color{white}\bfseries\fontsize{30}{30}\selectfont\@entitle\\[-1.6ex] + \color{white}\sffamily\bfseries\fontsize{30}{30}\selectfont\@title\\[-1.6ex] \begin{tikzpicture} \draw[white,line width=1pt] (0,0) --++ (\paperwidth-3\outermarginwidth,0); \end{tikzpicture}\\[-.5ex] - \color{white}\bfseries\fontsize{30}{30}\selectfont - \ifdefvoid{\@title}{}{\@title} - }}; + \color{white}\sffamily\bfseries\fontsize{30}{30}\selectfont + \ifdefvoid{\@subtitle}{}{\@subtitle} + }};% 封面英文书名与中文书名 \node[left,inner sep=0pt,outer sep=0pt] at ([xshift=1.2\outermarginwidth,yshift=1.8cm]current page.east) {% \adjustbox{valign=t}{ @@ -55,11 +56,11 @@ bottom color=transparent!50] \draw[white,line width=\x pt] (0,0) circle [radius=\r pt];} \fill[white] (0,0) circle [radius=2.5pt]; \end{tikzpicture} - \hspace{2pt}\color{white}\fontsize{20}{25}\selectfont Editors + \hspace{2pt}\color{white}\sffamily\fontsize{20}{25}\selectfont Editors \end{minipage}} \hfill \adjustbox{valign=t}{\begin{minipage}{.45\textwidth} - \raggedright\color{white}\fontsize{20}{25}\selectfont\@author + \raggedright\color{white}\sffamily\fontsize{20}{25}\selectfont\@author \end{minipage}} };% 封面作者信息栏 \fill [path picture={ \node at (path picture bounding box.center) @@ -73,12 +74,12 @@ bottom color=transparent!50] ([xshift=\outermarginwidth+.5\linewidth+.2cm,yshift=.2\covershift]current page.south west) rectangle ([xshift=-\outermarginwidth,yshift=1.43\covershift]current page.south east); \node[left,text=white,font=\rmfamily\Large,] at ([shift={(-2cm,2cm)}]current page.south east) % - {\raisebox{-1cm}{\includegraphics[width=2cm]{\@presslogo}}\hspace*{0ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}}; - \end{tikzpicture} - \newpage -} + {\raisebox{-1.1cm}{\includegraphics[width=0.2\linewidth]{\@presslogo}}\hspace*{-3.5ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};% + \end{tikzpicture}% + {\newpage\thispagestyle{empty}}} \makeatother \endinput +% %%%%===============================================================%%%%% diff --git a/macros/latex/contrib/beautybook/stys/Beautybook-en.sty b/macros/latex/contrib/beautybook/stys/Beautybook-cover-en.sty index 51998fdb92..2279661d94 100644 --- a/macros/latex/contrib/beautybook/stys/Beautybook-en.sty +++ b/macros/latex/contrib/beautybook/stys/Beautybook-cover-en.sty @@ -1,10 +1,12 @@ \NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesPackage{stys/Beautybook-en}[2022/05/21,v1.0] -\usepackage{anyfontsize} -\usepackage[dvipsnames,svgnames,x11names,table]{xcolor}% Driver-independent color extensions +\ProvidesPackage{stys/Beautybook-cover-en}[2022/05/21,v1.0] +\usepackage{anyfontsize} % 提供\fontsize{}{}\selectfont命令 +\usepackage{etoolbox} %提供自定义封面选项接口 +\usepackage[dvipsnames,svgnames,x11names,table]{xcolor}%颜色宏包 % Driver-independent color extensions \usepackage{tikz} +\usepackage{graphicx} %插图 \usetikzlibrary{calc,fadings,patterns} -\usepackage{adjustbox} +\usepackage{adjustbox} %修正minipage顶部对齐问题 \tikzfading[name=fade right, right color =transparent!100, left color=transparent!50] @@ -24,7 +26,7 @@ \thispagestyle{empty} \begin{tikzpicture}[remember picture,overlay] \fill[coverfgcolor] - (current page.north west) rectangle (current page.south east);% (coverbgcolor) + (current page.north west) rectangle (current page.south east);% 填充封面背景颜色 (coverbgcolor) \coordinate (start) at ($(current page.east)!0.5!(current page.north east)+(1,-1)$); \coordinate (end) at (current page.north west); \foreach \i in {0,0.01,...,1} @@ -48,36 +50,38 @@ ($(point)+(310*\i:10)$); } \shade[bottom color=coverfgcolor,top color=coverfgcolor!70,opacity=0.7] - ([xshift=.5\outermarginwidth]current page.north west) rectangle (current page.south east); + ([xshift=.5\outermarginwidth]current page.north west) rectangle (current page.south east); % 背景大矩形 \shade[left color=coverfgcolor,right color=coverfgcolor!60,opacity=0.5] - ([xshift=\outermarginwidth,yshift=2\outermarginwidth]current page.west) rectangle (current page.south east); + ([xshift=\outermarginwidth,yshift=2\outermarginwidth]current page.west) rectangle (current page.south east); % 标题背景大矩形 \fill[coverbar!90,opacity=0.8] - ([yshift=2\outermarginwidth]current page.west) rectangle ([xshift=\outermarginwidth,yshift=-.2\outermarginwidth]current page.west); + ([yshift=2\outermarginwidth]current page.west) rectangle ([xshift=\outermarginwidth,yshift=-.2\outermarginwidth]current page.west); % 最左侧装饰矩形 \foreach \lx/\rx/\ry/\bc/\tc in { 1/1.5/1.75/70/80,1.5/2/1.6/65/75,2/2.5/1.3/60/70,2.5/3/1/55/65,3/3.5/.7/50/60,3.5/4/1.2/60/70,4/4.5/1.9/75/85,4.5/5/1.1/55/65,5/5.5/1.2/60/70,6/6.5/1.6/65/75,6.5/7/1.3/60/70,7/7.5/1.87/70/80,7.5/8/1/55/65,8/8.5/.9/50/60,8.5/9/1.8/70/80,9/9.5/1.6/65/75,9.5/10/1.4/60/70,10/10.5/1/55/65,10.5/11/.7/50/60,11/11.5/1.3/55/65,11.5/12/1/70/80,12/12.5/1.3/65/75,12.5/13/1.6/60/70,13/13.5/1.75/55/65,13.5/14/1.6/65/75,14/14.5/1.3/60/70 }{ \shade[bottom color=coverfgcolor!\bc,top color=coverfgcolor!\tc,opacity=.5] - ([xshift=\lx\outermarginwidth]current page.north west) rectangle ([xshift=\rx\outermarginwidth,yshift=-\ry\covershift]current page.north west); + ([xshift=\lx\outermarginwidth]current page.north west) rectangle ([xshift=\rx\outermarginwidth,yshift=-\ry\covershift]current page.north west);%顶部琴键矩形 } \node[anchor=south] at ([xshift=.3\outermarginwidth,yshift=-.4\covershift]current page.north) {% \parbox{.8\paperwidth}{ \filright - \color{white}\fontsize{20}{23}\selectfont\@bookseries} - }; + \color{white}\sffamily\fontsize{20}{23}\selectfont\@bookseries} + }; %系列丛书名称 \node[ anchor=south] at ([xshift=.3\outermarginwidth,yshift=-.57\paperheight]current page.north) {\parbox{.8\paperwidth}{% \raggedright% - {\renewcommand\baselinestretch{1.1}\selectfont \color{white}\bfseries\fontsize{40}{40}\selectfont\@title\\[0.5ex] - \color{white}\fontsize{30}{30}\selectfont + {\renewcommand\baselinestretch{1.1}\selectfont \color{white}\sffamily\bfseries\fontsize{40}{40}\selectfont\@title\\[0.5ex] + \color{white}\sffamily\fontsize{30}{30}\selectfont \ifdefvoid{\@subtitle}{}{\@subtitle}\par} - }}; - \node[anchor=west,font=\fontsize{23}{23}\selectfont,text=white] at ([xshift=1.8\outermarginwidth,yshift=-.6\covershift]current page.west) {\@edition}; - \node[anchor=west,font=\Huge,text=white] at ([xshift=1.8\outermarginwidth,yshift=\covershift]current page.west) {\@author}; + }};% 封面标题与副标题 + \node[anchor=west,font=\sffamily\fontsize{23}{23}\selectfont,text=white] at ([xshift=1.8\outermarginwidth,yshift=-.6\covershift]current page.west) {\@edition}; + \node[anchor=west,font=\sffamily\Huge,text=white] at ([xshift=1.8\outermarginwidth,yshift=\covershift]current page.west) {\@author}; \node[left,text=white,font=\rmfamily\Large,] at ([shift={(-1cm,2cm)}]current page.south east) % - {\raisebox{-1.1cm}{\includegraphics[width=2cm]{\@presslogo}}\hspace*{0ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};% + {\raisebox{-1.1cm}{\includegraphics[width=0.2\linewidth]{\@presslogo}}\hspace*{-3.5ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};% \end{tikzpicture}% - \newpage + {\newpage\thispagestyle{empty}} } \makeatother +%%%%===============================================================%%%%% +%%------------------------------------------------------封面设计--------------------------------------------------------%% \endinput
\ No newline at end of file diff --git a/macros/latex/contrib/beautybook/stys/Beautybook-enfig.sty b/macros/latex/contrib/beautybook/stys/Beautybook-cover-enfig.sty index b5c6bbe523..005518a6d9 100644 --- a/macros/latex/contrib/beautybook/stys/Beautybook-enfig.sty +++ b/macros/latex/contrib/beautybook/stys/Beautybook-cover-enfig.sty @@ -1,8 +1,8 @@ \NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesPackage{stys/Beautybook-enfig}[2023/02/03,v1.0] +\ProvidesPackage{stys/Beautybook-cover-enfig}[2023/02/03,v1.0] \definecolor{coverbgcolor}{HTML}{004183} -\definecolor{coverfgcolor}{HTML}{00744F} -\definecolor{coverbar}{HTML}{00744F} +\definecolor{coverfgcolor}{HTML}{826e68} +\definecolor{coverbar}{HTML}{7c9092} \tikzfading[name=fade right, right color =transparent!100, left color=transparent!0] @@ -25,31 +25,31 @@ \node[opacity=0.8,inner sep=0pt] at (current page.center){\includegraphics[width=\paperwidth,height=\paperheight]{\@coverimage}}; \end{pgfonlayer} - \shade[left color=coverbgcolor!70,right color=coverbgcolor!50,path fading=fade right,opacity=.6] - ([xshift=.5\outermarginwidth]current page.north west) rectangle ([xshift=4\outermarginwidth]current page.south west); + \shade[left color=coverbgcolor!70,right color=coverbgcolor!50,path fading=fade right,opacity=.5] + ([xshift=.5\outermarginwidth]current page.north west) rectangle ([xshift=4\outermarginwidth]current page.south west); % 背景大矩形虚化 \shade[left color=coverfgcolor,right color=coverfgcolor!60,opacity=.8] - ([xshift=\outermarginwidth,yshift=2\outermarginwidth]current page.west) rectangle (current page.south east); - \fill[coverbar] - ([yshift=2\outermarginwidth]current page.west) rectangle ([xshift=\outermarginwidth,yshift=-.2\outermarginwidth]current page.west); + ([xshift=\outermarginwidth,yshift=2\outermarginwidth]current page.west) rectangle (current page.south east); % 标题背景大矩形 + \fill[coverbar,opacity=0.8] + ([yshift=2\outermarginwidth]current page.west) rectangle ([xshift=\outermarginwidth,yshift=-.2\outermarginwidth]current page.west); % 最左侧装饰矩形 \node[anchor=south] at ([xshift=.3\outermarginwidth,yshift=-.4\covershift]current page.north) {% \parbox{.8\paperwidth}{ \filright - \color{white}\sansa\fontsize{20}{23}\selectfont\@bookseries} - }; - \node[ anchor=south] at ([xshift=.3\outermarginwidth,yshift=-.57\paperheight]current page.north) + \color{white}\sc\fontsize{20}{23}\selectfont\@bookseries} + }; %系列丛书名称 + \node[ anchor=south] at ([xshift=.3\outermarginwidth,yshift=-.55\paperheight]current page.north) {\parbox{.8\paperwidth}{% \raggedright% - {\renewcommand\baselinestretch{1.1}\selectfont \color{white}\bfseries\fontsize{40}{40}\selectfont\@title\\[0.5ex] - \color{white}\sansa\fontsize{30}{30}\selectfont + {\renewcommand\baselinestretch{1.1}\selectfont \color{white}\sffamily\bfseries\fontsize{40}{40}\selectfont\@title\\[0.5ex] + \color{white}\sc\fontsize{30}{30}\selectfont \ifdefvoid{\@subtitle}{}{\@subtitle}\par} - }}; - \node[anchor=west,font=\itshape\fontsize{23}{23}\selectfont,text=white] at ([xshift=1.8\outermarginwidth,yshift=-.6\covershift]current page.west) {\@edition}; - \node[anchor=west,font=\Huge,text=white] at ([xshift=1.8\outermarginwidth,yshift=\covershift]current page.west) {\@author}; + }};% 封面标题与副标题 + \node[anchor=west,font=\sc\fontsize{23}{23}\selectfont,text=white] at ([xshift=1.8\outermarginwidth,yshift=-.6\covershift]current page.west) {\@edition}; + \node[anchor=west,font=\sffamily\Huge,text=white] at ([xshift=1.8\outermarginwidth,yshift=\covershift]current page.west) {\@author}; \node[left,text=white,font=\rmfamily\Large,] at ([shift={(-1cm,2cm)}]current page.south east) % - {\raisebox{-1.1cm}{\includegraphics[width=0.2\linewidth]{\@presslogo}}\hspace*{-3.5ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}}; - \end{tikzpicture} - \newpage + {\raisebox{-1.1cm}{\includegraphics[width=0.2\linewidth]{\@presslogo}}\hspace*{-3.5ex}\begin{varwidth}{.4\textwidth}\tikz\draw[white,line width=1.25pt] (0,0)--++(0,1cm);\,\raisebox{.25cm}{\@pressname} \end{varwidth}};% + \end{tikzpicture}% + {\newpage\thispagestyle{empty}} } \makeatother \endinput diff --git a/macros/latex/contrib/colorist/colorart.cls b/macros/latex/contrib/colorist/colorart.cls index ecb53faa42..92341c30b7 100644 --- a/macros/latex/contrib/colorist/colorart.cls +++ b/macros/latex/contrib/colorist/colorart.cls @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplClass {colorart} - {2023/09/30} {} + {2023/10/01} {} {A colorful article style} \tl_const:Nn \l__colorclass_base_class_tl { article } diff --git a/macros/latex/contrib/colorist/colorbook.cls b/macros/latex/contrib/colorist/colorbook.cls index 40b07da904..488999f335 100644 --- a/macros/latex/contrib/colorist/colorbook.cls +++ b/macros/latex/contrib/colorist/colorbook.cls @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplClass {colorbook} - {2023/09/30} {} + {2023/10/01} {} {A colorful book style} \tl_const:Nn \l__colorclass_base_class_tl { book } diff --git a/macros/latex/contrib/colorist/colorist-fancy.sty b/macros/latex/contrib/colorist/colorist-fancy.sty index 773190630b..20c48e44a8 100644 --- a/macros/latex/contrib/colorist/colorist-fancy.sty +++ b/macros/latex/contrib/colorist/colorist-fancy.sty @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplPackage {colorist-fancy} - {2023/09/30} {} + {2023/10/01} {} {The fancy style of colorist} \IfPackageLoadedTF { colorist } {} @@ -528,7 +528,7 @@ , IT = Questa~pagina~è~stata~lasciata~vuota~intenzionalmente , PT = Esta~página~foi~intencionalmente~deixada~em~branco , BR = Esta~página~foi~intencionalmente~deixada~em~branco - , ES = Esta~página~se~ha~dejado~intencionadamente~en~blanco + , ES = Esta~página~ha~sido~intencionalmente~dejada~en~blanco , CN = \ziju{0.2} 此页为有意留为空白 , TC = \ziju{0.2} 此頁為有意留為空白 , JP = このページは意図的に空白にしてあります diff --git a/macros/latex/contrib/colorist/colorist.sty b/macros/latex/contrib/colorist/colorist.sty index 23137e14ae..eff7e3ec25 100644 --- a/macros/latex/contrib/colorist/colorist.sty +++ b/macros/latex/contrib/colorist/colorist.sty @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplPackage {colorist} - {2023/09/30} {} + {2023/10/01} {} {A colorful style for articles and books} \keys_define:nn { colorist } diff --git a/macros/latex/contrib/homework/README.md b/macros/latex/contrib/homework/README.md index e33fcf609d..3cd3aa247c 100644 --- a/macros/latex/contrib/homework/README.md +++ b/macros/latex/contrib/homework/README.md @@ -230,6 +230,11 @@ and then write this in your preamble: ``` -# License +## Acknowledgement + +The author would like to thank David García-Zelada for his valuable help with the Spanish language. He kindly demonstrated to me the difference between the "Tutoyer" and "Vouvoyer" version, patiently corrected many inaccuracies in the demo documents, and also pointed out a few improper translations in some of my other packages. + + +## License This work is released under the LaTeX Project Public License, v1.3c or later. diff --git a/macros/latex/contrib/homework/homework-demo-es.pdf b/macros/latex/contrib/homework/homework-demo-es.pdf Binary files differindex 2e02644a1e..cefbcfed0a 100644 --- a/macros/latex/contrib/homework/homework-demo-es.pdf +++ b/macros/latex/contrib/homework/homework-demo-es.pdf diff --git a/macros/latex/contrib/homework/homework-demo-es.tex b/macros/latex/contrib/homework/homework-demo-es.tex index 419e8dfd64..dd670413eb 100644 --- a/macros/latex/contrib/homework/homework-demo-es.tex +++ b/macros/latex/contrib/homework/homework-demo-es.tex @@ -68,10 +68,10 @@ \end{solution} -\bigskip\textcolor{gray!55}{(También puede escribir \texttt{answer} en lugar de \texttt{solution} si lo deseas...)} +\bigskip\textcolor{gray!55}{(También puede escribir \texttt{answer} en lugar de \texttt{solution} si lo desea...)} \begin{answer} - El uso del entorno \verb|answer| es exactamente lo mismo que \verb|solution|. + El uso del entorno \verb|answer| es exactamente el mismo que \verb|solution|. \end{answer} diff --git a/macros/latex/contrib/homework/homework.cls b/macros/latex/contrib/homework/homework.cls index 29f2227f9f..0cbd119277 100644 --- a/macros/latex/contrib/homework/homework.cls +++ b/macros/latex/contrib/homework/homework.cls @@ -12,7 +12,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplClass {homework} - {2023/10/01} {} + {2023/10/01a} {} {Document class for writing homework} \keys_define:nn { homework } diff --git a/macros/latex/contrib/minimalist/minimalist-classical.sty b/macros/latex/contrib/minimalist/minimalist-classical.sty index e5207e6288..0b88f16fa4 100644 --- a/macros/latex/contrib/minimalist/minimalist-classical.sty +++ b/macros/latex/contrib/minimalist/minimalist-classical.sty @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplPackage {minimalist-classical} - {2023/09/30} {} + {2023/10/01} {} {The "classical" style of minimalist} \IfPackageLoadedTF { minimalist } {} @@ -605,7 +605,7 @@ , IT = Questa~pagina~è~stata~lasciata~vuota~intenzionalmente , PT = Esta~página~foi~intencionalmente~deixada~em~branco , BR = Esta~página~foi~intencionalmente~deixada~em~branco - , ES = Esta~página~se~ha~dejado~intencionadamente~en~blanco + , ES = Esta~página~ha~sido~intencionalmente~dejada~en~blanco , CN = \ziju{0.2} 此页为有意留为空白 , TC = \ziju{0.2} 此頁為有意留為空白 , JP = このページは意図的に空白にしてあります diff --git a/macros/latex/contrib/minimalist/minimalist-default.sty b/macros/latex/contrib/minimalist/minimalist-default.sty index c94577ae35..bc694fe3b9 100644 --- a/macros/latex/contrib/minimalist/minimalist-default.sty +++ b/macros/latex/contrib/minimalist/minimalist-default.sty @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplPackage {minimalist-default} - {2023/09/30} {} + {2023/10/01} {} {The default style of minimalist} \IfPackageLoadedTF { minimalist } {} @@ -584,7 +584,7 @@ , IT = Questa~pagina~è~stata~lasciata~vuota~intenzionalmente , PT = Esta~página~foi~intencionalmente~deixada~em~branco , BR = Esta~página~foi~intencionalmente~deixada~em~branco - , ES = Esta~página~se~ha~dejado~intencionadamente~en~blanco + , ES = Esta~página~ha~sido~intencionalmente~dejada~en~blanco , CN = \ziju{0.2} 此页为有意留为空白 , TC = \ziju{0.2} 此頁為有意留為空白 , JP = このページは意図的に空白にしてあります diff --git a/macros/latex/contrib/minimalist/minimalist-flow.sty b/macros/latex/contrib/minimalist/minimalist-flow.sty index 7887188690..32adea6440 100644 --- a/macros/latex/contrib/minimalist/minimalist-flow.sty +++ b/macros/latex/contrib/minimalist/minimalist-flow.sty @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplPackage {minimalist-flow} - {2023/09/30} {} + {2023/10/01} {} {The "flow" style of minimalist} \IfPackageLoadedTF { minimalist } {} @@ -595,7 +595,7 @@ , IT = Questa~pagina~è~stata~lasciata~vuota~intenzionalmente , PT = Esta~página~foi~intencionalmente~deixada~em~branco , BR = Esta~página~foi~intencionalmente~deixada~em~branco - , ES = Esta~página~se~ha~dejado~intencionadamente~en~blanco + , ES = Esta~página~ha~sido~intencionalmente~dejada~en~blanco , CN = \ziju{0.2} 此页为有意留为空白 , TC = \ziju{0.2} 此頁為有意留為空白 , JP = このページは意図的に空白にしてあります diff --git a/macros/latex/contrib/minimalist/minimalist-plain.sty b/macros/latex/contrib/minimalist/minimalist-plain.sty index 9abd77b655..e58fca161f 100644 --- a/macros/latex/contrib/minimalist/minimalist-plain.sty +++ b/macros/latex/contrib/minimalist/minimalist-plain.sty @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplPackage {minimalist-plain} - {2023/09/30} {} + {2023/10/01} {} {The "plain" style of minimalist} \IfPackageLoadedTF { minimalist } {} @@ -558,7 +558,7 @@ , IT = Questa~pagina~è~stata~lasciata~vuota~intenzionalmente , PT = Esta~página~foi~intencionalmente~deixada~em~branco , BR = Esta~página~foi~intencionalmente~deixada~em~branco - , ES = Esta~página~se~ha~dejado~intencionadamente~en~blanco + , ES = Esta~página~ha~sido~intencionalmente~dejada~en~blanco , CN = \ziju{0.2} 此页为有意留为空白 , TC = \ziju{0.2} 此頁為有意留為空白 , JP = このページは意図的に空白にしてあります diff --git a/macros/latex/contrib/minimalist/minimalist-stream.sty b/macros/latex/contrib/minimalist/minimalist-stream.sty index daea466465..634b940d38 100644 --- a/macros/latex/contrib/minimalist/minimalist-stream.sty +++ b/macros/latex/contrib/minimalist/minimalist-stream.sty @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplPackage {minimalist-stream} - {2023/09/30} {} + {2023/10/01} {} {The "stream" style of minimalist} \IfPackageLoadedTF { minimalist } {} @@ -664,7 +664,7 @@ , IT = Questa~pagina~è~stata~lasciata~vuota~intenzionalmente , PT = Esta~página~foi~intencionalmente~deixada~em~branco , BR = Esta~página~foi~intencionalmente~deixada~em~branco - , ES = Esta~página~se~ha~dejado~intencionadamente~en~blanco + , ES = Esta~página~ha~sido~intencionalmente~dejada~en~blanco , CN = \ziju{0.2} 此页为有意留为空白 , TC = \ziju{0.2} 此頁為有意留為空白 , JP = このページは意図的に空白にしてあります diff --git a/macros/latex/contrib/minimalist/minimalist.sty b/macros/latex/contrib/minimalist/minimalist.sty index bec6ef6178..d49f75f375 100644 --- a/macros/latex/contrib/minimalist/minimalist.sty +++ b/macros/latex/contrib/minimalist/minimalist.sty @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplPackage {minimalist} - {2023/09/30} {} + {2023/10/01} {} {A simple and clear style for articles and books} \keys_define:nn { minimalist } diff --git a/macros/latex/contrib/minimalist/minimart.cls b/macros/latex/contrib/minimalist/minimart.cls index 27ddd5d99e..6a5d9f3707 100644 --- a/macros/latex/contrib/minimalist/minimart.cls +++ b/macros/latex/contrib/minimalist/minimart.cls @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplClass {minimart} - {2023/09/30} {} + {2023/10/01} {} {A simple and clear article style} \tl_const:Nn \l__minimclass_base_class_tl { article } diff --git a/macros/latex/contrib/minimalist/minimbook.cls b/macros/latex/contrib/minimalist/minimbook.cls index e1e4db8d95..def4f1236c 100644 --- a/macros/latex/contrib/minimalist/minimbook.cls +++ b/macros/latex/contrib/minimalist/minimbook.cls @@ -18,7 +18,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] \ProvidesExplClass {minimbook} - {2023/09/30} {} + {2023/10/01} {} {A simple and clear book style} \tl_const:Nn \l__minimclass_base_class_tl { book } diff --git a/macros/latex/contrib/projlib/ProjLib.dtx b/macros/latex/contrib/projlib/ProjLib.dtx index 686a120b2f..78e12ec500 100644 --- a/macros/latex/contrib/projlib/ProjLib.dtx +++ b/macros/latex/contrib/projlib/ProjLib.dtx @@ -19,84 +19,84 @@ %<*ProjLib> \ProvidesExplPackage {ProjLib} - {2023/09/30} {} + {2023/10/01} {} {Collective interface of the ProjLib toolkit} %</ProjLib> % %<*projlib-author> \ProvidesExplPackage {projlib-author} - {2023/09/30} {} + {2023/10/01} {} {Enhanced author information block} %</projlib-author> % %<*projlib-datetime> \ProvidesExplPackage {projlib-datetime} - {2023/09/30} {} + {2023/10/01} {} {Convert numeric date-time string to natural language} %</projlib-datetime> % %<*projlib-draft> \ProvidesExplPackage {projlib-draft} - {2023/09/30} {} + {2023/10/01} {} {Useful commands during draft stage} %</projlib-draft> % %<*projlib-font> \ProvidesExplPackage {projlib-font} - {2023/09/30} {} + {2023/10/01} {} {Font selection and configuration} %</projlib-font> % %<*projlib-language> \ProvidesExplPackage {projlib-language} - {2023/09/30} {} + {2023/10/01} {} {Multi-language configuration} %</projlib-language> % %<*projlib-logo> \ProvidesExplPackage {projlib-logo} - {2023/09/30} {} + {2023/10/01} {} {The ProjLib logo} %</projlib-logo> % %<*projlib-math> \ProvidesExplPackage {projlib-math} - {2023/09/30} {} + {2023/10/01} {} {Efficient math setup} %</projlib-math> % %<*projlib-paper> \ProvidesExplPackage {projlib-paper} - {2023/09/30} {} + {2023/10/01} {} {Configuration of the paper style} %</projlib-paper> % %<*projlib-text> \ProvidesExplPackage {projlib-text} - {2023/09/30} {} + {2023/10/01} {} {Text-related commands} %</projlib-text> % %<*projlib-theorem> \ProvidesExplPackage {projlib-theorem} - {2023/09/30} {} + {2023/10/01} {} {Configuration of theorem-like environments} %</projlib-theorem> % %<*projlib-titlepage> \ProvidesExplPackage {projlib-titlepage} - {2023/09/30} {} + {2023/10/01} {} {Commands for rendering the title page} %</projlib-titlepage> @@ -711,92 +711,92 @@ \cs_new_protected:Nn \projlib_datetime_display_month_day_year:n -{ - \__projlib_datetime_display_month_day_year:en { #1 } {} -} + { + \__projlib_datetime_display_month_day_year:en { #1 } {} + } \cs_new_protected:Nn \projlib_datetime_display_month_day_year_uppercase:n -{ - \__projlib_datetime_display_month_day_year:en { #1 } { _uppercase } -} + { + \__projlib_datetime_display_month_day_year:en { #1 } { _uppercase } + } \cs_new_protected:Nn \__projlib_datetime_display_month_day_year:nn -{ - \regex_match:nnTF { \A \d{1,2}-\d{1,2}-\d{4} \Z } { #1 } - { - \seq_set_split:Nnn \l__projlib_datetime_date_seq { - } { #1 } - \cs_if_exist_use:c { projlib_datetime_display_year_month_day #2 _ \languagename :nnn } - { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 3 } } } % year - { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 1 } } } % month - { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 2 } } } % day - } - { - \regex_match:nnTF { \A \d{1,2}-\d{4} \Z } { #1 } - { - \seq_set_split:Nnn \l__projlib_datetime_date_seq { - } { #1 } - \cs_if_exist_use:c { projlib_datetime_display_year_month #2 _ \languagename :nn } - { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 2 } } } % year - { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 1 } } } % month - } - { - \regex_match:nnTF { \A \d{1,2}-\d{1,2} \Z } { #1 } - { - \seq_set_split:Nnn \l__projlib_datetime_date_seq { - } { #1 } - \cs_if_exist_use:c { projlib_datetime_display_month_day #2 _ \languagename :nn } - { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 1 } } } % month - { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 2 } } } % day - } - { - #1 - } - } - } -} + { + \regex_match:nnTF { \A \d{1,2}-\d{1,2}-\d{4} \Z } { #1 } + { + \seq_set_split:Nnn \l__projlib_datetime_date_seq { - } { #1 } + \cs_if_exist_use:c { projlib_datetime_display_year_month_day #2 _ \languagename :nnn } + { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 3 } } } % year + { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 1 } } } % month + { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 2 } } } % day + } + { + \regex_match:nnTF { \A \d{1,2}-\d{4} \Z } { #1 } + { + \seq_set_split:Nnn \l__projlib_datetime_date_seq { - } { #1 } + \cs_if_exist_use:c { projlib_datetime_display_year_month #2 _ \languagename :nn } + { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 2 } } } % year + { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 1 } } } % month + } + { + \regex_match:nnTF { \A \d{1,2}-\d{1,2} \Z } { #1 } + { + \seq_set_split:Nnn \l__projlib_datetime_date_seq { - } { #1 } + \cs_if_exist_use:c { projlib_datetime_display_month_day #2 _ \languagename :nn } + { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 1 } } } % month + { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 2 } } } % day + } + { + #1 + } + } + } + } \cs_generate_variant:Nn \__projlib_datetime_display_month_day_year:nn { en } \cs_new_protected:Nn \projlib_datetime_display_day_month_year:n -{ - \__projlib_datetime_display_day_month_year:en { #1 } {} -} + { + \__projlib_datetime_display_day_month_year:en { #1 } {} + } \cs_new_protected:Nn \projlib_datetime_display_day_month_year_uppercase:n -{ - \__projlib_datetime_display_day_month_year:en { #1 } { _uppercase } -} + { + \__projlib_datetime_display_day_month_year:en { #1 } { _uppercase } + } \cs_new_protected:Nn \__projlib_datetime_display_day_month_year:nn -{ - \regex_match:nnTF { \A \d{1,2}-\d{1,2}-\d{4} \Z } { #1 } - { - \seq_set_split:Nnn \l__projlib_datetime_date_seq { - } { #1 } - \cs_if_exist_use:c { projlib_datetime_display_year_month_day #2 _ \languagename :nnn } - { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 3 } } } % year - { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 2 } } } % month - { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 1 } } } % day - } - { - \regex_match:nnTF { \A \d{1,2}-\d{4} \Z } { #1 } - { - \seq_set_split:Nnn \l__projlib_datetime_date_seq { - } { #1 } - \cs_if_exist_use:c { projlib_datetime_display_year_month #2 _ \languagename :nn } - { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 2 } } } % year - { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 1 } } } % month - } - { - \regex_match:nnTF { \A \d{1,2}-\d{1,2} \Z } { #1 } - { - \seq_set_split:Nnn \l__projlib_datetime_date_seq { - } { #1 } - \cs_if_exist_use:c { projlib_datetime_display_month_day #2 _ \languagename :nn } - { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 2 } } } % month - { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 1 } } } % day - } - { - #1 - } - } - } -} + { + \regex_match:nnTF { \A \d{1,2}-\d{1,2}-\d{4} \Z } { #1 } + { + \seq_set_split:Nnn \l__projlib_datetime_date_seq { - } { #1 } + \cs_if_exist_use:c { projlib_datetime_display_year_month_day #2 _ \languagename :nnn } + { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 3 } } } % year + { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 2 } } } % month + { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 1 } } } % day + } + { + \regex_match:nnTF { \A \d{1,2}-\d{4} \Z } { #1 } + { + \seq_set_split:Nnn \l__projlib_datetime_date_seq { - } { #1 } + \cs_if_exist_use:c { projlib_datetime_display_year_month #2 _ \languagename :nn } + { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 2 } } } % year + { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 1 } } } % month + } + { + \regex_match:nnTF { \A \d{1,2}-\d{1,2} \Z } { #1 } + { + \seq_set_split:Nnn \l__projlib_datetime_date_seq { - } { #1 } + \cs_if_exist_use:c { projlib_datetime_display_month_day #2 _ \languagename :nn } + { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 2 } } } % month + { \int_eval:n { \seq_item:Nn \l__projlib_datetime_date_seq { 1 } } } % day + } + { + #1 + } + } + } + } \cs_generate_variant:Nn \__projlib_datetime_display_day_month_year:nn { en } @@ -913,7 +913,7 @@ \group_end: } - \NewDocumentCommand \ProjLibDate { O{} m O{} } +\NewDocumentCommand \ProjLibDate { O{} m O{} } { \group_begin: \tl_if_blank:oF { #1 } { \keys_set:nn { projlib-datetime-command } { #1 } } @@ -2253,7 +2253,7 @@ IT = Per ~ essere ~ finito , PT = Não ~ terminou , BR = Não ~ terminou , - ES = Estar ~ terminado , + ES = Aún ~ por ~ completar , CN = 这里尚未完成 , TC = 這裡尚未完成 , JP = 終わってない , @@ -2473,7 +2473,7 @@ \bool_gset_false:N \g_projlib_font_already_set_bool \RequirePackage { anyfontsize } -\RequirePackage { setspace } +\RequirePackage { setspaceenhanced } \cs_new:Nn \projlib_font_set_linespacing_latin:n { @@ -3138,7 +3138,7 @@ } } -\RequirePackage { setspace } +\RequirePackage { setspaceenhanced } \tl_new:N \g_projlib_language_linespacing_latin_tl \tl_new:N \g_projlib_language_linespacing_cjk_tl diff --git a/macros/latex/contrib/projlib/README.md b/macros/latex/contrib/projlib/README.md index a180d800d3..479d6dff81 100644 --- a/macros/latex/contrib/projlib/README.md +++ b/macros/latex/contrib/projlib/README.md @@ -5,7 +5,7 @@ # The `ProjLib` Toolkit -> **This bundle is dated 2023/09/30.** +> **This bundle is dated 2023/10/01.** > **New documentations are still being written. For now, only the core code is included in TeX Live 2023 (old documentations have been removed from the distribution).** diff --git a/macros/luatex/latex/luabidi/LICENCE.md b/macros/luatex/latex/luabidi/LICENCE.md index 7de4faf488..0b766dd22e 100644 --- a/macros/luatex/latex/luabidi/LICENCE.md +++ b/macros/luatex/latex/luabidi/LICENCE.md @@ -1,6 +1,7 @@ # MIT Licence -Copyright (c) Vafa Khalighi 2009, Arthur Reutenauer 2013, 2019, Jürgen Spitzmüller 2019. +Copyright (c) Vafa Khalighi 2009, Arthur Reutenauer 2013, 2019-2023, +Jürgen Spitzmüller 2019-2023. The licence for all files within this package is (the MIT licence)[https://opensource.org/licenses/MIT] unless otherwise noted. diff --git a/macros/luatex/latex/luabidi/README.md b/macros/luatex/latex/luabidi/README.md index f889e844c6..c3c8a6d452 100644 --- a/macros/luatex/latex/luabidi/README.md +++ b/macros/luatex/latex/luabidi/README.md @@ -5,4 +5,11 @@ does for XeTeX. ## CTAN Package https://www.ctan.org/pkg/luabidi -Copyright (c) Vafa Khalighi 2009, Arthur Reutenauer 2013, 2019, Jürgen Spitzmüller 2019 +Copyright (c) Vafa Khalighi 2009, Arthur Reutenauer 2013, 2019-2023, +Jürgen Spitzmüller 2019-2023 + +Except for luabidi.sty, all files in this package are licensed under the terms +of the MIT licence in the wording of the Open Source Initiative +(https://opensource.org/licenses/MIT). The file luabidi.sty is licensed under +the LaTeX Project Public License (https://www.latex-project.org/lppl/), either +version 1.3c or, at your option, any later version. diff --git a/macros/luatex/latex/luabidi/doc/luabidi.pdf b/macros/luatex/latex/luabidi/doc/luabidi.pdf Binary files differindex 8e31b11622..66b4d02bd4 100644 --- a/macros/luatex/latex/luabidi/doc/luabidi.pdf +++ b/macros/luatex/latex/luabidi/doc/luabidi.pdf diff --git a/macros/luatex/latex/luabidi/doc/luabidi.tex b/macros/luatex/latex/luabidi/doc/luabidi.tex index 3dc17fe720..3865929b0b 100644 --- a/macros/luatex/latex/luabidi/doc/luabidi.tex +++ b/macros/luatex/latex/luabidi/doc/luabidi.tex @@ -80,6 +80,8 @@ pdfkeywords={luatex, lualatex, multilingual, bidi} \begin{document} \hyphenation{Kha-li-ghi Reu-ten-auer} \GetFileInfo{luabidi.sty} +% not correctly set +\def\fileversion{0.6} \title{\lbd\\\color{myblue}Bidirectional typesetting in \LuaLaTeX} @@ -226,6 +228,9 @@ The following macros are provided: \section{Revision Log} \begin{description} + \item[v. 0.6 (2023/10/01)] Fixing a bug in \cmd{\RLE} and \cmd{\LRE}; Switching \cmd{\bodydir} inside long RTL/LTR text; + ensuring \cmd{\bodydir} and \cmd{\pagedir} are equal at shipout; patching lists to use a correct value of \cmd{\shapemode}; + Setting \cmd{\breakafterdirmode} and \cmd{\matheqdirmode} to 1. Patch kindly provided by Udi Fogiel. \item[v. 0.5 (2019/10/27)] Add \cmd{\RTLfootnote}, \cmd{\LTRfootnote}, and \cmd{\hboxR}; fix \texttt{autofootnoterule} option; add \cmd{\autofootnoterule}, \cmd{\leftfootnoterule}, \cmd{\rightfootnoterule} and \cmd{\textwidthfootnoterule}; add manual. \item[v. 0.4 (2019/08/24)] Fix \cmd{\@ensure@RTL}. diff --git a/macros/luatex/latex/luabidi/tex/luabidi.sty b/macros/luatex/latex/luabidi/tex/luabidi.sty index 4277a1f173..47e4d92d07 100644 --- a/macros/luatex/latex/luabidi/tex/luabidi.sty +++ b/macros/luatex/latex/luabidi/tex/luabidi.sty @@ -1,13 +1,14 @@ %% This file is luabidi.sty %% This is part of the luabidi package %% -%% Copyright © 2009 Vafa Khalighi, 2013--2019 Arthur Reutenauer, 2019 Jürgen Spitzmüller +%% Copyright © 2009 Vafa Khalighi, 2013--2023 Arthur Reutenauer, +%% 2019--2023 Jürgen Spitzmüller %% %%%% It may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3c %% of this license or (at your option) any later version. \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{luabidi}[2019/10/27 v0.5 +\ProvidesPackage{luabidi}[2023/10/01 v0.6 Bidirectional typesetting in LuaTeX] \RequirePackage{etoolbox} @@ -29,20 +30,19 @@ \newif\if@RTL \newif\if@RTLmain -\@RTLmainfalse -\def\setRTLmain{\@RTLmaintrue\pagedir TRT \bodydir TRT \pardir TRT \textdir TRT} -\def\setRTL{\@RTLtrue\pardir TRT \textdir TRT} +\def\setRTLmain{\@RTLmaintrue\pagedir TRT\bodydir TRT\pardir TRT\textdir TRT} +\def\setRTL{\@RTLtrue\bodydir TRT\pardir TRT\textdir TRT} \let\setRL=\setRTL -\def\setLTR{\@RTLfalse\pardir TLT \textdir TLT} +\def\setLTR{\@RTLfalse\bodydir TLT\pardir TLT\textdir TLT} \let\setLR=\setLTR \let\unsetRTL=\setLTR \let\unsetLTR=\setRTL -\def\RTL{\@RTLtrue\trivlist \pardir TRT \textdir TRT\item\relax} -\def\endRTL{\@RTLfalse\endtrivlist} -\def\LTR{\trivlist \pardir TLT \textdir TLT\item\relax} -\def\endLTR{\endtrivlist} -\def\@ensure@RTL#1{\if@RTL#1\else\RLE{#1}\fi} -\def\@ensure@LTR#1{\if@RTL\LRE{#1}\else{#1}\fi} +\def\RTL{\par\@RTLtrue\bodydir TRT\pardir TRT\textdir TRT} +\def\endRTL{\par} +\def\LTR{\par\@RTLfalse\bodydir TLT\pardir TLT \textdir TLT} +\def\endLTR{\par} +\def\@ensure@RTL#1{\if@RTL #1\else\RLE{#1}\fi} +\def\@ensure@LTR#1{\if@RTL\LRE{#1}\else #1\fi} \def\@ensure@dir#1{\if@RTL\RLE{#1}\else{#1}\fi} \let\@ensure@maindir=\@ensuredir \let\n@xt=\ @@ -52,13 +52,38 @@ \def\pRLE{\protect\afterassignment\moreRLE \let\n@xt= } \def\bracetext{\ifcat\n@xt{\else\ifcat\n@xt}\fi \errmessage{Missing left brace has been substituted}\fi \bgroup} -\def\moreLRE{\bracetext \aftergroup\unsetLTR \setLTR\@RTLfalse} -\def\moreRLE{\bracetext \aftergroup\unsetRTL \setRTL\@RTLtrue} +\def\moreLRE{\bracetext \leavevmode\@RTLfalse\textdir TLT} +\def\moreRLE{\bracetext \leavevmode\@RTLtrue\textdir TRT} \let\LR=\LRE \let\RL=\RLE \def\hboxR#1{\hbox{\RL{#1}}} % +% If \pagedir is different from \pardir then \shapemode needs to be 2 for \parshape in lists +% + +\let\luabidi@OL@list\list +\patchcmd\list{\parshape}{\luabidi@parshape}{}{} +\def\luabidi@parshape#1#2#3{% + \parshape #1 #2 #3 % + \ifnum\pagedirection=\pardirection\else + \shapemode\tw@ +\fi} + +% +% making sure \bodydir is the same as \pagedir at \output time +% + +\output\expandafter{\expandafter\bodydir\expandafter\pagedir\the\output} + +% +% The following registers are set to 1 to fix some bugs in the engine. See sections 3.3.3 and 7.5.3 of LuaTeX's manual. +% + +\matheqdirmode=1 +\breakafterdirmode=1 + +% % Footnotes % @@ -70,11 +95,9 @@ % This needs to be loaded late because of the switch \AtEndPreamble{% - \makeatletter \ifluabidi@autofootnoterule \input{luabidi-autofootnoterule.def} \fi - \makeatother } \endinput |