diff options
author | Norbert Preining <norbert@preining.info> | 2023-11-03 03:02:40 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2023-11-03 03:02:40 +0000 |
commit | 1e464deefd235880a2fac2390e896bfd2b523151 (patch) | |
tree | e9294919c95d4a444e911d20d2e3ddd60e45f9d1 /macros/latex | |
parent | 2da66dea964ffa47d24f26081f2942a6e1ef1121 (diff) |
CTAN sync 202311030302
Diffstat (limited to 'macros/latex')
48 files changed, 1260 insertions, 135 deletions
diff --git a/macros/latex/contrib/llncs/README.md b/macros/latex/contrib/llncs/README.md index c621504692..fdebde330f 100644 --- a/macros/latex/contrib/llncs/README.md +++ b/macros/latex/contrib/llncs/README.md @@ -1,8 +1,8 @@ # llncs -_2022/09/05 v2.22_ +_2023/11/02 v2.23_ -Copyright (c) 1996-2022 Springer +Copyright (c) 1996-2023 Springer Email: [lncs@springer.com](mailto:lncs@springer.com) diff --git a/macros/latex/contrib/llncs/history.txt b/macros/latex/contrib/llncs/history.txt index 0e51fd8218..16515982db 100644 --- a/macros/latex/contrib/llncs/history.txt +++ b/macros/latex/contrib/llncs/history.txt @@ -143,6 +143,13 @@ Version history for the LLNCS LaTeX2e class use detokenized argument in the definition of \doi to allow underscores in DOIs -05.09.22 llncs.cls 2.22 robust redefinition of \vec (bold italics), bug +05.09.22 llncs.cls 2.22 robust redefinition of \vec (bold italics), bug reported by Alexander Malkis, TUM +02.11.23 llncs.cls 2.23 \ackname changed from "Acknowledgements" (BE) to + "Acknowledgments" (AE). + \discintname introduced for the new, mandatory + section "Disclosure of Interests". + New "credits" environment introduced to provide + small run-in headings for "Acknowledgments" and + the "Disclosure of Interests". diff --git a/macros/latex/contrib/llncs/llncs.cls b/macros/latex/contrib/llncs/llncs.cls index de80a15ad9..8fc32f36d8 100644 --- a/macros/latex/contrib/llncs/llncs.cls +++ b/macros/latex/contrib/llncs/llncs.cls @@ -1,4 +1,4 @@ -% LLNCS DOCUMENT CLASS -- version 2.22 (05-Sep-2022) +% LLNCS DOCUMENT CLASS -- version 2.23 (02-Nov-2023) % Springer Verlag LaTeX2e support for Lecture Notes in Computer Science % %% @@ -19,7 +19,7 @@ %% Right brace \} Tilde \~} %% \NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesClass{llncs}[2022/09/05 v2.22 +\ProvidesClass{llncs}[2023/11/02 v2.23 ^^J LaTeX document class for Lecture Notes in Computer Science] % Options \let\if@envcntreset\iffalse @@ -78,7 +78,7 @@ % \def\switcht@albion{% \def\abstractname{Abstract.} -\def\ackname{Acknowledgement.} +\def\ackname{Acknowledgments.} \def\andname{and} \def\lastandname{\unskip, and} \def\appendixname{Appendix} @@ -88,6 +88,7 @@ \def\contentsname{Table of Contents} \def\corollaryname{Corollary} \def\definitionname{Definition} +\def\discintname{Disclosure of Interests.} \def\examplename{Example} \def\exercisename{Exercise} \def\figurename{Fig.} @@ -129,6 +130,7 @@ \def\contentsname{Table des mati\`eres}% \def\corollaryname{Corollaire}% \def\definitionname{D\'efinition}% + \def\discintname{Mention des Int\'{e}r\^{e}ts.} \def\examplename{Exemple}% \def\exercisename{Exercice}% \def\figurename{Fig.}% @@ -168,6 +170,7 @@ \def\contentsname{Inhaltsverzeichnis}% \def\corollaryname{Korollar}% %\def\definitionname{Definition}% + \def\discintname{Offenlegung von Interessen.} \def\examplename{Beispiel}% \def\exercisename{\"Ubung}% \def\figurename{Abb.}% @@ -210,6 +213,20 @@ \belowdisplayskip \abovedisplayskip } +% Switch to small font size for the credits at the end of the paper +% (i.e. Acknowlegments and Disclosure of Interests) +\newenvironment{credits}{% +\begingroup\small% +\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% + {-12\p@ \@plus -4\p@ \@minus -4\p@}% + {-0.5em \@plus -0.22em \@minus -0.1em}% + {\normalfont\small\bfseries\boldmath}} +\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}% + {-8\p@ \@plus -4\p@ \@minus -4\p@}% + {-0.5em \@plus -0.22em \@minus -0.1em}% + {\normalfont\small\itshape}}% +}{\endgroup} + \frenchspacing \widowpenalty=10000 \clubpenalty=10000 diff --git a/macros/latex/contrib/llncs/llncsdoc.pdf b/macros/latex/contrib/llncs/llncsdoc.pdf Binary files differindex e2f638a5fd..aae9c4d7a7 100644 --- a/macros/latex/contrib/llncs/llncsdoc.pdf +++ b/macros/latex/contrib/llncs/llncsdoc.pdf diff --git a/macros/latex/contrib/llncs/llncsdoc.tex b/macros/latex/contrib/llncs/llncsdoc.tex index 0dd0ec5599..1f3e80c4c7 100644 --- a/macros/latex/contrib/llncs/llncsdoc.tex +++ b/macros/latex/contrib/llncs/llncsdoc.tex @@ -1,6 +1,6 @@ % This is LLNCSDOC.TEX the documentation file of % the LaTeX2e class from Springer-Verlag -% for Lecture Notes in Computer Science, version 2.22 +% for Lecture Notes in Computer Science, version 2.23 \documentclass{llncs} \usepackage{llncsdoc} \usepackage{graphicx} @@ -8,16 +8,18 @@ \usepackage[dvips,bookmarksopen]{hyperref} % \makeatletter\@twosidefalse\@mparswitchfalse\makeatother +% \begin{document} \title{Instructions for Using Springer's \texttt{llncs} Class for Computer Science Proceedings Papers} % -\subtitle{\texttt{llncs}, Version 2.22, Sep 05, 2022} +\subtitle{\texttt{llncs}, Version 2.23, Nov 02, 2023} % \author{} \institute{} \maketitle \thispagestyle{empty} +\markright{Instructions for Using Springer's \texttt{llncs} Class} % \section{Installation} % @@ -335,6 +337,25 @@ environment, please use the syntax \spnewtheorem*{<env_nam>}{<caption>}{<cap_font>}{<body_font>} \end{verbatim} +% +\section{Credits and Acknowledgments} +\label{credits} +\DescribeEnv{credits} +Credits and acknowledgments should be placed at the end of the paper, +just before the references. Please use the \verb|credits| environment +to make sure that both text and run-in headings are printed in small +font size. + +\DescribeMacro{\ackname}\DescribeMacro{\discintname} +There are two possible \verb|\subsubsection| headings to provide such +statements: ``Acknowledgments'' and ``Disclosure of Interests''. +The \verb|\ackname| and \verb|\discintname| macros are used to generate +the correct run-in titles. + +General acknowledgments can be provided in the (optional) paragraph +``Acknowledgments'', which is followed by the (mandatory) paragraph +``Disclosure of Interests'', where any competing interests of the authors +are to be declared. % @@ -381,8 +402,7 @@ file \verb|splncs04.bst| that comes with the \texttt{llncs} document class. You simply need to add \verb|\bibliographystyle{splncs04}| to your document. DOIs should be provided in the doi field of your .bib database. {\sc Bib}\TeX{} will then automatically add them to your -references. Please note that we do not provide an option to -implement +references. \DescribeMacro{\doi}If you do not use {\sc Bib}\TeX{}, you can include a DOI with the \verb|\doi| command: diff --git a/macros/latex/contrib/llncs/splncs04.bst b/macros/latex/contrib/llncs/splncs04.bst index 3be8de3ac7..7d63c492d9 100644 --- a/macros/latex/contrib/llncs/splncs04.bst +++ b/macros/latex/contrib/llncs/splncs04.bst @@ -1,4 +1,4 @@ -%% BibTeX bibliography style `splncs03' +%% BibTeX bibliography style `splncs04' %% %% BibTeX bibliography style for use with numbered references in %% Springer Verlag's "Lecture Notes in Computer Science" series. @@ -6,7 +6,7 @@ %% more details of the suggested reference format.) Note that this %% file will not work for author-year style citations. %% -%% Use \documentclass{llncs} and \bibliographystyle{splncs03}, and cite +%% Use \documentclass{llncs} and \bibliographystyle{splncs04}, and cite %% a reference with (e.g.) \cite{smith77} to get a "[1]" in the text. %% %% This file comes to you courtesy of Maurizio "Titto" Patrignani of diff --git a/macros/latex/contrib/mitthesis/MIT-Thesis.pdf b/macros/latex/contrib/mitthesis/MIT-Thesis.pdf Binary files differindex 803814575a..f0964659d8 100644 --- a/macros/latex/contrib/mitthesis/MIT-Thesis.pdf +++ b/macros/latex/contrib/mitthesis/MIT-Thesis.pdf diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/MIT-Thesis.tex b/macros/latex/contrib/mitthesis/MIT-thesis-template/MIT-Thesis.tex index 80f6598e83..2faced3b18 100644 --- a/macros/latex/contrib/mitthesis/MIT-thesis-template/MIT-Thesis.tex +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/MIT-Thesis.tex @@ -4,7 +4,7 @@ % This file is MIT-Thesis.tex, a LaTeX template for formatting an MIT thesis with the mitthesis class. % -% Version: 1.09, 2023/09/22 +% Version: 1.11, 2023/11/02 % % Author: John H. Lienhard, copyright 2023. Reuse under the MIT license: https://ctan.org/license/mit @@ -60,11 +60,10 @@ \DefineBibliographyStrings{english}{url= \textsc{url} , }% replaces default "[Online]. Available" by "URL" -\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <================= CHANGE +\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <= CHANGE -%% These two commands enable line breaks in long URLs in the bibliography (delete if you don't want that) -\setcounter{biburllcpenalty}{7000} -\setcounter{biburlucpenalty}{8000} +%% to avoid split urls and stretched white space, you can set the bibliography ragged-right: +%\appto{\bibsetup}{\raggedright} % biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. % documentation is here: https://ctan.org/pkg/biblatex @@ -103,12 +102,12 @@ %% to change the line separation, the most attractive results will be obtained by changing the %% leading in proportion to the the current font size, rather than just doubling the space. -%% The setspace package provides a tool for changing line separation (use thesetwo here) +%% The setspace package provides a tool for changing line separation. Use these two commands here: % % \usepackage{setspace}% documentation at https://ctan.org/pkg/setspace % \setstretch{1.1}% you can choose some other value for the stretch of space between lines % -%% Use the these commands AFTER the frontmatter +%% Use one or more of the these commands AFTER the frontmatter % % \onehalfspacing % \doublespacing @@ -155,42 +154,37 @@ % \Author{Author full name}{Author department}[Author's first PREVIOUS degree][Author's second PREVIOUS degree][... % Note that third, fourth, fifth, and sixth arguments are optional [] and may be omitted -% note on names: most of the following names are made up; Silas Holman was a professor at MIT in the 19th century. +% note on names: most of the following names are made up; Silas Holman was a physics professor at MIT in the 19th century. -\Author{Silas W. Holman}{Department of Physics}%[B.S. Physics, MIT, 1876][MBA, Ferengi School of Management, 2022] -%\Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020][MBA, Ferengi School of Management, 2022] -%\Author{Thurston Howell III}{Department of Economics} +\Author{Silas W. Holman}{Department of Physics} +% \Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020] +% \Author{Thurston Howell III}{Department of Economics}[MBA, Ferengi School of Management, 2022] % Use once for each degree fulfilled by thesis % For two degrees from one department, leave the department argument blank for the second degree {}. -\Degree{Bachelor of Science in Physics}{Department of Physics} -%\Degree{Master of Science in Physics}{} -%\Degree{Bachelor of Science in Mechanical Engineering}{Department of Mechanical Engineering} +% \Degree{Bachelor of Science in Physics}{Department of Physics} +% \Degree{Master of Science in Physics}{} +\Degree{Bachelor of Science in Mechanical Engineering}{Department of Mechanical Engineering} % If there is more than one supervisor, use the \Supervisor command for each. \Supervisor{Edward C. Pickering}{Professor of Physics} -%\Supervisor{Secunda Castor}{Professor of Research} -%\Supervisor{Quintus Castor}{Professor of Log Dams} +% \Supervisor{Secunda Castor}{Professor of Research} +% \Supervisor{Quintus Castor}{Professor of Log Dams} % Professor who formally accepts theses for your department (e.g., the Graduate Officer, Professor Sméagol,...) % If more than one department, use more than once % **If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank {}.** -\Acceptor{Primus Castor}{Professor of Wetlands Engineering}{Undergraduate Officer, Department of Physics} -%\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} -%\Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} - -% If your title page is overflowing (from too many names, degrees, etc.), you can scale -% down the Signature block at the bottom with this command, or use another creative solution... -%\SignatureBlockSize{\small} %\SignatureBlockSize{\footnotesize} + \Acceptor{Primus Castor}{Professor of Wetlands Engineering}{Undergraduate Officer, Department of Physics} +% \Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} +% \Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} % Usage: \DegreeDate{Month}{year} -% Valid degree months are September, February, or June. +% Valid degree months are September, February, or June \DegreeDate{June}{1876} % Date that final thesis is submitted to department \ThesisDate{May 18, 1876} - %%%%%% Choose whether to have a CREATIVE COMMONS License %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % If you are using a cc license, put details of your cc license here. @@ -198,15 +192,47 @@ % \CClicense{CC BY-NC-ND 4.0}{https://creativecommons.org/licenses/by-nc-nd/4.0/} % + +%%%%%%% Solutions for overflowing titlepage %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% If your title page is overflowing (from too many names, degrees, etc.): +% +% (a) you can reduce the 12pt and 18pt skips between various blocks to 6pt with this command: +% +% \Tighten +% +% (b) you can scale down the Signature block at the bottom with this command: +% +% \SignatureBlockSize{\small} %or this one \SignatureBlockSize{\footnotesize} +% +% (c) you can put the acceptor name and title onto two lines, rather than three like this: +% +% \Acceptor{Tertius Castor}{Professor and Graduate Officer, Department of Research}{} +% \Acceptor{Quarta Castor}{Professor and Graduate Officer, Department of Mechanical Engineering}{} +% +% (d) you can change the font size of the the author name[s] with +% +% \AuthorNameSize{\normalsize} +% +% (e) and you can omit any previous degrees from the title page, instead mentioning them in the Biosketch + +% Also, if you prefer to keep the text toward the top of the page with most white space at the bottom, you +% can you this command to squash all of the vertical glue (stretchy space) with this command: +% +% \Squash +% +% This command is useful when the text has not already reach the bottom of the page, since the glue gets squashed automatically +% when the page is too full. + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Titlepage +%%% Make titlepage \maketitle %%%%%%%%% Contents that you need to write follows %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \includeonly{acknowledgments,biography,chapter1,chapter2,...,appendixa,...} -% for usage, see https://latexref.xyz/dev/latex2e.html#g_t_005cinclude-_0026-_005cincludeonly +% for usage, see https://latexref.xyz/_005cinclude-_0026-_005cincludeonly.html %%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -230,7 +256,7 @@ %%% Chapters of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% If you want to use "double spacing", you can start here... +%% If you want to use "double spacing", you should start here... \include{chapter1}% .tex extension is presumed %\include{chapter2} @@ -246,15 +272,14 @@ %%% Bibliography %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -{ \raggedright% to avoid stretched white space and split urls; DELETE THIS if you prefer justified text -% \printbibliography[title={References},heading=bibintoc] -} + % biblatex also supports chapter-by-chapter bibliography, https://tex.stackexchange.com/a/296502/119566 % see the biblatex manual, section 3.14.3 %%%% Option for natbib %%%%%%%%%%%%% + %% use an appropriate style (.bst) and your own .bib file[s] %\bibliographystyle{plainnat} diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/acknowledgments.tex b/macros/latex/contrib/mitthesis/MIT-thesis-template/acknowledgments.tex index 3e41684a12..a1ceaacffd 100644 --- a/macros/latex/contrib/mitthesis/MIT-thesis-template/acknowledgments.tex +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/acknowledgments.tex @@ -1,11 +1,11 @@ %% acknowledgments.tex % From mitthesis package -% Version: 1.00, 2023/06/17 +% Version: 1.01, 2023/10/16 % Documentation: https://ctan.org/pkg/mitthesis \chapter*{Acknowledgments} -\addcontentsline{toc}{chapter}{\protect\textbf{Acknowledgments}} +\addcontentsline{toc}{chapter}{Acknowledgments} Write your acknowledgments here. diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/biography.tex b/macros/latex/contrib/mitthesis/MIT-thesis-template/biography.tex index 27c63e067c..30e4784525 100644 --- a/macros/latex/contrib/mitthesis/MIT-thesis-template/biography.tex +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/biography.tex @@ -1,7 +1,12 @@ +%% biography.tex %% This section is optional +% From mitthesis package +% Version: 1.01, 2023/10/16 +% Documentation: https://ctan.org/pkg/mitthesis + \chapter*{Biographical Sketch} -\addcontentsline{toc}{chapter}{\protect\textbf{Biographical Sketch}} +\addcontentsline{toc}{chapter}{Biographical Sketch} Silas Whitcomb Holman was born in Harvard, Massachusetts on January 20, 1856. He received his S.B. degree in Physics from MIT in 1876, and then joined the MIT Department of Physics as an Assistant. He became Instructor in Physics in 1880, Assistant Professor in 1882, Associate Professor in 1885, and Full Professor in 1893. Throughout this period, he struggled with increasingly severe rheumatoid arthritis. At length, he was defeated, becoming Professor Emeritus in 1897 and dying on April 1, 1900. diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/chapter1.tex b/macros/latex/contrib/mitthesis/MIT-thesis-template/chapter1.tex index f55a984123..cc7683744e 100644 --- a/macros/latex/contrib/mitthesis/MIT-thesis-template/chapter1.tex +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/chapter1.tex @@ -1,5 +1,5 @@ % From mitthesis package -% Version: 1.03, 2023/08/10 +% Version: 1.04, 2023/10/19 % Documentation: https://ctan.org/pkg/mitthesis @@ -7,7 +7,7 @@ \lipsum[1-2] Postremo aliquos futuros suspicor, qui me ad alias litteras vocent, genus hoc scribendi, etsi sit elegans, personae tamen et dignitatis esse negent~\cite{DKE1969,ww1920,kirk2288a,churchill1948,gibbs1863}. -\section[A section discussing the first issue: \(\textrm{J}/\psi\)]{A section discussing the first issue: \ifpdftex\(\bm{J}/\bm{\psi}\)\else{\(\symbfup{J/\psi}\)}\fi} +\section[A section discussing the first issue: \(J/\psi\)]{A section discussing the first issue: \ifpdftex\(\bm{J}/\bm{\psi}\)\else{\(\symbfup{J/\psi}\)}\fi} We begin with some ideas from the literature \cite{Fong2015,sharpe1}. @@ -19,20 +19,21 @@ We begin with some ideas from the literature \cite{Fong2015,sharpe1}. \lipsum[4] And more citations~\cite{sharpe1,GSL}. Then we write some more and include our citations~\cite{Swaminathan2017IDABRO,dlmf,amsmath}. The configuration is shown in Fig.~\ref{fig:golden2}. -%%%%%%%%%%%%%%%%% begin full width figure %%%%%%%%%%%%%%%%%%%%%%%%%%% -\begin{figure*}[t] +%%%%%%%%%%%%%%%%% begin figure %%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{figure}[t] +% sample images are from mwe package, but should be found by latex in the tex tree w/o loading that package \begin{subfigure}[c]{0.495\textwidth} -\centering{\includegraphics[width=0.99\textwidth]{example-image-c}}% +\centering{\includegraphics[alt={sample image},width=0.99\textwidth]{example-image-c}}% \subcaption{\label{fig:golden}} \end{subfigure} %%%%%%%% don't leave a break here \begin{subfigure}[c]{0.495\textwidth} -\centering{\includegraphics[width=0.99\textwidth]{example-image-c}}% +\centering{\includegraphics[alt={sample image},width=0.99\textwidth]{example-image-c}}% \subcaption{\label{fig:golden2}}% \end{subfigure}% \caption{A figure with two subfigures: (a) first subfigure; (b) second subfigure.\label{fig:4}} -\end{figure*} -%%%%%%%%%%%%%%%%%%% end full width figure %%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\end{figure} +%%%%%%%%%%%%%%%%%%% end figure %%%%%%%%%%%%%%%%%%%%%%%%%%%%% \lipsum[4] @@ -42,35 +43,27 @@ We begin with some ideas from the literature \cite{Fong2015,sharpe1}. \subsubsection{A subsubsection} \lipsum[7] -{\small \begin{equation}\label{eqn:WT1} -\begin{Vmatrix} -\dfrac\varphi{(\varphi_1,\varepsilon_1)} & 0 & \hdotsfor{4} & 0 & \\[4\jot] -\dfrac{\varphi k_{21}}{(\varphi_2,\varepsilon_1)} & \dfrac\varphi{(\varphi_2,\varepsilon_2)} & 0 & \hdotsfor{3} & 0 \\[4\jot] -\dfrac{\varphi k_{31}}{(\varphi_3,\varepsilon_1)} &\dfrac{\varphi k_{32}}{(\varphi_3,\varepsilon_2)} & \dfrac\varphi{(\varphi_3,\varepsilon_3)}& 0 & \hdotsfor{2} & 0 \\[\jot] -\vdots & & & \smash{\rotatebox{15}{$\ddots$}} & & & \vdots \\[\jot] -\dfrac{\varphi k_{n-2\, 1}}{(\varphi_{n-2},\varepsilon_1)} & -\dfrac{\varphi k_{n-2\, 2}}{(\varphi_{n-2},\varepsilon_2)} &\hdotsfor{1} & \dfrac{\varphi k_{n-2\,n-3}}{(\varphi_{n-2},\varepsilon_{n-3})} & \dfrac\varphi{(\varphi_{n-2},\varepsilon_{n-2})}& 0& 0 \\[4\jot] -\dfrac{\varphi k_{n-1\, 1}}{(\varphi_{n-1},\varepsilon_1)} & \dfrac{\varphi k_{n-1\, 2}}{(\varphi_{n-1},\varepsilon_2)} &\hdotsfor{2} & -\dfrac{\varphi k_{n-1\,n-2}}{(\varphi_{n-1},\varepsilon_{n-2})}& \dfrac{\varphi}{(\varphi_{n-1},\varepsilon_{n-1})} & 0 \\[4\jot] -\dfrac{\varphi k_{n1}}{(\varphi_n,\varepsilon_1)} & \dfrac{\varphi k_{n2}}{(\varphi_n,\varepsilon_2)} & \hdotsfor{3} & -\dfrac{\varphi k_{n\,n-1}}{(\varphi_n,\varepsilon_{n-1})} & \dfrac{\varphi}{(\varphi_n,\varepsilon_n)} -\end{Vmatrix} +L(\ifpdftex\bm{A}\else\symbfup{A}\fi) = \begin{pmatrix} +\dfrac\varphi{(\varphi_1,\varepsilon_1)} & 0 & \hdotsfor{3} & 0 \\[4\jot] +\dfrac{\varphi k_{2,1}}{(\varphi_2,\varepsilon_1)} & \dfrac\varphi{(\varphi_2,\varepsilon_2)} & 0 & \hdotsfor{2} & 0 \\[4\jot] +\dfrac{\varphi k_{3,1}}{(\varphi_3,\varepsilon_1)} & \dfrac{\varphi k_{3,2}}{(\varphi_3,\varepsilon_2)} & \dfrac\varphi{(\varphi_3,\varepsilon_3)} & 0 & \hdotsfor{1} & 0 \\[\jot] +\vdots & & & \smash{\rotatebox{15}{$\ddots$}} & & \vdots \\[\jot] +\dfrac{\varphi k_{n-1, 1}}{(\varphi_{n-1},\varepsilon_1)} & \dfrac{\varphi k_{n-1, 2}}{(\varphi_{n-1},\varepsilon_2)} & \hdotsfor{1} & + \dfrac{\varphi k_{n-1,n-2}}{(\varphi_{n-1},\varepsilon_{n-2})} & \dfrac{\varphi}{(\varphi_{n-1},\varepsilon_{n-1})} & 0 \\[4\jot] +\dfrac{\varphi k_{n,1}}{(\varphi_n,\varepsilon_1)} & \dfrac{\varphi k_{n,2}}{(\varphi_n,\varepsilon_2)} & \hdotsfor{2} & + \dfrac{\varphi k_{n,n-1}}{(\varphi_n,\varepsilon_{n-1})} & \dfrac{\varphi}{(\varphi_n,\varepsilon_n)} +\end{pmatrix} \end{equation} -}% -\section{Description our paradigm~\cite{GSL}}\label{ch1:theidea} +\section{Description our paradigm}\label{ch1:theidea} \lipsum[8] No dissertation is complete without footnotes.\footnote{First footnote. See section~\ref{sec:stratified-flow}.}\footnote{Another interesting detail.}\footnote{And another really important idea to have in mind~\cite{reynolds1958,clauser56,lienhard2020,johnson1980,johnson1965,mpl}.} \begin{figure}[t] -%\includegraphics[width=6cm]{example-image-a} -%\includegraphics[width=3cm]{example-image-golden} -%\includegraphics[width=3cm]{example-grid-100x100pt} -\centering\includegraphics[height=5cm]{example-image-b} -%\includegraphics[scale=0.5]{example-image-c} -%\includegraphics[width=3cm]{example-image} -\caption{Caption text\label{example-image-b}} +% sample image is from mwe package, but should be found by latex in the tex tree w/o loading that package +\centering\includegraphics[alt={sample image},width=6.67cm]{example-image-b} +\caption{Caption text\label{example-image-b}~\cite{GSL}.} \end{figure} @@ -111,8 +104,6 @@ $\rho \neq \text{fn}(p)$: Baroclinic generation of vorticity accounts for the sea breeze and various other atmospheric currents in which temperature, rather than pressure, creates density gradients. Further, this phenomenon accounts for ocean currents in straits joining more and less saline seas, with surface currents flowing from the fresher to the saltier water and with bottom current going oppositely. -%%%%%%%%%%%%%%%% end full width table %%%%%%%%%%%%%%%%%%% - %% Nomenclature list is optional % % This environment takes three optional arguments: @@ -131,11 +122,12 @@ Baroclinic generation of vorticity accounts for the sea breeze and various other \entry{$\rho$}{mass density [kg m$^{-3}$]} \end{nomenclature} -%%%%%%%%%%%%%%% begin full width table %%%%%%%%%%%%%%%%%% -\begin{table*}[t] +%%%%%%%%%%%%%%% begin table %%%%%%%%%%%%%%%%%% +\begin{table}[t] \caption{The error function and complementary error function}\label{tab:1}% \centering{% \begin{tabular*}{0.8\textwidth}{@{\hspace*{1.5em}}@{\extracolsep{\fill}}ccc!{\hspace*{3.em}}ccc@{\hspace*{1.5em}}} +\\[-0.5em] \toprule \multicolumn{1}{@{\hspace*{1.5em}}c}{$x$\rule{0pt}{8pt}} & \multicolumn{1}{c}{$\text{erf}(x)$} & @@ -159,5 +151,6 @@ Baroclinic generation of vorticity accounts for the sea breeze and various other \bottomrule \end{tabular*} }% -\end{table*} +\end{table} +%%%%%%%%%%%%%%%% end table %%%%%%%%%%%%%%%%%%% diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/mydesign.tex b/macros/latex/contrib/mitthesis/MIT-thesis-template/mydesign.tex index 5694b372e4..2a612d88a1 100644 --- a/macros/latex/contrib/mitthesis/MIT-thesis-template/mydesign.tex +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/mydesign.tex @@ -1,7 +1,7 @@ % From mitthesis package % Documentation: https://ctan.org/pkg/mitthesis -\ProvidesFile{mydesign.tex}[2023/09/12 v1.02 Typographic design options for thesis] +\ProvidesFile{mydesign.tex}[2023/10/11 v1.03 Typographic design options for thesis] %%%%%%%%%% Color support %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -27,7 +27,7 @@ } % \ifmit@lineno - \renewcommand{\linenumberfont}{\sffamily\tiny\color{violet}}% line numbers will be sans-serif, tiny, and violet + \renewcommand{\linenumberfont}{\sffamily\mdseries\tiny\color{violet}}% line numbers will be sans-serif, medium weight, tiny, and violet \fi } diff --git a/macros/latex/contrib/mitthesis/README.md b/macros/latex/contrib/mitthesis/README.md index 89113f7341..9ead4e57e0 100644 --- a/macros/latex/contrib/mitthesis/README.md +++ b/macros/latex/contrib/mitthesis/README.md @@ -1,7 +1,7 @@ #mitthesis --- A LaTeX template for an MIT thesis# - v1.10 dated 2023/09/23 + v1.11 dated 2023/11/02 ####Overview#### This class provides a LaTeX template to format an MIT thesis according to @@ -53,6 +53,19 @@ --- ####Change log#### + + v1.11 (02 November 2023) + - Revise all skips on cover page to better group material while allowing for glue compression as content increases; increase font size of author name; provide user macros for control cover page spacing and author name font. + - use \\mdseries for linenumbers in all cases, rather than using the locally active series + - remove \\raggedright in favor of \\bibsetup for bibliography in MIT-Thesis.tex + - add backward compatibility for alt tag of \\includegraphics for pre-2021/11/15 distributions, add alt tag in chapter1.tex + - edit all occurrences of \\addcontentsline + - rearrange eqn:WT1 in chapter1.tex to avoid margin overflow with some fonts, eliminate associated work-around. + - edit tab:1 and increase space below caption; edit fig:golden + - edit nomenclature environment to better accommodate [future] tagged pdf + - remove vertical [1em] after final \\Acceptor (thanks to Gustav Pettersson) + - edit documentation + v1.10 (23 September 2023) - Minor edit of documentation diff --git a/macros/latex/contrib/mitthesis/examples/cover_page_samples/No_cc_license.pdf b/macros/latex/contrib/mitthesis/examples/cover_page_samples/No_cc_license.pdf Binary files differindex 340044523a..304d89113b 100644 --- a/macros/latex/contrib/mitthesis/examples/cover_page_samples/No_cc_license.pdf +++ b/macros/latex/contrib/mitthesis/examples/cover_page_samples/No_cc_license.pdf diff --git a/macros/latex/contrib/mitthesis/examples/cover_page_samples/One_author_one_degree.pdf b/macros/latex/contrib/mitthesis/examples/cover_page_samples/One_author_one_degree.pdf Binary files differindex 1fd375e31a..737603f89c 100644 --- a/macros/latex/contrib/mitthesis/examples/cover_page_samples/One_author_one_degree.pdf +++ b/macros/latex/contrib/mitthesis/examples/cover_page_samples/One_author_one_degree.pdf diff --git a/macros/latex/contrib/mitthesis/examples/cover_page_samples/One_author_two_degrees.pdf b/macros/latex/contrib/mitthesis/examples/cover_page_samples/One_author_two_degrees.pdf Binary files differindex aebc0eb3f3..7ab9882820 100644 --- a/macros/latex/contrib/mitthesis/examples/cover_page_samples/One_author_two_degrees.pdf +++ b/macros/latex/contrib/mitthesis/examples/cover_page_samples/One_author_two_degrees.pdf diff --git a/macros/latex/contrib/mitthesis/examples/cover_page_samples/One_author_two_degrees_from_one_department.pdf b/macros/latex/contrib/mitthesis/examples/cover_page_samples/One_author_two_degrees_from_one_department.pdf Binary files differindex 601ef58e9c..8950c7ed3c 100644 --- a/macros/latex/contrib/mitthesis/examples/cover_page_samples/One_author_two_degrees_from_one_department.pdf +++ b/macros/latex/contrib/mitthesis/examples/cover_page_samples/One_author_two_degrees_from_one_department.pdf diff --git a/macros/latex/contrib/mitthesis/examples/cover_page_samples/Two_authors_one_degree.pdf b/macros/latex/contrib/mitthesis/examples/cover_page_samples/Two_authors_one_degree.pdf Binary files differindex 98db2f7306..61a2b63115 100644 --- a/macros/latex/contrib/mitthesis/examples/cover_page_samples/Two_authors_one_degree.pdf +++ b/macros/latex/contrib/mitthesis/examples/cover_page_samples/Two_authors_one_degree.pdf diff --git a/macros/latex/contrib/mitthesis/examples/cover_page_samples/Two_authors_two_degrees.pdf b/macros/latex/contrib/mitthesis/examples/cover_page_samples/Two_authors_two_degrees.pdf Binary files differindex 509ca6bf17..c9ccbd8a9a 100644 --- a/macros/latex/contrib/mitthesis/examples/cover_page_samples/Two_authors_two_degrees.pdf +++ b/macros/latex/contrib/mitthesis/examples/cover_page_samples/Two_authors_two_degrees.pdf diff --git a/macros/latex/contrib/mitthesis/examples/cover_page_samples/latex_sources/Two_authors_two_degrees.tex b/macros/latex/contrib/mitthesis/examples/cover_page_samples/latex_sources/Two_authors_two_degrees.tex index 930b218b1c..5e004fe134 100644 --- a/macros/latex/contrib/mitthesis/examples/cover_page_samples/latex_sources/Two_authors_two_degrees.tex +++ b/macros/latex/contrib/mitthesis/examples/cover_page_samples/latex_sources/Two_authors_two_degrees.tex @@ -3,6 +3,7 @@ % !BIB program = biber % Author: John H. Lienhard (c) 2023. Reuse under the MIT license: https://ctan.org/license/mit +% Version 1.01, 2023/10/27 % Documentation: https://ctan.org/pkg/mitthesis @@ -91,13 +92,16 @@ % Professor who formally accepts theses for your department (e.g., the Graduate Officer, Professor Sméagol,...) % If more than one department, use more than once % If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank {}. -\Acceptor{Primus Castor}{Professor of Wetlands Engineering}{Graduate Officer, Department of Physics} -\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Mechanical Engineering} +\Acceptor{Primus Castor}{Professor and Graduate Officer, Department of Physics}{} +\Acceptor{Tertius Castor}{Professor and Graduate Officer, Department of Mechanical Engineering}{} %\Acceptor{Quarta Castor}{Professor of Lodge Building}{Undergraduate Officer, Department of Mechanical Engineering} -% If your title page is overflowing (from too many names, degrees, etc.), you can scale -% down the Signature block at the bottom with this command, or use another creative solution... +% In this example, several steps have been taken to make the content fit on the title page! The \Acceptors have been confined to two +% lines in the above commands, the signature block font size is reduced, the skips are tightened, the author names use normal font size, +% and Luisa's previous degrees are not shown. \SignatureBlockSize{\small} %\SignatureBlockSize{\footnotesize} +\Tighten +\AuthorNameSize{\normalsize} % Usage: \DegreeDate{Month}{year} % Valid degree months are September, February, or June. diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Defaultfonts.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Defaultfonts.pdf Binary files differindex fab86f8556..e55782bbb4 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Defaultfonts.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Defaultfonts.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Fira_Newtxsf.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Fira_Newtxsf.pdf Binary files differindex e862497f6c..2d802b2a0e 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Fira_Newtxsf.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Fira_Newtxsf.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Heros-Stix2.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Heros-Stix2.pdf Binary files differindex 6d0ff66249..09a93e218b 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Heros-Stix2.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Heros-Stix2.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Libertine.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Libertine.pdf Binary files differindex cc9163c2d4..45b6d25430 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Libertine.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Libertine.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Lucida.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Lucida.pdf Binary files differindex 2d57d358db..383bbfd3a9 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Lucida.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Lucida.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Newtx-sans-text.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Newtx-sans-text.pdf Binary files differindex 9e3f99af1f..3c8fc160ba 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Newtx-sans-text.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Newtx-sans-text.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Newtx.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Newtx.pdf Binary files differindex 40da2bac86..142d3afc0d 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Newtx.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Newtx.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Stix2.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Stix2.pdf Binary files differindex cb1c5cee2e..46b54f1a07 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Stix2.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Stix2.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Termes-stix2.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Termes-stix2.pdf Binary files differindex bab4183c99..e4306cb237 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Termes-stix2.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Termes-stix2.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Termes.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Termes.pdf Binary files differindex 808306fb9f..93e1db4400 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Termes.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Termes.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Defaultfonts.tex b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Defaultfonts.tex index f924303a9f..8b34293ed2 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Defaultfonts.tex +++ b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Defaultfonts.tex @@ -20,7 +20,7 @@ } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\documentclass[twoside]{mitthesis} %,fontset=libertine ,fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 +\documentclass[]{mitthesis} %,fontset=libertine ,fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 % % option [twoside] gives facing-page behavior for printing; omitting twoside will eliminate even-numbered blank pages. % option [lineno] provides line numbers, as for editing diff --git a/macros/latex/contrib/mitthesis/mitthesis-doc/mitthesis-doc.pdf b/macros/latex/contrib/mitthesis/mitthesis-doc/mitthesis-doc.pdf Binary files differindex bea3c92441..611f9c69ac 100644 --- a/macros/latex/contrib/mitthesis/mitthesis-doc/mitthesis-doc.pdf +++ b/macros/latex/contrib/mitthesis/mitthesis-doc/mitthesis-doc.pdf diff --git a/macros/latex/contrib/mitthesis/mitthesis-doc/mitthesis-doc.tex b/macros/latex/contrib/mitthesis/mitthesis-doc/mitthesis-doc.tex index 879a8e1491..2b434f49a7 100644 --- a/macros/latex/contrib/mitthesis/mitthesis-doc/mitthesis-doc.tex +++ b/macros/latex/contrib/mitthesis/mitthesis-doc/mitthesis-doc.tex @@ -1,7 +1,7 @@ % !TEX TS-program = lualatex % !TEX encoding = UTF-8 Unicode -% Version date: 23 September 2023 +% Version date: 02 November 2023 \DocumentMetadata { @@ -226,9 +226,9 @@ This template is suitable for MIT theses of all types and at all levels. The tit \subsection*{Background} -The original \LaTeX\ 2.09 template was written by Stephen Gildea in the late 1980s (in CTAN, \href{https://mirrors.ctan.org/obsolete/macros/latex209/contrib/mitthesis/mitthesis.sty}{here}). That template was edited by many later students. +The original MIT Thesis template was written \LaTeX\ 2.09 by Stephen Gildea in the late 1980s (in CTAN, \href{https://mirrors.ctan.org/obsolete/macros/latex209/contrib/mitthesis/mitthesis.sty}{here}). That template was edited by many later students. -LaTeX has changed greatly since the original MIT thesis template was written. \LaTeX\ 2.09 was replaced by \LaTeX2e\ in 1994. New engines were developed, particularly pdfTeX during the 1990s and Unicode-aware engines in the decades that followed. Many packages and fonts were developed to accompany the original platform, particularly after 2000; and major updates to the LaTeX kernel began in 2018. Over the years, the MIT Libraries have changed the required format several times, especially as electronic thesis submission has become the norm. The original template served MIT well; but by the early 2020s, it was substantially out of date. That situation motivated the creation of a new template. +LaTeX has changed greatly since the original MIT thesis template was written. \LaTeX\ 2.09 was replaced by \LaTeXe\ in 1994. New engines were developed, particularly pdfTeX during the 1990s and Unicode-aware engines in the decades that followed. Many packages and fonts were developed to accompany the original platform, particularly after 2000; and major updates to the LaTeX kernel began in 2018. Over the years, the MIT Libraries have changed the required format several times, especially as electronic thesis submission has become the norm. The original template served MIT well; but by the early 2020s, it was substantially out of date. That situation motivated the creation of a new template. This new MIT thesis template was developed in 2023 at the request of the MIT Libraries. The title and abstract pages strictly follow the current \href{https://libraries.mit.edu/distinctive-collections/thesis-specs/}{requirements of the Libraries}. The underlying code is entirely new, with extensive use of \texttt{expl3} syntax. @@ -271,7 +271,7 @@ The commands that define the title page are as follow. \item \verb|\Author{author full name}{author department}[1st PREVIOUS degree][2nd...| \linebreak Note that third, fourth, fifth, and sixth arguments are optional [..] and may be omitted. Use once for each author. -\item \verb|\Degree{name of degree}{department giving degree}|. Use once for each degree fulfilled by thesis. If the thesis satisfies two degrees from one department, leave the department argument blank for the \textit{second} degree: \verb|\Degree{2nd degree name}{}| +\item \verb|\Degree{name of degree}{department giving degree}|. Use once for each degree fulfilled by the thesis. If the thesis satisfies two degrees from one department, leave the department argument blank for the \textit{second} degree: \verb|\Degree{2nd degree name}{}| \item \verb|\Supervisor{supervisor name}{supervisor title}|. Use once for each supervisor. @@ -281,8 +281,6 @@ Note that third, fourth, fifth, and sixth arguments are optional [..] and may be \item \verb|\ThesisDate{date}|. Date that your final thesis is submitted to the department. \end{itemize} -\paragraph{Overflowing title page.} If your title page overflows (from too many authors, degrees, etc.), you can scale down the signature block at the bottom by issuing this command: \verb|\SignatureBlockSize{\small}|. You may also compress the acceptor fields by putting the position into the 2\textsuperscript{nd} argument and leaving the 3\textsuperscript{rd} argument blank:\verb|\Acceptor{acceptor name}{acceptor title and thesis related position}{}|. - \subsection*{Copyright license} If you wish to make your thesis available under a Creative Commons License, issue the following command between @@ -291,6 +289,30 @@ If you wish to make your thesis available under a Creative Commons License, issu \vskip 5pt \noindent\quad\verb|\CClicense{CC BY-NC-ND 4.0}{https://creativecommons.org/licenses/by-nc-nd/4.0/}|. +\subsection*{Overflowing title page: managing space} If your title page overflows the vertical space (from too many authors, degrees, previous degrees, etc.), you can using some or all of the following techniques. The commands must be given before \verb|\maketitle|. +\begin{enumerate} + \item Reduce the 12pt and 18pt skips between the various blocks of text to 6pt with this command: + \vskip 5pt + \noindent\verb|\Tighten| + \item Reduce the font size in the signature block with this command: + \vskip 5pt + \noindent\verb|\SignatureBlockSize{\small}| + \item Put the acceptor name and title onto two lines, rather than three, by putting the acceptor's position into the 2\textsuperscript{nd} argument and leaving the 3\textsuperscript{rd} argument blank: + \vskip 5pt + {\small\noindent\verb|\Acceptor{Tertius Castor}{Professor and Graduate Officer, Department of Research}{}|} + \item Reduce the font size of the the author name[s] from \verb|\large| to \verb|\normalsize| with this command: + \vskip 5pt + \noindent\verb|\AuthorNameSize{\normalsize}| + \item Omit previous degrees from the title page, instead mentioning them in the biographical sketch. +\end{enumerate} + +Also, if you prefer to keep the text toward the top of the page with most white space at the bottom, you +can use this command to squash the vertical glue (\TeX's stretchy space): + \vskip 5pt + \quad\verb|\Squash| + \vskip 5pt +\noindent This command is useful when the text has not already reach the bottom of the page, since the glue gets squashed automatically when the page is too full. + \section*{PACKAGE OPTIONS} Package options may be specified for \verb|\documentclass[..]{mitthesis}|. These options are described in Table~\ref{tab:1} and the subsections that follow. @@ -380,9 +402,10 @@ iftex & check which \LaTeX\ engine is running& macros to check which engine, e geometry & set page size and margins & can use \verb|\newgeometry| in \texttt{mydesign.tex}\\ graphicsx& support for inserting images & use to include graphics\\ hyperref & support for hyperlinks and metadata & must complete setup in preamble\\ +mathtools& loads and extends \texttt{amsmath} & \textbf{many useful math macros available}. See documentation for \texttt{amsmath} and \texttt{mathtools} \\[0.7em] +\midrule hyperxmp & fallback if no \verb|\DocumentMetadata{..}|& ---\\ kvoptions& key values for systems pre 2022/11/01 & ---\\ -mathtools& loads and extends \texttt{amsmath} & \textbf{many useful math macros available}. See documentation for \texttt{amsmath} and \texttt{mathtools} \\ xparse & for systems older than 2020/10/01 & macros to define new commands\\[0.7em] \midrule lineno & loaded if class option is given & keyvalue \texttt{lineno} will give line numbers; \texttt{lineno} package has additional commands that control line numbering\\[3em] @@ -453,11 +476,14 @@ The packages called by \texttt{mitthesis} are listed in Table~\ref{tab:3} on pag \section*{USE OUTSIDE MIT} If you wish to adapt this template for use at a different institution, you can put the following commands in your preamble. \begin{itemize} -\item Use \verb|\Institution{Your Institution}| to change MIT to your own institution on the title page. {\small\textit{New with v1.06.}} +\item Use \verb|\Institution{Your Institution}| to change MIT to your own institution on the title page. %{\small\textit{New with v1.06.}} \item Use \verb|\maketitle*| (in place of \verb|\maketitle|) to drop the MIT copyright permission statement -\item Omitting \verb|\Acceptor| commands will drop the ``Accepted by:'' field. To suppress the resultant error message, put \verb|\SuppressAcceptorError| before \verb|\maketitle*|. \newline{\small\textit{New with v1.06.}} +\item If your institution issues degrees in months other than February, May, June, or September, you can still put those months into the +\verb|\DegreeDate| command. To suppress the resulting error message, put \verb|\SuppressMonthError| before \verb|\maketitle*|. %\newline{\small\textit{New with v1.11.}} + +\item Omitting \verb|\Acceptor| commands will drop the ``Accepted by:'' field. To suppress the resultant error message, put \verb|\SuppressAcceptorError| before \verb|\maketitle*|. %\newline{\small\textit{New with v1.06.}} \end{itemize} Please do not remove the license/copyright text from the sources files --- this code took me some time write! diff --git a/macros/latex/contrib/mitthesis/mitthesis.cls b/macros/latex/contrib/mitthesis/mitthesis.cls index 65e018443a..b48703d745 100644 --- a/macros/latex/contrib/mitthesis/mitthesis.cls +++ b/macros/latex/contrib/mitthesis/mitthesis.cls @@ -7,8 +7,8 @@ %% MIT Libraries' requirements as of 2023. %% %% This file's version and date: - \def\versionno{1.10} - \def\versiondate{2023/09/23\space} + \def\versionno{1.11} + \def\versiondate{2023/11/02\space} %% %% Author: John H. Lienhard, V %% Department of Mechanical Engineering @@ -57,6 +57,7 @@ \providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion}% compare version to date; \If... added to latex 2020/10/01 \providecommand\IfPackageAtLeastTF{\@ifpackagelater}% compare version to date; \If... added to latex 2020/10/01 +\providecommand\IfPackageLoadedTF{\@ifpackageloaded}% \If...added to latex 2021/11/15 \IfFormatAtLeastTF{2020/10/01}{% \typeout{^^JYour LaTeX format is dated \fmtversion. LaTeX distributions from 2022/11/01 or later are strongly recommended for best results^^J} @@ -90,6 +91,15 @@ \RequirePackage{xparse} \fi +% Allow pre 2021/11/15 formats to see the graphicx alt key without causing an error +\IfFormatAtLeastTF{2021/11/15}{ + \relax +}{ + \AtBeginDocument{ + \IfPackageLoadedTF{graphicx}{\define@key{Gin}{alt}{}}{\relax} + } +} + %%%%%%%%%%%%%% Options for the class %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \IfFormatAtLeastTF{2022/11/01}{% @@ -158,13 +168,14 @@ % We'd like these sections to have pdf bookmarks and to have the two lists appear in the table of contents \patchcmd{\tableofcontents}{\@starttoc{toc}}{\pdfbookmark[0]{Table of Contents}{toc}\@starttoc{toc}}{}{} -\patchcmd{\listoffigures}{\chapter*{\listfigurename}}{\chapter*{\listfigurename}\addcontentsline{toc}{chapter}{\protect\textbf{\listfigurename}}}{}{} -\patchcmd{\listoftables}{\chapter*{\listtablename}}{\chapter*{\listtablename}\addcontentsline{toc}{chapter}{\protect\textbf{\listtablename}}}{}{} +\patchcmd{\listoffigures}{\chapter*{\listfigurename}}{\chapter*{\listfigurename}\addcontentsline{toc}{chapter}{\listfigurename}}{}{} +\patchcmd{\listoftables}{\chapter*{\listtablename}}{\chapter*{\listtablename}\addcontentsline{toc}{chapter}{\listtablename}}{}{} %%%%%%%%%%%%% Geometry, mathtools, graphics, design, fonts, hyperrefs, bookmarks, footnotes %%%%%%%%%%%%%%%%%%% -\RequirePackage[letterpaper,top=1in,bottom=1in,left=1in,right=1in,marginparwidth=50pt,headsep=12pt,footskip=0.5in]{geometry} +%\RequirePackage[letterpaper,top=1in,bottom=0.97136in,left=1in,right=1in,marginparwidth=50pt,headsep=12pt,footskip=0.47136in]{geometry} % bottom margin allows 45\baselineskip in \textheight +\RequirePackage[letterpaper,top=1in,bottom=1in,left=1in,right=1in,marginparwidth=50pt,headsep=12pt,footskip=0.5in,heightrounded]{geometry} % 44\baselineskip = \texteheight - \topskip = 650.0pt - 12pt with rounded height \RequirePackage{mathtools}% loads and extends amsmath; must load before hyperref and unicode-math @@ -206,7 +217,7 @@ filecolor=red, } \ifmit@lineno - \renewcommand{\linenumberfont}{\sffamily\tiny\color{violet}} + \renewcommand{\linenumberfont}{\sffamily\mdseries\tiny\color{violet}}% add mdseries 2023/10/11 \fi } \fi @@ -352,6 +363,12 @@ \tl_gset:Nx \g_dd_thesisdate_tl { \tl_trim_spaces:n {#1} } } +% If for some reason you don't want a warning when you supply the wrong month +\NewDocumentCommand\SuppressMonthError{} + { + \msg_redirect_name:nnn { \ClassName } { wrong_month } { none } + } + %%%%%%%%%% End Degree Date Module %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -432,6 +449,8 @@ } +\tl_new:N \g__author_namesize_tl +\tl_gset:Nn \g__author_namesize_tl { \large } \cs_new:Nn \__author_block: { \int_zero_new:N \l__author_authorno_int \int_incr:N \l__author_authorno_int @@ -440,7 +459,7 @@ } {by\par \int_until_do:nNnn { \l__author_authorno_int } = { \g_author_authorcnt_int } { - \seq_item:cn { g_author_name_seq } { \l__author_authorno_int } \par + { \g__author_namesize_tl \seq_item:cn { g_author_name_seq } { \l__author_authorno_int } } \par \tl_set:Nx \l_tmpa_tl { \seq_item:cn { g_author_prevdegree_seq } { \l__author_authorno_int} } \tl_if_empty:NF \l_tmpa_tl { \normalsize \l_tmpa_tl }% no linebreak or par for empty items \tl_set:Nx \l_tmpa_tl { \seq_item:cn { g_author_secondprevdegree_seq } { \l__author_authorno_int} } @@ -452,7 +471,7 @@ \par and\par \int_incr:N \l__author_authorno_int } - \seq_item:cn { g_author_name_seq } { \l__author_authorno_int } \par + { \g__author_namesize_tl \seq_item:cn { g_author_name_seq } { \l__author_authorno_int } } \par \tl_set:Nx \l_tmpa_tl { \seq_item:cn { g_author_prevdegree_seq } { \l__author_authorno_int} } \tl_if_empty:NF \l_tmpa_tl { \normalsize \l_tmpa_tl }% no linebreak or par for empty items \tl_set:Nx \l_tmpa_tl { \seq_item:cn { g_author_secondprevdegree_seq } { \l__author_authorno_int} } @@ -461,12 +480,16 @@ \tl_if_empty:NF \l_tmpa_tl { \linebreak\normalsize \l_tmpa_tl } \tl_set:Nx \l_tmpa_tl { \seq_item:cn { g_author_fourthprevdegree_seq } {\l__author_authorno_int} } \tl_if_empty:NF \l_tmpa_tl { \linebreak\normalsize \l_tmpa_tl } - \par\medskip + \par } } \msg_new:nnnn { \ClassName } { no_author } { Missing\ author!\ You\ must\ issue\ the\ \Author{name}{department}\ command. }{ You\ MUST\ issue\ the\ \Author{name}{department}\ command\ after\ \string\begin{document}\ and\ before\ \string\maketitle. } +\NewDocumentCommand\AuthorNameSize{m}{ + \tl_gset:Nn \g__author_namesize_tl {#1} +} + \cs_new:Nn \__author_abstractblock: { \int_zero_new:N \l__author_authorno_int @@ -493,6 +516,7 @@ \seq_new:N \g_supervisor_title_seq \int_gzero_new:N \g_supervisor_supervisorcnt_int + \NewDocumentCommand\Supervisor{mm}{ \tl_if_blank:nTF{#1}{ \msg_error:nn { \ClassName } { blank_supervisor } @@ -640,12 +664,12 @@ \linebreak \mbox {in\ partial\ fulfillment\ of\ the\ requirements\ for\ the\ \int_compare:nNnTF { \g_degree_degreecnt_int } > {1} {degrees} {degree} \ of} - \par\medskip + \par%\medskip, removed 2023/10/25 to work better with four block layout of title page \int_until_do:nNnn { \l__degree_degreeno_int } = { \g_degree_degreecnt_int } { \text_uppercase:n {\seq_item:cn { g_degree_name_seq } { \l__degree_degreeno_int }}\par and\par \int_incr:N \l__degree_degreeno_int } - \text_uppercase:n {\seq_item:cn { g_degree_name_seq } { \l__degree_degreeno_int }}\par\medskip + \text_uppercase:n {\seq_item:cn { g_degree_name_seq } { \l__degree_degreeno_int }}\par } \msg_new:nnnn { \ClassName } { no_degree } { Missing\ degree!\ You\ must\ issue\ the\ \Degree{name}{department}\ command. }{ @@ -712,6 +736,8 @@ \int_gzero_new:N \g__signature_supno_int \int_gzero_new:N \g__signature_accno_int \g__signature_sigsize_tl + \dim_set:Nn \topsep {0pt} + \dim_set:Nn \partopsep {0pt} \begin{tabbing} \hspace{1.35in} \= \hspace{1in} \kill \int_do_while:nNnn { \g__signature_autno_int } < { \g_author_authorcnt_int } { @@ -735,13 +761,14 @@ \\ \> \seq_item:cn { g_acceptor_title_seq } { \g__signature_accno_int } } - \\[1em] - } + \int_compare:nNnTF { \g__signature_accno_int } = { \g_acceptor_acceptorcnt_int } + { \\ }{ \\[1em]} + } } \end{tabbing} } \msg_new:nnnn { \ClassName } { weird_sigsize } - { \SignatureBlockSize\ expects\ a\ font-sizing\ command,\ such\ as\ \small,\ \footnotesize,\ etc.}{You\ used\ a\ weird\ input\ value\ here.\ If\ you\ did\ so\ deliberately,\ try\ continuing.} + { \SignatureBlockSize\ expects\ a\ font-sizing\ command,\ such\ as\ \small,\ \footnotesize,\ etc.}{You\ used\ a\ weird\ input\ value\ here.\ If\ you\ did\ so\ deliberately,\ try\ continuing.} \msg_new:nnnn { \ClassName } { no_acceptor } { Missing\ acceptor!\ You\ must\ issue\ the\ \Acceptor{name}{department}{title}\ command. }{ You\ MUST\ issue\ the\ \Acceptor{name}{department}{title}\ command\ after\ \string\begin{document}\ and\ before\ \string\maketitle.} @@ -789,7 +816,7 @@ \cs_if_exist:NT \pdfmeta_xmp_add:n { \pdfmeta_xmp_add:n {<xmpRights:WebStatement>#2</xmpRights:WebStatement>} } - \cs_if_exist:NTF \msg_note:nnn % added to expl3 2021/05/18 + \cs_if_exist:NTF \msg_note:nnn % command was added to expl3 2021/05/18 { \msg_note:nnn { \ClassName } { cclicense} {#1} } @@ -825,8 +852,32 @@ \cs_new:Npn \Institution #1 { \tl_gset:Nn \g_titlepage_institution_name_tl {\tl_trim_spaces:n #1} } -\RenewDocumentCommand\maketitle{s}{% - \cs_if_exist:NTF \DegreeMonth { \scan_stop: } { \msg_error:nn { \ClassName } { no_degree_date } }% msg defined in degree-date section +%%%%%%% Adjust vertical skips between the major blocks of the title page + +\bool_new:N \g_titlepage_squashglue_bool +\cs_new_protected:Nn \__titlepage_bottomskip: { + \if_bool:N \g_titlepage_squashglue_bool + { \skip_vertical:n { 0pt plus 1filll } } + \else: + { \skip_vertical:n { 0pt plus 12fill } } + \fi: +} +\NewDocumentCommand\Squash{}{ \bool_set_true:N \g_titlepage_squashglue_bool }% Squashes all glue from bottom upward + +\bool_new:N \g_titlepage_tighten_bool +\cs_new_protected:Nn \__titlepage_blockskip:nn { + \if_bool:N \g_titlepage_tighten_bool + { \skip_vertical:n { 6pt plus #2fill } } + \else: + { \skip_vertical:n { #1pt plus #2fill } } + \fi: +} +\NewDocumentCommand\Tighten{}{ \bool_set_true:N \g_titlepage_tighten_bool }% Reduces 12pt and 18pt skips to 6pt + +%%%%%%%%%%%% + +\RenewDocumentCommand\maketitle{s}{ + \cs_if_exist:NTF \DegreeMonth { \scan_stop: } { \msg_error:nn { \ClassName } { no_degree_date } }% msg def'd in degree-date section % \bool_if:NTF \g__cclicense_tf_bool { \tl_gset:Nn \g_copyright_copyrightlicencse_tl @@ -846,34 +897,33 @@ { \tl_gset:Nn \g__copyright_crwords_tl_ {The\ author\ hereby\ grants} } - \IfBooleanTF{#1}{% + \IfBooleanTF{#1}{ \tl_gset:Nn \g_copyright_mitpermission_tl {\scan_stop:} }{ \tl_gset:Nn \g_copyright_mitpermission_tl {\g__copyright_crwords_tl_\ \g__copyright_mitpermissionlast_tl} } % \clearpage - \thispagestyle{empty}% - \phantomsection\addcontentsline{toc}{chapter}{\protect\textbf{Title page}}% + \thispagestyle{empty} {\centering \vbox_to_ht:nn { \vsize }% to prevent signature block from breaking across page { - \setlength{\parskip}{0.5\baselineskip plus 2pt minus 2pt}\setlength{\parindent}{0pt}% - {\Large\textbf{\g_mitthesis_title_tl}\par} + \setlength{\parskip}{7.5pt plus 1pt minus 1pt}% edited all vertical space on this page 2023/10/25 + \setlength{\parindent}{0pt} + {\Large\textbf{\g_mitthesis_title_tl}\phantomsection\addcontentsline{toc}{chapter}{Title\ page}\par} % revise for tagging in future + \__titlepage_blockskip:nn {12}{1.5}% new idea \__author_block: - \par + \__titlepage_blockskip:nn {12}{1.5} \__degree_block: at\ the\par \text_uppercase:n { \g_titlepage_institution_name_tl }\par - \DegreeMonth\ \DegreeYear - \par - \copyright\space\DegreeYear\space\CopyrightAuthor\@.\c_space_token \g_copyright_copyrightlicencse_tl % In case name ends with III, IV, V,... - \par - \skip_vertical:n {\baselineskip} - % - \__signature_block: - \vfill % to avoid overstretched glue + \DegreeMonth\ \DegreeYear\par + \__titlepage_blockskip:nn {12}{2} + \copyright\space\DegreeYear\space\CopyrightAuthor\@.\c_space_token \g_copyright_copyrightlicencse_tl % \@. in case name ends with III, IV, V,... + \__titlepage_blockskip:nn {18}{2} + \vbox:n {\__signature_block:} + \__titlepage_bottomskip: } - }% + } \hypersetup{ pdfcopyright={Copyright\ \DegreeYear\ by\ \CopyrightAuthor.\ \g_copyright_pdfrightstext_tl}, pdfauthor={\g__author_pdfca_tl}, @@ -893,9 +943,8 @@ \RenewDocumentEnvironment{abstract}{+b}{ \newpage - \phantomsection\addcontentsline{toc}{chapter}{\protect\textbf{\abstractname}} \begin{center} - {\large{\textbf{\g_mitthesis_title_tl}}\par} + {\large{\textbf{\g_mitthesis_title_tl}}\phantomsection\addcontentsline{toc}{chapter}{\abstractname}\par} % revise for tagging as LaTeX evolves further \setlength{\parskip}{0.5\baselineskip plus 2pt minus 2pt} \__author_abstractblock: \par @@ -936,7 +985,8 @@ % nomenclature subheadings \NewDocumentCommand\EntryHeading{m}{% \itemsep3\p@ plus 1\p@ minus 1\p@ - \goodbreak\item[\itshape#1\hfill]\setlength\itemsep\savitemsep\@itempenalty=1000 + \goodbreak\item[\itshape#1\hfill]\mbox{}% mbox added for tagged pdf 2023/10/11 + \setlength{\itemsep}{\savitemsep}\@itempenalty=1000 } % % Increase first optional argument to a dimension > 2em if wide entries cause undesired misalignment of columns. @@ -946,7 +996,7 @@ \setlength\columnsep{2em} \setlength{\nomenwidth}{#1} \csname #3\endcsname *{#2}% this level will vary amongst users! - \phantomsection\addcontentsline{toc}{#3}{#2}% + \phantomsection\addcontentsline{toc}{#3}{#2}% tagged pdf may not capture both of these ... 2023/10/18 \raggedright \begin{list}{}{% \setlength{\itemsep}{0pt}% @@ -955,7 +1005,7 @@ \setlength{\labelwidth}{\nomenwidth}% \setlength{\leftmargin}{\labelwidth}% \addtolength{\leftmargin}{\labelsep}% - \setlength\savitemsep\itemsep% + \setlength{\savitemsep}{\itemsep}% }% }{\end{list}\ignorespacesafterend} diff --git a/macros/latex/contrib/notebeamer/License b/macros/latex/contrib/notebeamer/License new file mode 100644 index 0000000000..842cf85e3c --- /dev/null +++ b/macros/latex/contrib/notebeamer/License @@ -0,0 +1,415 @@ +The LaTeX Project Public License +=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + +LPPL Version 1.3c 2008-05-04 + +Copyright 1999 2002-2008 LaTeX3 Project + Everyone is allowed to distribute verbatim copies of this + license document, but modification of it is not allowed. + + +PREAMBLE +======== + +The LaTeX Project Public License (LPPL) is the primary license under +which the LaTeX kernel and the base LaTeX packages are distributed. + +You may use this license for any work of which you hold the copyright +and which you wish to distribute. This license may be particularly +suitable if your work is TeX-related (such as a LaTeX package), but +it is written in such a way that you can use it even if your work is +unrelated to TeX. + +The section `WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE', +below, gives instructions, examples, and recommendations for authors +who are considering distributing their works under this license. + +This license gives conditions under which a work may be distributed +and modified, as well as conditions under which modified versions of +that work may be distributed. + +We, the LaTeX3 Project, believe that the conditions below give you +the freedom to make and distribute modified versions of your work +that conform with whatever technical specifications you wish while +maintaining the availability, integrity, and reliability of +that work. If you do not see how to achieve your goal while +meeting these conditions, then read the document `cfgguide.tex' +and `modguide.tex' in the base LaTeX distribution for suggestions. + + +DEFINITIONS +=========== + +In this license document the following terms are used: + + `Work' + Any work being distributed under this License. + + `Derived Work' + Any work that under any applicable law is derived from the Work. + + `Modification' + Any procedure that produces a Derived Work under any applicable + law -- for example, the production of a file containing an + original file associated with the Work or a significant portion of + such a file, either verbatim or with modifications and/or + translated into another language. + + `Modify' + To apply any procedure that produces a Derived Work under any + applicable law. + + `Distribution' + Making copies of the Work available from one person to another, in + whole or in part. Distribution includes (but is not limited to) + making any electronic components of the Work accessible by + file transfer protocols such as FTP or HTTP or by shared file + systems such as Sun's Network File System (NFS). + + `Compiled Work' + A version of the Work that has been processed into a form where it + is directly usable on a computer system. This processing may + include using installation facilities provided by the Work, + transformations of the Work, copying of components of the Work, or + other activities. Note that modification of any installation + facilities provided by the Work constitutes modification of the Work. + + `Current Maintainer' + A person or persons nominated as such within the Work. If there is + no such explicit nomination then it is the `Copyright Holder' under + any applicable law. + + `Base Interpreter' + A program or process that is normally needed for running or + interpreting a part or the whole of the Work. + + A Base Interpreter may depend on external components but these + are not considered part of the Base Interpreter provided that each + external component clearly identifies itself whenever it is used + interactively. Unless explicitly specified when applying the + license to the Work, the only applicable Base Interpreter is a + `LaTeX-Format' or in the case of files belonging to the + `LaTeX-format' a program implementing the `TeX language'. + + + +CONDITIONS ON DISTRIBUTION AND MODIFICATION +=========================================== + +1. Activities other than distribution and/or modification of the Work +are not covered by this license; they are outside its scope. In +particular, the act of running the Work is not restricted and no +requirements are made concerning any offers of support for the Work. + +2. You may distribute a complete, unmodified copy of the Work as you +received it. Distribution of only part of the Work is considered +modification of the Work, and no right to distribute such a Derived +Work may be assumed under the terms of this clause. + +3. You may distribute a Compiled Work that has been generated from a +complete, unmodified copy of the Work as distributed under Clause 2 +above, as long as that Compiled Work is distributed in such a way that +the recipients may install the Compiled Work on their system exactly +as it would have been installed if they generated a Compiled Work +directly from the Work. + +4. If you are the Current Maintainer of the Work, you may, without +restriction, modify the Work, thus creating a Derived Work. You may +also distribute the Derived Work without restriction, including +Compiled Works generated from the Derived Work. Derived Works +distributed in this manner by the Current Maintainer are considered to +be updated versions of the Work. + +5. If you are not the Current Maintainer of the Work, you may modify +your copy of the Work, thus creating a Derived Work based on the Work, +and compile this Derived Work, thus creating a Compiled Work based on +the Derived Work. + +6. If you are not the Current Maintainer of the Work, you may +distribute a Derived Work provided the following conditions are met +for every component of the Work unless that component clearly states +in the copyright notice that it is exempt from that condition. Only +the Current Maintainer is allowed to add such statements of exemption +to a component of the Work. + + a. If a component of this Derived Work can be a direct replacement + for a component of the Work when that component is used with the + Base Interpreter, then, wherever this component of the Work + identifies itself to the user when used interactively with that + Base Interpreter, the replacement component of this Derived Work + clearly and unambiguously identifies itself as a modified version + of this component to the user when used interactively with that + Base Interpreter. + + b. Every component of the Derived Work contains prominent notices + detailing the nature of the changes to that component, or a + prominent reference to another file that is distributed as part + of the Derived Work and that contains a complete and accurate log + of the changes. + + c. No information in the Derived Work implies that any persons, + including (but not limited to) the authors of the original version + of the Work, provide any support, including (but not limited to) + the reporting and handling of errors, to recipients of the + Derived Work unless those persons have stated explicitly that + they do provide such support for the Derived Work. + + d. You distribute at least one of the following with the Derived Work: + + 1. A complete, unmodified copy of the Work; + if your distribution of a modified component is made by + offering access to copy the modified component from a + designated place, then offering equivalent access to copy + the Work from the same or some similar place meets this + condition, even though third parties are not compelled to + copy the Work along with the modified component; + + 2. Information that is sufficient to obtain a complete, + unmodified copy of the Work. + +7. If you are not the Current Maintainer of the Work, you may +distribute a Compiled Work generated from a Derived Work, as long as +the Derived Work is distributed to all recipients of the Compiled +Work, and as long as the conditions of Clause 6, above, are met with +regard to the Derived Work. + +8. The conditions above are not intended to prohibit, and hence do not +apply to, the modification, by any method, of any component so that it +becomes identical to an updated version of that component of the Work as +it is distributed by the Current Maintainer under Clause 4, above. + +9. Distribution of the Work or any Derived Work in an alternative +format, where the Work or that Derived Work (in whole or in part) is +then produced by applying some process to that format, does not relax or +nullify any sections of this license as they pertain to the results of +applying that process. + +10. a. A Derived Work may be distributed under a different license + provided that license itself honors the conditions listed in + Clause 6 above, in regard to the Work, though it does not have + to honor the rest of the conditions in this license. + + b. If a Derived Work is distributed under a different license, that + Derived Work must provide sufficient documentation as part of + itself to allow each recipient of that Derived Work to honor the + restrictions in Clause 6 above, concerning changes from the Work. + +11. This license places no restrictions on works that are unrelated to +the Work, nor does this license place any restrictions on aggregating +such works with the Work by any means. + +12. Nothing in this license is intended to, or may be used to, prevent +complete compliance by all parties with all applicable laws. + + +NO WARRANTY +=========== + +There is no warranty for the Work. Except when otherwise stated in +writing, the Copyright Holder provides the Work `as is', without +warranty of any kind, either expressed or implied, including, but not +limited to, the implied warranties of merchantability and fitness for a +particular purpose. The entire risk as to the quality and performance +of the Work is with you. Should the Work prove defective, you assume +the cost of all necessary servicing, repair, or correction. + +In no event unless required by applicable law or agreed to in writing +will The Copyright Holder, or any author named in the components of the +Work, or any other party who may distribute and/or modify the Work as +permitted above, be liable to you for damages, including any general, +special, incidental or consequential damages arising out of any use of +the Work or out of inability to use the Work (including, but not limited +to, loss of data, data being rendered inaccurate, or losses sustained by +anyone as a result of any failure of the Work to operate with any other +programs), even if the Copyright Holder or said author or said other +party has been advised of the possibility of such damages. + + +MAINTENANCE OF THE WORK +======================= + +The Work has the status `author-maintained' if the Copyright Holder +explicitly and prominently states near the primary copyright notice in +the Work that the Work can only be maintained by the Copyright Holder +or simply that it is `author-maintained'. + +The Work has the status `maintained' if there is a Current Maintainer +who has indicated in the Work that they are willing to receive error +reports for the Work (for example, by supplying a valid e-mail +address). It is not required for the Current Maintainer to acknowledge +or act upon these error reports. + +The Work changes from status `maintained' to `unmaintained' if there +is no Current Maintainer, or the person stated to be Current +Maintainer of the work cannot be reached through the indicated means +of communication for a period of six months, and there are no other +significant signs of active maintenance. + +You can become the Current Maintainer of the Work by agreement with +any existing Current Maintainer to take over this role. + +If the Work is unmaintained, you can become the Current Maintainer of +the Work through the following steps: + + 1. Make a reasonable attempt to trace the Current Maintainer (and + the Copyright Holder, if the two differ) through the means of + an Internet or similar search. + + 2. If this search is successful, then enquire whether the Work + is still maintained. + + a. If it is being maintained, then ask the Current Maintainer + to update their communication data within one month. + + b. If the search is unsuccessful or no action to resume active + maintenance is taken by the Current Maintainer, then announce + within the pertinent community your intention to take over + maintenance. (If the Work is a LaTeX work, this could be + done, for example, by posting to comp.text.tex.) + + 3a. If the Current Maintainer is reachable and agrees to pass + maintenance of the Work to you, then this takes effect + immediately upon announcement. + + b. If the Current Maintainer is not reachable and the Copyright + Holder agrees that maintenance of the Work be passed to you, + then this takes effect immediately upon announcement. + + 4. If you make an `intention announcement' as described in 2b. above + and after three months your intention is challenged neither by + the Current Maintainer nor by the Copyright Holder nor by other + people, then you may arrange for the Work to be changed so as + to name you as the (new) Current Maintainer. + + 5. If the previously unreachable Current Maintainer becomes + reachable once more within three months of a change completed + under the terms of 3b) or 4), then that Current Maintainer must + become or remain the Current Maintainer upon request provided + they then update their communication data within one month. + +A change in the Current Maintainer does not, of itself, alter the fact +that the Work is distributed under the LPPL license. + +If you become the Current Maintainer of the Work, you should +immediately provide, within the Work, a prominent and unambiguous +statement of your status as Current Maintainer. You should also +announce your new status to the same pertinent community as +in 2b) above. + + +WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE +====================================================== + +This section contains important instructions, examples, and +recommendations for authors who are considering distributing their +works under this license. These authors are addressed as `you' in +this section. + +Choosing This License or Another License +---------------------------------------- + +If for any part of your work you want or need to use *distribution* +conditions that differ significantly from those in this license, then +do not refer to this license anywhere in your work but, instead, +distribute your work under a different license. You may use the text +of this license as a model for your own license, but your license +should not refer to the LPPL or otherwise give the impression that +your work is distributed under the LPPL. + +The document `modguide.tex' in the base LaTeX distribution explains +the motivation behind the conditions of this license. It explains, +for example, why distributing LaTeX under the GNU General Public +License (GPL) was considered inappropriate. Even if your work is +unrelated to LaTeX, the discussion in `modguide.tex' may still be +relevant, and authors intending to distribute their works under any +license are encouraged to read it. + +A Recommendation on Modification Without Distribution +----------------------------------------------------- + +It is wise never to modify a component of the Work, even for your own +personal use, without also meeting the above conditions for +distributing the modified component. While you might intend that such +modifications will never be distributed, often this will happen by +accident -- you may forget that you have modified that component; or +it may not occur to you when allowing others to access the modified +version that you are thus distributing it and violating the conditions +of this license in ways that could have legal implications and, worse, +cause problems for the community. It is therefore usually in your +best interest to keep your copy of the Work identical with the public +one. Many works provide ways to control the behavior of that work +without altering any of its licensed components. + +How to Use This License +----------------------- + +To use this license, place in each of the components of your work both +an explicit copyright notice including your name and the year the work +was authored and/or last substantially modified. Include also a +statement that the distribution and/or modification of that +component is constrained by the conditions in this license. + +Here is an example of such a notice and statement: + + %% pig.dtx + %% Copyright 2008 M. Y. Name + % + % This work may be distributed and/or modified under the + % conditions of the LaTeX Project Public License, either version 1.3 + % of this license or (at your option) any later version. + % The latest version of this license is in + % https://www.latex-project.org/lppl.txt + % and version 1.3c or later is part of all distributions of LaTeX + % version 2008 or later. + % + % This work has the LPPL maintenance status `maintained'. + % + % The Current Maintainer of this work is M. Y. Name. + % + % This work consists of the files pig.dtx and pig.ins + % and the derived file pig.sty. + +Given such a notice and statement in a file, the conditions +given in this license document would apply, with the `Work' referring +to the three files `pig.dtx', `pig.ins', and `pig.sty' (the last being +generated from `pig.dtx' using `pig.ins'), the `Base Interpreter' +referring to any `LaTeX-Format', and both `Copyright Holder' and +`Current Maintainer' referring to the person `M. Y. Name'. + +If you do not want the Maintenance section of LPPL to apply to your +Work, change `maintained' above into `author-maintained'. +However, we recommend that you use `maintained', as the Maintenance +section was added in order to ensure that your Work remains useful to +the community even when you can no longer maintain and support it +yourself. + +Derived Works That Are Not Replacements +--------------------------------------- + +Several clauses of the LPPL specify means to provide reliability and +stability for the user community. They therefore concern themselves +with the case that a Derived Work is intended to be used as a +(compatible or incompatible) replacement of the original Work. If +this is not the case (e.g., if a few lines of code are reused for a +completely different task), then clauses 6b and 6d shall not apply. + + +Important Recommendations +------------------------- + + Defining What Constitutes the Work + + The LPPL requires that distributions of the Work contain all the + files of the Work. It is therefore important that you provide a + way for the licensee to determine which files constitute the Work. + This could, for example, be achieved by explicitly listing all the + files of the Work near the copyright notice of each file or by + using a line such as: + + % This work consists of all files listed in manifest.txt. + + in that place. In the absence of an unequivocal list it might be + impossible for the licensee to determine what is considered by you + to comprise the Work and, in such a case, the licensee would be + entitled to make reasonable conjectures as to which files comprise + the Work. diff --git a/macros/latex/contrib/notebeamer/README.md b/macros/latex/contrib/notebeamer/README.md new file mode 100644 index 0000000000..db7f75a9f8 --- /dev/null +++ b/macros/latex/contrib/notebeamer/README.md @@ -0,0 +1,22 @@ +# The `NoteBeamer` document + +This template provides an easy way to input Beamers on note papers and make notebook quickly. It's optimized for Goodnotes' default paper size and there won’t have difference between papers. + +Modules of `NoteBeamer` provide the following supports: + +- Draft module to compile quickly; +- Lighter or darker colors of the cover page; + +**Welcome to pull requests +[here](https://github.com/xiamyphys/NoteBeamer).** + +## License + +This work may be distributed and/or modified under the conditions of the +[LaTeX Project Public License](http://www.latex-project.org/lppl.txt), +either version 1.3c of this license or (at your option) any later version. + +This work has the LPPL maintenance status `maintained`. + +The Current Maintainer of this work is +[Mingyu Xia](https://www.ctan.org/author/xiamyphys).
\ No newline at end of file diff --git a/macros/latex/contrib/notebeamer/doc/images/HDU.pdf b/macros/latex/contrib/notebeamer/doc/images/HDU.pdf Binary files differnew file mode 100644 index 0000000000..cb9ba414c8 --- /dev/null +++ b/macros/latex/contrib/notebeamer/doc/images/HDU.pdf diff --git a/macros/latex/contrib/notebeamer/doc/images/Inuyasa.jpg b/macros/latex/contrib/notebeamer/doc/images/Inuyasa.jpg Binary files differnew file mode 100644 index 0000000000..26861434df --- /dev/null +++ b/macros/latex/contrib/notebeamer/doc/images/Inuyasa.jpg diff --git a/macros/latex/contrib/notebeamer/doc/images/newnote3sdemo.pdf b/macros/latex/contrib/notebeamer/doc/images/newnote3sdemo.pdf Binary files differnew file mode 100644 index 0000000000..bcea2a2522 --- /dev/null +++ b/macros/latex/contrib/notebeamer/doc/images/newnote3sdemo.pdf diff --git a/macros/latex/contrib/notebeamer/doc/images/newnote4sdemo.pdf b/macros/latex/contrib/notebeamer/doc/images/newnote4sdemo.pdf Binary files differnew file mode 100644 index 0000000000..4f87c9c7b0 --- /dev/null +++ b/macros/latex/contrib/notebeamer/doc/images/newnote4sdemo.pdf diff --git a/macros/latex/contrib/notebeamer/doc/images/newnotedemo.pdf b/macros/latex/contrib/notebeamer/doc/images/newnotedemo.pdf Binary files differnew file mode 100644 index 0000000000..ef3b388d31 --- /dev/null +++ b/macros/latex/contrib/notebeamer/doc/images/newnotedemo.pdf diff --git a/macros/latex/contrib/notebeamer/doc/images/titlepage.pdf b/macros/latex/contrib/notebeamer/doc/images/titlepage.pdf Binary files differnew file mode 100644 index 0000000000..bd9ddb1eb2 --- /dev/null +++ b/macros/latex/contrib/notebeamer/doc/images/titlepage.pdf diff --git a/macros/latex/contrib/notebeamer/doc/notebeamer-demo.pdf b/macros/latex/contrib/notebeamer/doc/notebeamer-demo.pdf Binary files differnew file mode 100644 index 0000000000..a1321329ba --- /dev/null +++ b/macros/latex/contrib/notebeamer/doc/notebeamer-demo.pdf diff --git a/macros/latex/contrib/notebeamer/doc/notebeamer-demo.tex b/macros/latex/contrib/notebeamer/doc/notebeamer-demo.tex new file mode 100644 index 0000000000..6e90534b3d --- /dev/null +++ b/macros/latex/contrib/notebeamer/doc/notebeamer-demo.tex @@ -0,0 +1,27 @@ +\documentclass[darker]{notebeamer} +\begin{document} + % Assign the author & mail address + \author{Axia} \mail{xiamyphys@gmail.com} + % Assign the titlepage, sitcker and logo file + \flyleaf{titlepage.pdf} \sticker{Inuyasa.jpg} + % Assign the logo link and info + \logo[https://sci.hdu.edu.cn]{HDU.pdf}[Hangzhou·Zhejiang] + % Create a cover page with color H6, title and subtitle + \notebook[H6]{Quantum Transport}[Dirac Fermion Discussion Group] + % Assign the chapter title and the file will be inserted after + \chapter[PHYSICAL REVIEW B VOLUME 50, NUMBER 8]{newnotedemo.pdf} + % Insert the first page of the file with the format 1 image per page + \newnote{1}{1} + % Create a cover page with color H5, title + \notebook[H5]{Advanced Quantum Mechanics} + \chapter[Introduction \& Fundamental Concepts]{newnote3sdemo.pdf} + % Insert the file from page 1 to 3 with the format 3 images per page + \newnotesss{1}{3} + \chapter[SPD Basic: Transport]{newnote4sdemo.pdf} + % Insert the file from page 1 to 4 with the format 4 images per page + \newnotessss{1}{4} + % Create an empty note paper with no page number + \emptynote* + % Create an empty note paper with logo and info but no page number + \newhdunote* +\end{document}
\ No newline at end of file diff --git a/macros/latex/contrib/notebeamer/doc/notebeamer-demo9.pdf b/macros/latex/contrib/notebeamer/doc/notebeamer-demo9.pdf Binary files differnew file mode 100644 index 0000000000..9d9da5e08a --- /dev/null +++ b/macros/latex/contrib/notebeamer/doc/notebeamer-demo9.pdf diff --git a/macros/latex/contrib/notebeamer/doc/notebeamer-doc.pdf b/macros/latex/contrib/notebeamer/doc/notebeamer-doc.pdf Binary files differnew file mode 100644 index 0000000000..e938755eca --- /dev/null +++ b/macros/latex/contrib/notebeamer/doc/notebeamer-doc.pdf diff --git a/macros/latex/contrib/notebeamer/doc/notebeamer-doc.tex b/macros/latex/contrib/notebeamer/doc/notebeamer-doc.tex new file mode 100644 index 0000000000..8e3d57472a --- /dev/null +++ b/macros/latex/contrib/notebeamer/doc/notebeamer-doc.tex @@ -0,0 +1,245 @@ +%% ****************************************************** +%% * This work may be distributed and/or modified under * +%% * the conditions of the LaTeX Project Public License * +%% * http://www.latex-project.org/lppl.txt * +%% * either version 1.3c of this license or any later * +%% * version. * +%% ****************************************************** +\documentclass[11pt]{article} +\usepackage{geometry,pdfpages} +\usepackage[level]{datetime} +\usepackage{unicode-math} +\usepackage{authblk} +\setmainfont{Libertinus Serif} +\setsansfont{Libertinus Sans} +\setmonofont{NotoSansMono}[ + Scale=MatchLowercase, + Extension=.ttf, + UprightFont=*-Light, + BoldFont=*-Medium +] +\makeatletter +\usepackage{listings,dirtree} +\lstdefinestyle{TeX}{ + language = [LaTeX]TeX, + texcsstyle = *\color{H7}, + numbers = none, + basicstyle = {\small\color{H6}\tt}, + mathescape = false, + breaklines = true, + columns = fixed, + keywordstyle = \color{H3}, + commentstyle = \color{darkgray}, + tabsize = 2, + keywords = {mail,flyleaf,sticker,logo,notebook,chapter,newnote,newnotesss,newnotessss,emptynote,newhdunote} +} +\usepackage{hyperref,xcolor,verbatim} +\definecolor{pkgcolor}{Hsb}{103,.8,.5} +\definecolor{moducolor}{Hsb}{290,.8,.5} +\definecolor{cmdcolor}{Hsb}{188,.8,.5} +\definecolor{filecolor}{Hsb}{207,.6,.7} +\definecolor{H1}{Hsb}{349,.8,.8}% 海棠紅 (Hangzhou MTR L 1 ) +\definecolor{H2}{Hsb}{23, .8,.8}% 丹桂橙 (Hangzhou Metro 2 ) +\definecolor{H3}{Hsb}{48, .8,.8}% 柠檬黄 (Hangzhou Metro 3 ) +\definecolor{H4}{Hsb}{103,.8,.8}% 香樟绿 (Hangzhou Metro 4 ) +\definecolor{H5}{Hsb}{188,.8,.8}% 青藍色 (Hangzhou MTR L 5 ) +\definecolor{H6}{Hsb}{207,.8,.8}% 海洋蓝 (Hangzhou Metro 6 ) +\definecolor{H7}{Hsb}{290,.8,.8}% 浪漫紫 (Hangzhou Metro 7 ) +\hypersetup{colorlinks,urlcolor=H1,linkcolor=H2,filecolor=filecolor,pdfstartview=FitH,pdfview=FitH,pdfcreator=XeTeX output} + +\renewcommand*\l@subsection{\@dottedtocline{2}{1.5em}{2.1em}} +\def\@pkg#1{\texorpdfstring{\href{https://www.ctan.org/pkg/#1}% +{\textcolor{pkgcolor}{\textsf{#1}}}}{“#1”}} +\def\s@pkg#1{\texorpdfstring{\textcolor{pkgcolor}{\textsf{#1}}}{“#1”}} +\DeclareRobustCommand\pkg{\@ifstar\s@pkg\@pkg} +\def\mode#1{\texorpdfstring{\textcolor{moducolor}{\textsf{#1}}}{“#1”}} +\def\cmd#1{\texorpdfstring{\textcolor{cmdcolor}{\textsf{#1}}}{“#1”}} +\def\datechange#1#2{% + \noindent{\makebox[\textwidth][r]{\color{H7}\rule{1.15\textwidth}{.4pt}}} + \noindent\makebox[0pt][r]{\makebox[-3em][r]{\small\textbf{\textcolor{H7}{#1}}}\;\;}{\sffamily Update: \ignorespaces#2}} +\makeatother + +\title{The \pkg{notebeamer} Template} +\author[1]{Xia Ming-Yu, \href{https://www.hdu.edu.cn}{Hangzhou Dianzi University}} +\ddmmyyyydate +\date{\today} +\affil[1]{\href{mailto:xiamyphys@gmail.com}{\texttt{xiamyphys@gmail.com}}} +\date{\today\quad Version 2.0a\thanks{% + \url{https://github.com/xiamyphys/notebeamer}}} +\begin{document} +\maketitle + +\begin{abstract} +This is the document for \pkg{notebeamer} template, which provides a method to input Beamers on note papers and make notebook quickly. + +\end{abstract} + +\tableofcontents + +\section{Introduction} + +\subsection{The purpose of this template} +This template provides an easy way to input Beamers on note papers and make notebook quickly. It's optimized for Goodnotes' default paper size and there won't have difference between papers. + +If you meet bugs when using this template, or you have better suggestions or ideas, or you want to participate in the development of the template or other templates by me, welcome to contact via email \href{mailto:xiamyphys@gmail.com}{xiamyphys@gmail.com}. + +Also, you can join my \textsf\LaTeX{} Template Discussion \href{https://qm.qq.com/q/OnHzbNvVAG}{QQ Group: 760570712} to communicate with me and get the insider preview edition of the template. + +\subsection{Packages required} +This template is based on the template \pkg{standalone}. And it requires \pkg{tikz} package to plot some graphics, \pkg{kvoptions} and \pkg{etoolbox} packages to provide global opinions, \pkg{graphics} package to provides the \verb|draft| mode, \pkg{xparse} to provide the commands with star\footnote{This is an awful idea, because using the original command can be better than using a package.}\footnote{In the later versions, the template will change to use the original commands of \textsf\LaTeX{$2\varepsilon$} to avoid using the package \pkg{xparse}, which can improve the compilation efficiency in some ways.}, \pkg{hyperref} package provides link jump function, \pkg{ctex} package to supports the \textbf{Chinese, Simplified} language and \pkg{fontawesome5} package to provides a set of beautiful icons. + +I strongly suggest that you should use cmd to implement the commands to update all the packages to the latest version or switch to portable version instead. +\begin{verbatim} + tlmgr update --self + tlmgr update --all +\end{verbatim} + +If you are in some areas with awful Internet environment, you can choose proper mirror source or use other means\footnote{Please comply with local network regulations.}. To learn more, please refer to \href{https://tex.stackexchange.com/questions/55437/how-do-i-update-my-tex-distribution}{How do I update my TEX distribution?} + +\subsection{Loading \pkg{notebeamer} and its modes} +Save the file \verb|notebeamer.cls| to your project's root directory, and then create a \verb|.tex| file, just input the command \verb|\documentclass{notebeamer}| on the first line. + +The template provides two modes, \mode{draft} and \mode{color}. Just add the options of the modes you want separately in the square bracket of the command \verb|\documentclass[options]{notebeamer}| in your \verb|.tex| file. + +\section{Modes of \pkg{notebeamer}} +\subsection{The \mode{draft} mode} +Like most of the templates, this template also provide \mode{draft} mode (with the support of package \pkg{graphics}), tex will only read for size info of pages you input, and a box of the correct size is printed with the filename in. + +This can accelerate the speed of compile and you can preview the effect quickly when you input a file with too many pages and (or) its size is too large. After you make sure that there's no formatting errors, you can cancel this mode just to wait until compiled. + +\subsection{The \mode{normal}, \mode{lighter}, \& \mode{darker} modes} +This mode can make the color of the covers you creates in this template get lighter or darker, and the default opinion is \mode{normal}. + +\section{Commands of \pkg{notebeamer}} + +\subsection{The \cmd{author}, \cmd{mail}, \cmd{flyleaf}, \cmd{sticker} and \cmd{logo} commands} +\begin{verbatim} + \author{Your Name} \mail{Your Mail Address} + \flyleaf{titlepage.pdf} \sticker{sticker.png} + \logo[link]{logofile.pdf}[info] +\end{verbatim} +\begin{itemize} + \item \cmd{author}, \cmd{mail} and \cmd{flyleaf} command. + + There will be an authorname or (and) mail on the cover page after you use the command \cmd{author} or (and) \cmd{mail}, also a hyperlink will be added to the email address. A titlpage will automatically be added after the cover page after you use the command \cmd{flyleaf}. + + \item \cmd{sticker} and \cmd{logo} command. + + There will be a sticker on the south east of the note paper after you add, and there will be a logo on the north west corner of the cover page and hdu note paper; otherwise it won't. + + The first and third variable of the command \cmd{logo} can assign the link and info of the logo, which are optional. + + \item The files corresponding to the commands \verb|sticker|, \verb|logo| and \verb|flyleaf| can be stored in a folder named \verb|figure(s)|, \verb|image(s)|, \verb|graphic(s)| or \verb|picture(s)|, and you needn't to write these directories again in these commands because this template has already set these directories as indexes. Just as shown in the file tree in the example in \nameref{dirtree}. +\end{itemize} + +\paragraph{The commands above are all repeatable, which can reassign the values that these commands assigned before.} + +\subsection{The \cmd{notebook} command} + +\begin{verbatim} + \notebook[color]{title}[subtitle] +\end{verbatim} + +This command can create a cover. There're 7 colors for the cover, these colors' Hues are from Hangzhou MTR line 1 -- 7, they are \textcolor{H1}{H1. \textsf{\href{https://en.wikipedia.org/wiki/Malus_spectabilis}{Haitang} Red}}, \textcolor{H2}{H2. \textsf{Dangui orange}}, \textcolor{H3}{H3. \textsf{Lemon yellow}}, \textcolor{H4}{H4. \textsf{Camphor green}}, \textcolor{H5}{H5. \textsf{Cyan}}, \textcolor{H6}{H6.\textsf{ Ocean Blue}} and \textcolor{H7}{H7. \textsf{Romantic purple}}. + +Here, the second value \verb|title| is mandatory and it can add the title above the center of the cover page while the third value \verb|subtitle| is optional and it can add the subtitle vertically to the lower left of the center. The first variable is from \textcolor{H1}{H1} to \textcolor{H7}{H7} and the default value is \textcolor{H5}{H5}. + +\subsection{The \cmd{chapter} command} +\begin{verbatim} + \chapter[chaptertitle]{filename} \chapter*[chaptertitle]{filename} +\end{verbatim} + +This command has 2 variables: \verb|chaptertitle| and \verb|filename|, will assign the following chapter title and the file (such as PDF made from \textsf\LaTeX{}) will be inputted. Here, the value \verb|chaptertitle| is optional. + +If a star (*) is added after this command, the counter \verb|chap| won't take effect. + +\subsection{The \cmd{emptynote} \& \cmd{newhdunote} command} +\begin{verbatim} + \emptynote \emptynote* \newhdunote \newhdunote* +\end{verbatim} + +Command \cmd{emptynote} will create an empty note paper with the chapter title before and page number following the previous page, and command \cmd{newhdunote} will create an empty note paper with logo (may include link) and info were assigned by the command \cmd{logo} but without chapter title on the top of the note paper. + +If a star (*) is added after this command, then the note paper created won't include the chapter title and page number. Also, the counter \verb|page| won't take effect. + +\subsection{The \cmd{newnote (sss) (ssss)} commands} +\begin{verbatim} + \newnote{start page}{end page} % insert 1 image per page + \newnotesss{start page}{end page} % insert 3 images per page + \newnotessss{start page}{end page} % insert 4 images per page +\end{verbatim} + +These commands will create note papers that were inserted images on the left side, the two variables is the start page number and the end page number of the file that was already assigned by the second variable of the command \cmd{chapter}. + +\newpage +\section{Version History} + +In the Advanced Quantum Mechanics class on 19 October, 2023, my \emph{obsessive-compulsive disorder} forced me to copy all the content projected by the teacher onto the whiteboard on my iPad, and I found that I only got a few pages full of notes without any knowledge understood in my brain after a class is over. Then, an idea suddenly occurred me: Why not create an automated program to quickly insert the Beamers given by the teacher before class with the format of several images per page? So I can just annotate on it and pay more attention to listen to the teacher. After the class ended that day, I went back to my dormitory and started writing programs in \textsf\LaTeX{}. + +\textsf{\bfseries Version 1.0} was finished on 22 October, 2023 and released on \href{https://www.latexstudio.net/index/details/index/mid/3720.html}{LaTeX Studio} (Xiaoshan, Hangzhou) and \href{https://www.xiaohongshu.com/user/profile/61e7ad870000000010005642}{Xiaohongshu}, where won the favor of many people and even some people who have already retired from \textsf\LaTeX{} want to re-enter. + +On 24 October, 2023, a member in the CMC competition WeChat group praised for my template, and proposed his idea: the template could be magically changed to insert a slightly smaller page of notes on the left side and take notes on the right side, because he found that he can only write in the corners when annotating some notes. It's a good idea, then I'm setting about developing the next version of the template. + +While considering the suggestions from friends, I am also thinking about how to simplify the previous code. Because in version 1.0, if one want to insert a Beamer with 78 images and make 3 images per page, then he should write the command \cmd{newnotesss} for 26 times, it's so inelegant... However, no matter how I write the loop, it's can't meet my expectations or report errors. Then, I asked stackexchange for help, and finally a LaTeX programmer \href{https://tex.stackexchange.com/users/51799/wipet}{wipet} wrote the loop module for me. Here, I want to express my gratitude to him. + +\textsf{\bfseries Version 2.0a} was finished developing on 1 November, 2023. This version not only simplified the commands to insert Beamers from to dozens of commands to only 1 command, but redesigned some details and functions. Firstly, this version supports to insert only one page of notes on the left side. What's more, this version supports to insert your school's logo on the cover page and empty note paper. Also, this version supports insert empty pages without page number and chapter title with just add a star (*) after the command. Finally, this version can add a subtitle on the cover page, and redesign the colors (chosen from Hangzhou MTR) of the cover pages. + +\datechange{\today}{Version 2.0a } +\begin{itemize} + \item Simplify the command of inserting 3 \& 4 images per page + \item Redesign the cover page \& note paper title + \item Add commands to create empty note paper with(out) chapter title \& page number + \item Add commands to create empty note paper with logo and info on the top +\end{itemize} + +\newpage +\appendix +\section{Document Example} +\begin{lstlisting}[style=TeX] +\documentclass[darker]{notebeamer} +\begin{document} + % Assign the author & mail address + \author{Axia} \mail{xiamyphys@gmail.com} + % Assign the titlepage, sitcker and logo file + \flyleaf{titlepage.pdf} \sticker{Inuyasa.jpg} + % Assign the logo link and info + \logo[https://sci.hdu.edu.cn]{HDU.pdf}[Hangzhou·Zhejiang] + % Create a cover page with color H6, title and subtitle + \notebook[H6]{Quantum Transport}[Dirac Fermion Discussion Group] + % Assign the chapter title and the file will be inserted after + \chapter[PHYSICAL REVIEW B VOLUME 50, NUMBER 8]{newnotedemo.pdf} + % Insert the first page of the file with the format 1 image per page + \newnote{1}{1} + % Create a cover page with color H5, title + \notebook[H5]{Advanced Quantum Mechanics} + \chapter[Introduction \& Fundamental Concepts]{newnote3sdemo.pdf} + % Insert the file from page 1 to 3 with the format 3 images per page + \newnotesss{1}{3} + \chapter[SPD Basic: Transport]{newnote4sdemo.pdf} + % Insert the file from page 1 to 4 with the format 4 images per page + \newnotessss{1}{4} + % Create an empty note paper with no page number + \emptynote* + % Create an empty note paper with logo and info but no page number + \newhdunote* +\end{document} +\end{lstlisting} + +\label{dirtree} +\dirtree{% +.1 tex/. +.2 figures/. +.3 HDU.pdf. +.3 Inuyasa.jpg. +.3 titlepage.pdf. +.3 newnotedemo.pdf. +.3 newnote3sdemo.pdf. +.3 newnote4sdemo.pdf. +.2 notebeamer-demo.tex. +.2 notebeamer.cls. +.2 License. +.2 README.md. +} + +\includepdf{notebeamer-demo9.pdf} +\end{document}
\ No newline at end of file diff --git a/macros/latex/contrib/notebeamer/tex/notebeamer.cls b/macros/latex/contrib/notebeamer/tex/notebeamer.cls new file mode 100644 index 0000000000..98fc9f5af2 --- /dev/null +++ b/macros/latex/contrib/notebeamer/tex/notebeamer.cls @@ -0,0 +1,256 @@ +%% ************************************************************************************************************ +%% ****************************************************** * +%% * This work may be distributed and/or modified under * * ***** * * * +%% * the conditions of the LaTeX Project Public License * * ** * * *** * * * +%% * http://www.latex-project.org/lppl.txt * * * ** * ***** * * +%% * either version 1.3c of this license or any later * * * ** * ***** * * +%% * version. * * * ** * * * * * +%% ****************************************************** ***** ** * * *** * * * +%% start of file `notebeamer.cls'. * +%% Copyright 2023 LiteLaTeX (xiamyphys@gmail.com) * +%% available at https://github.com/xiamyphys/Note-template-imitated-from-Goodnotes-made-by-LaTeX- * +%% Thanks `wipet' (https://petr.olsak.net/) provides Beamers automatically inserts module * +%% !Mode:: "TeX:UTF-8" * +%% ************************************************************************************************************ +\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{notebeamer}[2023/11/01 v2.0a NoteBeamer document class] + +%% Global opinion +\RequirePackage{kvoptions} +\RequirePackage{etoolbox} +\SetupKeyvalOptions{family=NB, prefix=NB@, setkeys=\kvsetkeys} +\newcommand{\ekv}[1]{\kvsetkeys{NB}{#1}} +\DeclareStringOption[normal]{color} +\DeclareVoidOption{lighter}{\ekv{color=lighter}} +\DeclareVoidOption{normal}{\ekv{color=normal}} +\DeclareVoidOption{darker}{\ekv{color=darker}} +\DeclareDefaultOption{\PassOptionsToClass{\CurrentOption}{standalone}} +\ProcessKeyvalOptions*\relax +\PassOptionsToPackage{quiet}{fontspec} +\LoadClass[tikz]{standalone} + +%% Packages +\RequirePackage{xparse} +\RequirePackage[colorlinks,linkcolor=black,urlcolor=black]{hyperref} +\RequirePackage{ctex} +\RequirePackage{fontawesome5} + +%% Global definitions +\newcommand{\notewidth}{6.32} +\newcommand{\noteheight}{8.18} +\renewcommand{\author}[1]{\gdef\@author{#1}} +\newcommand{\mail}[1]{\gdef\@mail{\href{mailto:#1}{\nolinkurl{#1}}}} +\NewDocumentCommand\chapter{s o m}{ + \IfBooleanTF{#1}{}{ + \refstepcounter{chap} + } + \gdef\@chapter{#2} + \gdef\@courseware{#3} + \setcounter{note}{0} +} +\newcommand{\flyleaf}[1]{\gdef\@flyleaf{#1}} +\newcommand{\sticker}[1]{\gdef\@sticker{#1}} +\NewDocumentCommand\logo{O{https://www.hdu.edu.cn} m O{浙江·杭州·下沙高教园}}{\gdef\@edu{#1}\gdef\@logo{#2}\gdef\@address{#3}} + +%% notepages +\RequirePackage{graphics} +\graphicspath{{./beamer/}{./figure/}{./figures/}{./image/}{./images/}{./graphics/}{./graphic/}{./pictures/}{./picture/}}% 路径索引 +\definecolor{lightyello}{HTML}{F8F7E9} +\definecolor{紺色}{HTML}{223A70} +\newcounter{chap} +\newcounter{note} +\newcommand{\chaptername}{\faIcon{envira} Chapter} + +%%%% 1 note per page +\newcommand{\newnote}[2]{ + \refstepcounter{note} + \foreach \n in {#1,...,#2}{ + \begin{tikzpicture} + \fill [lightyello!20] (0,0) rectangle (\notewidth in,\noteheight in);% 边界 + \ifcsname @sticker\endcsname\node [anchor=east,opacity=0.24,inner sep=0pt] at (0.985*\notewidth in,0.0684*\noteheight in) {\includegraphics[height=0.85072 in]{\@sticker}};\fi + + %%%%%% imput file + \node [yshift=\thenote*36*0.026*\noteheight in,inner sep=0pt] at (0.4*\notewidth in,0.032*\noteheight in-13.5*0.026*\noteheight in) {\ifcsname @chapter\endcsname\includegraphics[height=5.63602 in,page=\n]{\@courseware}\fi}; + + %%%%%% draw lines & dots: right + \foreach \a in {10,...,36} + \foreach \b in {29,...,35} + \fill [fill=gray,xshift=\b*0.025*\notewidth in,yshift=\a*\noteheight*0.026 in] (0.05*\notewidth in,0.032*\noteheight in) circle (0.006);% 点 + \foreach \a in {10,...,35} + \draw [line cap=round,opacity=0.5,gray!80,yshift=\a*\noteheight*0.026 in] (0.75*\notewidth in+0.25*0.026*\notewidth in,0.032*\noteheight in) --++ (0.2*\notewidth in-0.25*0.026*\notewidth in,0);% 横线 + + %%%%%% draw lines & dots: bottom + \foreach \a in {0,...,9,9} + \foreach \b in {1,...,35} + \fill [fill=gray,xshift=\b*0.025*\notewidth in,yshift=\a*\noteheight*0.026 in] (0.05*\notewidth in,0.032*\noteheight in) circle (0.006);% 点 + \foreach \a in {1,...,9,9} + \draw [line cap=round,opacity=0.5,gray!80,yshift=\a*\noteheight*0.026 in] (0.05*\notewidth in,0.032*\noteheight in) --++ (0.9*\notewidth in,0);% 横线 + + \draw [line cap=round,紺色!80,opacity=0.8,thick] (0.05*\notewidth in,0.032*\noteheight in) --++ (0.9*\notewidth in,0);% 底部粗线 + + \draw [line cap=round,紺色!80,opacity=0.8,thick,yshift=36*0.026*\noteheight in] (0.05*\notewidth in,0.032*\noteheight in) --++ (0.9*\notewidth in,0) node [anchor=south west,at start] {\small\color{紺色}\bfseries\sffamily\chaptername~\ifcsname @chapter\endcsname\thechap. \@chapter\fi} node [anchor=south east] {\small\color{紺色}\bfseries\sffamily Page \thepage\quad};% 顶部粗线 + + \draw [line cap=round,thick,opacity=0.4,gray] (0.75*\notewidth in,0.032*\noteheight in+9.25*0.026*\noteheight in) -- (0.75*\notewidth in,0.032*\noteheight in+35.75*0.026*\noteheight in);% 分栏线 + \end{tikzpicture} + } +} + +%%%% 3 beamers per page +\newcommand{\threebeamers}[3]{ + \refstepcounter{note} + \begin{tikzpicture} + \fill [lightyello!20] (0,0) rectangle (\notewidth in,\noteheight in);% 边界 + \ifcsname @sticker\endcsname\node [anchor=east,opacity=0.24,inner sep=0pt] at (0.985*\notewidth in,0.0684*\noteheight in) {\includegraphics[height=0.85072 in]{\@sticker}};\fi + + %%%%%% imput file + \foreach \n in {#1,#2,#3} + \node [yshift=((42-\n*12+(\thenote-1)*36)*0.026*\noteheight in),inner sep=0pt] at (0.3125*\notewidth in,0.032*\noteheight in) {\ifcsname @chapter\endcsname\includegraphics[height=2.44582 in,page=\n]{\@courseware}\fi}; + + %%%%%% draw lines & dots + \foreach \a in {0,...,36} + \foreach \b in {22,...,35} + \fill [fill=gray,xshift=\b*0.025*\notewidth in,yshift=\a*\noteheight*0.026 in] (0.05*\notewidth in,0.032*\noteheight in) circle (0.006);% 点 + \foreach \a in {1,...,35} + \draw [line cap=round,opacity=0.5,gray!80,yshift=\a*\noteheight*0.026 in] (0.575*\notewidth in+0.25*0.026*\notewidth in,0.032*\noteheight in) --++ (0.375*\notewidth in-0.25*0.026*\notewidth in,0);% 横线 + + \draw [line cap=round,紺色!80,opacity=0.8,thick] (0.05*\notewidth in,0.032*\noteheight in) --++ (0.9*\notewidth in,0);% 底部粗线 + + \draw [line cap=round,紺色!80,opacity=0.8,thick,yshift=36*0.026*\noteheight in] (0.05*\notewidth in,0.032*\noteheight in) --++ (0.9*\notewidth in,0) node [anchor=south west,at start] {\small\color{紺色}\bfseries\sffamily\chaptername~\ifcsname @chapter\endcsname\thechap. \@chapter\fi} node [anchor=south east] {\small\color{紺色}\bfseries\sffamily Page \thepage\quad};% 顶部粗线 + + \draw [line cap=round,thick,opacity=0.4,gray] (0.575*\notewidth in,0.032*\noteheight in+0.25*0.026*\noteheight in) -- (0.575*\notewidth in,0.032*\noteheight in+35.75*0.026*\noteheight in);% 分栏线 + \end{tikzpicture} +} +%%%%%% Simplify loop 3 +\newcount\tmpnum +\def\newnotesss#1#2{% + \def\maxnum{#2}\tmpnum=1 + \loop + \unless\ifnum\tmpnum>#2 \threebeamers{\valnum0}{\valnum1}{\valnum2} + \advance\tmpnum by3 + \repeat +} +\def\valnum#1{% + \ifnum\maxnum>\numexpr\tmpnum+#1\relax + \the\numexpr\tmpnum+#1\relax \else \maxnum\fi +} + +%%%% 4 slides per page +\newcommand{\fourbeamers}[4]{ + \refstepcounter{note} + \begin{tikzpicture} + \fill [lightyello!20] (0,0) rectangle (\notewidth in,\noteheight in);% 边界 + \ifcsname @sticker\endcsname\node [anchor=east,opacity=0.24,inner sep=0pt] at (0.985*\notewidth in,0.0684*\noteheight in) {\includegraphics[height=0.85072 in]{\@sticker}};\fi + %%%%%% imput file + \foreach \n in {#1,#2,#3,#4} + \node [yshift=((40.5-\n*9+(\thenote-1)*36)*0.026*\noteheight in),inner sep=0pt] at (0.3125*\notewidth in,0.032*\noteheight in) {\ifcsname @chapter\endcsname\includegraphics[height=1.80778 in,page=\n]{\@courseware}\fi}; + + \foreach \a in {0,...,36} + \foreach \b in {22,...,35} + \fill [fill=gray,xshift=\b*0.025*\notewidth in,yshift=\a*\noteheight*0.026 in] (0.05*\notewidth in,0.032*\noteheight in) circle (0.006);% 点 + \foreach \a in {1,...,35} + \draw [line cap=round,opacity=0.5,gray!80,yshift=\a*\noteheight*0.026 in] (0.575*\notewidth in+0.25*0.026*\notewidth in,0.032*\noteheight in) --++ (0.375*\notewidth in-0.25*0.026*\notewidth in,0);% 横线 + + \draw [line cap=round,紺色!80,opacity=0.8,thick] (0.05*\notewidth in,0.032*\noteheight in) --++ (0.9*\notewidth in,0);% 底部粗线 + + \draw [line cap=round,紺色!80,opacity=0.8,thick,yshift=36*0.026*\noteheight in] (0.05*\notewidth in,0.032*\noteheight in) --++ (0.9*\notewidth in,0) node [anchor=south west,at start] {\small\color{紺色}\bfseries\sffamily\chaptername~\ifcsname @chapter\endcsname\thechap. \@chapter\fi} node [anchor=south east] {\small\color{紺色}\bfseries\sffamily Page \thepage\quad};% 顶部粗线 + + \draw [line cap=round,thick,opacity=0.4,gray] (0.575*\notewidth in,0.032*\noteheight in+0.25*0.026*\noteheight in) -- (0.575*\notewidth in,0.032*\noteheight in+35.75*0.026*\noteheight in);% 分栏线 + \end{tikzpicture} +} +%%%%%% Simplify loop 4 +\newcount\tmpnum +\def\newnotessss#1#2{% + \def\maxnum{#2}\tmpnum=1 + \loop + \unless\ifnum\tmpnum>#2 \fourbeamers{\valnum0}{\valnum1}{\valnum2}{\valnum3} + \advance\tmpnum by4 + \repeat +} +\def\valnum#1{% + \ifnum\maxnum>\numexpr\tmpnum+#1\relax + \the\numexpr\tmpnum+#1\relax \else \maxnum\fi +} + +%%%% emptynote (*without chapter title & page number) +\NewDocumentCommand\emptynote{s}{ +\begin{tikzpicture} + \fill [lightyello!20] (0,0) rectangle (\notewidth in,\noteheight in);% 边界 + \ifcsname @sticker\endcsname\node [anchor=east,opacity=0.24,inner sep=0pt] at (0.985*\notewidth in,0.0684*\noteheight in) {\includegraphics[height=0.85072 in]{\@sticker}};\fi + \foreach \a in {0,...,36} + \foreach \b in {1,...,35} + \fill [fill=gray,xshift=\b*0.025*\notewidth in,yshift=\a*\noteheight*0.026 in] (0.05*\notewidth in,0.032*\noteheight in) circle (0.006);% 点 + \foreach \a in {1,...,35} + \draw [line cap=round,opacity=0.5,gray!80,yshift=\a*\noteheight*0.026 in] (0.05*\notewidth in,0.032*\noteheight in) --++ (0.9*\notewidth in,0);% 横线 + + \draw [line cap=round,紺色!80,opacity=0.8,thick] (0.05*\notewidth in,0.032*\noteheight in) --++ (0.9*\notewidth in,0);% 底部粗线 + + \IfBooleanTF{#1} + { + \draw [line cap=round,紺色!80,opacity=0.8,thick,yshift=36*0.026*\noteheight in] (0.05*\notewidth in,0.032*\noteheight in) --++ (0.9*\notewidth in,0) node [anchor=south west,at start] {\small\color{紺色}\bfseries\sffamily\chaptername} node [anchor=south east] {\small\color{紺色}\bfseries\sffamily Page\addtocounter{page}{-1}\quad\quad};% 顶部粗线 + } + { + \draw [line cap=round,紺色!80,opacity=0.8,thick,yshift=36*0.026*\noteheight in] (0.05*\notewidth in,0.032*\noteheight in) --++ (0.9*\notewidth in,0) node [anchor=south west,at start] {\small\color{紺色}\bfseries\sffamily\chaptername~\ifcsname @chapter\endcsname\thechap. \@chapter\fi} node [anchor=south east] {\small\color{紺色}\bfseries\sffamily Page \thepage\quad};% 顶部粗线 + } + + \draw [line cap=round,thick,opacity=0.4,gray] (0.5*\notewidth in,0.032*\noteheight in+0.25*0.026*\noteheight in) -- (0.5*\notewidth in,0.032*\noteheight in+35.75*0.026*\noteheight in);% 分栏线 +\end{tikzpicture} +} + +%%%% emptynote with school title (*without chapter title & page number) +\NewDocumentCommand\newhdunote{s}{ +\begin{tikzpicture} + \fill [lightyello!20] (0,0) rectangle (\notewidth in,\noteheight in);% 边界 + \ifcsname @sticker\endcsname\node [anchor=east,opacity=0.24,inner sep=0pt] at (0.985*\notewidth in,0.0684*\noteheight in) {\includegraphics[height=0.85072 in]{\@sticker}};\fi + \foreach \a in {0,...,35} + \foreach \b in {1,...,29} + \fill [fill=gray,xshift=\b*0.03*\notewidth in,yshift=\a*\noteheight*0.026 in] (0.05*\notewidth in,0.032*\noteheight in) circle (0.006);% 点 + \foreach \a in {1,...,34} + \draw [line cap=round,opacity=0.5,gray!80,yshift=\a*\noteheight*0.026 in] (0.05*\notewidth in,0.032*\noteheight in) --++ (0.9*\notewidth in,0);% 横线 + + \IfBooleanTF{#1} + { + \draw [line cap=round,紺色!80,opacity=0.8,thick] (0.05*\notewidth in,0.032*\noteheight in) --++ (0.9*\notewidth in,0) node [anchor=north east,darkgray] {\small\color{紺色}\bfseries\sffamily Page\addtocounter{page}{-1}\quad\quad};% 底部粗线 + }{ + \draw [line cap=round,紺色!80,opacity=0.8,thick] (0.05*\notewidth in,0.032*\noteheight in) --++ (0.9*\notewidth in,0) node [anchor=north east,darkgray] {\small\color{紺色}\bfseries\sffamily Page \thepage\quad};% 底部粗线 + } + + \draw [line cap=round,紺色!80,opacity=0.8,thick,yshift=35*0.026*\noteheight in] (0.05*\notewidth in,0.032*\noteheight in) --++ (0.9*\notewidth in,0)\ifcsname @logo\endcsname node [anchor=west,at start,,yshift=0.029*\noteheight in,inner sep=0pt] {\href{\@edu}{\includegraphics[height=0.42536 in]{\@logo}}} node [anchor=east,yshift=0.029*\noteheight in] {\small\bfseries\heiti\color{紺色}\faIcon{map-pin} \@address\quad\quad}\fi;% 顶部粗线 + + \draw [line cap=round,thick,opacity=0.4,gray] (0.5*\notewidth in,0.032*\noteheight in+0.25*0.026*\noteheight in) -- (0.5*\notewidth in,0.032*\noteheight in+34.75*0.026*\noteheight in);% 分栏线 +\end{tikzpicture} +} + +%% covers +\ifdefstring{\NB@color}{lighter}{\newcommand{\@saturation}{.16}}{\relax} +\ifdefstring{\NB@color}{normal}{\newcommand{\@saturation}{.12}}{\relax} +\ifdefstring{\NB@color}{darker}{\newcommand{\@saturation}{.08}}{\relax} + +\definecolor{H1}{Hsb}{349,\@saturation,.9}% 海棠紅 (Hangzhou MTR L 1 ) +\definecolor{H2}{Hsb}{23, \@saturation,.9}% 丹桂橙 (Hangzhou Metro 2 ) +\definecolor{H3}{Hsb}{48, \@saturation,.9}% 柠檬黄 (Hangzhou Metro 3 ) +\definecolor{H4}{Hsb}{103,\@saturation,.9}% 香樟绿 (Hangzhou Metro 4 ) +\definecolor{H5}{Hsb}{188,\@saturation,.9}% 青藍色 (Hangzhou MTR L 5 ) +\definecolor{H6}{Hsb}{207,\@saturation,.9}% 海洋蓝 (Hangzhou Metro 6 ) +\definecolor{H7}{Hsb}{290,\@saturation,.9}% 浪漫紫 (Hangzhou Metro 7 ) + +\NewDocumentCommand\notebook{s O{H5} m O{}}{ + \setcounter{chap}{0} + \setcounter{page}{1} + \addtocounter{page}{-1} + \begin{tikzpicture} + \fill [#2] (0,0) rectangle (\notewidth in,\noteheight in);% 边界 + \fill [white,opacity=0.17] (0.2*\notewidth in,0.6*\noteheight in) rectangle (\notewidth in,0); + \fill [white,opacity=0.17] (0.3*\notewidth in,0.7*\noteheight in) rectangle (\notewidth in,0); + \node at (0.65*\notewidth in,0.65*\noteheight in) {\LARGE\bfseries\sffamily #3}; + \node [rotate=90,opacity=0.4] at (0.25*\notewidth in,0.3*\noteheight in) {\sffamily\Large\bfseries\MakeUppercase{#4}}; + \draw [thick,line cap=round] (0.65*\notewidth in,0.05*\noteheight in) --++ (0.25*\notewidth in,0) node [anchor=south west] {\large\faIcon{pen}} \ifcsname @mail\endcsname node [midway,anchor=south] {\bfseries\texttt{\@mail}}\fi node [midway,anchor=south,yshift=2em] {\bfseries\sffamily\large\ifcsname @author\endcsname\@author\fi}; + \ifcsname @logo\endcsname\node [anchor=north west] at (0.025*\notewidth in,0.991*\noteheight in) {\href{\@edu}{\includegraphics[width=2.212 in]{\@logo}}};\fi + \end{tikzpicture} + \ifcsname @flyleaf\endcsname + \addtocounter{page}{-1} + \begin{tikzpicture} + \node [inner sep=0pt] at (0.5*\notewidth in,0.5*\noteheight in) {\includegraphics[width=\notewidth in]{\@flyleaf}}; + \end{tikzpicture} + \fi + \IfBooleanTF{#1}{\emptynote*}{} +}
\ No newline at end of file |