summaryrefslogtreecommitdiff
path: root/macros/latex/contrib
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2021-10-23 03:00:39 +0000
committerNorbert Preining <norbert@preining.info>2021-10-23 03:00:39 +0000
commitd7054d4900d83d1ca32cddacbd6f3d07dfc2f4cc (patch)
tree903ceecb21d2334979c8b5d04e019a0170352ccf /macros/latex/contrib
parentd8b81c54ee53a93b7f939601fd6438d0f194978b (diff)
CTAN sync 202110230300
Diffstat (limited to 'macros/latex/contrib')
-rw-r--r--macros/latex/contrib/easybook/README.md2
-rw-r--r--macros/latex/contrib/easybook/easybook.dtx101
-rw-r--r--macros/latex/contrib/easybook/easybook.pdfbin577644 -> 577576 bytes
-rw-r--r--macros/latex/contrib/easybook/easybook.tex54
-rw-r--r--macros/latex/contrib/handoutwithnotes/README.md65
-rw-r--r--macros/latex/contrib/handoutwithnotes/handoutWithNotes.sty639
6 files changed, 782 insertions, 79 deletions
diff --git a/macros/latex/contrib/easybook/README.md b/macros/latex/contrib/easybook/README.md
index 2d410a3109..4e12be5ac1 100644
--- a/macros/latex/contrib/easybook/README.md
+++ b/macros/latex/contrib/easybook/README.md
@@ -1,6 +1,6 @@
# Easybook document class
-Eeasybook is based on the book document class of ctexbook to create a minimalist style template. It also has the functions of book and article document class. Combined with the general framework design of the dissertation of various universities in China, providing multiple commands and interfaces allows users to easily customize the thesis template. Its basic macro package easybase can also be used with CTeX and standard document classes.
+Eeasybook is based on the book document class of ctexbook to create a minimalist style template. It also has the functions of book and article document class. Combined with the general framework design of the dissertation of many universities in China, providing multiple commands and interfaces allows users to easily customize the thesis template. Its basic macro package easybase can also be used with CTeX and standard document classes.
## License
diff --git a/macros/latex/contrib/easybook/easybook.dtx b/macros/latex/contrib/easybook/easybook.dtx
index 6fef9a504a..053bb668e8 100644
--- a/macros/latex/contrib/easybook/easybook.dtx
+++ b/macros/latex/contrib/easybook/easybook.dtx
@@ -15,7 +15,7 @@
%<*class>
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\RequirePackage{l3keys2e}
-\ProvidesExplClass{easybook}{2021/10/21}{1.3X}
+\ProvidesExplClass{easybook}{2021/10/21}{1.40}
{Typeset Chinese theses or books}
\bool_set_false:N \l__eb_compile_draft_bool
@@ -319,7 +319,7 @@
%<*package>
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\RequirePackage{l3keys2e,etoolbox}
-\ProvidesExplPackage{easybase}{2021/10/21}{1.3X}
+\ProvidesExplPackage{easybase}{2021/10/21}{1.40}
{Typeset Chinese theses or books}
\cs_generate_variant:Nn \dim_set:Nn { NV }
@@ -339,20 +339,19 @@
\seq_set_from_clist:Nn \l_tmpa_seq {#1}
\seq_map_inline:Nn \l_tmpa_seq {#2}
}
-\cs_new_protected:Npn \eb_char_patch_cmd:nnn #1#2#3
+\cs_new_protected:Npn \eb_char_patch_cmd:wnn #1#2#3
{
\ExplSyntaxOn\makeatletter
+ \eb_patch_cmd:wnn {#1} {#2} {#3}
+ \ExplSyntaxOff\makeatother
+ }
+\cs_new_protected:Npn \eb_patch_cmd:wnn #1#2#3
+ {
\eb_clist_map_inline:nn {#1}
{
\ctex_patch_cmd_once:NnnnTF ##1 { } {#2} {#3}
{ } { \ctex_patch_failure:N ##1 }
}
- \ExplSyntaxOff\makeatother
- }
-\cs_new_protected:Npn \eb_at_end_patch_cmd:nnn #1#2#3
- {
- \eb_at_end_preamble:n
- { \eb_char_patch_cmd:nnn {#1} {#2} {#3} }
}
\cs_new_protected:Npn \eb_preto_cmd:Nn #1#2
{
@@ -683,8 +682,8 @@
}
\ctex_define:nn { hdrset }
{
- head-foot .tl_set:N = \l__eb_fancyhf_content_tl,
- head-foot .initial:n =
+ headfoot .tl_set:N = \l__eb_fancyhf_content_tl,
+ headfoot .initial:n =
{
\ifbool{@twoside}
{
@@ -930,8 +929,8 @@
fntext-num .value_required:n = true,
fntext-num/unknown .code:n =
{ \eb_fnmate_short_label_set:nn {#1} { thefootnote } },
- fnboth-num .meta:n = { fntext-num = #1,fnmark-num = #1 },
- fnboth-num .initial:n = plain,
+ fnmate-num .meta:n = { fntext-num = #1,fnmark-num = #1 },
+ fnmate-num .initial:n = plain,
unknown .code:n = \eb_msg_unknown_option:n { hdrset }
}
@@ -1082,7 +1081,7 @@
\@footnotemark
}
}
-\eb_at_end_patch_cmd:nnn { \@footnotetext,\@mpfootnotetext }
+\eb_patch_cmd:wnn { \@footnotetext,\@mpfootnotetext }
{ \reset@font }
{
\linespread{\fp_use:N \l__eb_spread_footnote_fp}
@@ -1304,8 +1303,8 @@
{
lolskip .skip_set:N = \eb@toc@lolskip,
lolskip .initial:n = 10pt,
- toc-voffset .skip_set:N = \l__eb_toc_voffset_skip,
- toc-voffset .initial:n =
+ tocvoffset .skip_set:N = \l__eb_toc_voffset_skip,
+ tocvoffset .initial:n =
{ \bool_if:NTF \l__eb_class_book_bool { 1pc } { 0.35pc } },
line-align .bool_set:N = \l__eb_toc_line_align_bool,
line-align .default:n = true,
@@ -1510,18 +1509,18 @@
\ctex_define:nn { style }
{
- figure-con .tl_set:N = \l__eb_figure_connector_tl,
- table-con .tl_set:N = \l__eb_table_connector_tl,
- listing-con .tl_set:N = \l__eb_lstlisting_connector_tl,
- equation-con .tl_set:N = \l__eb_equation_connector_tl,
- number-con .meta:n =
+ figure-connect .tl_set:N = \l__eb_figure_connector_tl,
+ table-connect .tl_set:N = \l__eb_table_connector_tl,
+ listing-connect .tl_set:N = \l__eb_lstlisting_connector_tl,
+ equation-connect .tl_set:N = \l__eb_equation_connector_tl,
+ connect-all .meta:n =
{
- figure-con = #1,
- table-con = #1,
- listing-con = #1,
- equation-con = #1
+ figure-connect = #1,
+ table-connect = #1,
+ listing-connect = #1,
+ equation-connect = #1
},
- number-con .initial:n = { . },
+ connect-all .initial:n = { . },
unknown .code:n = \eb_msg_unknown_option:n { style }
}
\eb_clist_map_inline:nn
@@ -1699,7 +1698,7 @@
\ctex_assign_heading_name:nn { biappendix } {#1}
\int_compare:nNnTF { \c@chapter } > { 0 }
{
- \eb_char_patch_cmd:nnn \CTEX@addbitocline
+ \eb_char_patch_cmd:wnn \CTEX@addbitocline
{
\def\CTEX@prechapter{\CTEX@prebichapter}
\def\CTEX@thechapter{\CTEX@bichapter@number}
@@ -1737,16 +1736,16 @@
\ctex_define:nn { subfont }
{
- table-cap .tl_set:N = \l__eb_subfont_table_tl,
- table-cap .initial:n = \sffamily\small,
- figure-cap .tl_set:N = \l__eb_subfont_figure_tl,
- figure-cap .initial:n = \sffamily\small,
- listing-cap .tl_set:N = \l__eb_subfont_listing_tl,
- listing-cap .initial:n = \sffamily\small,
- footnote .tl_set:N = \l__eb_subfont_footnote_tl,
- footnote .initial:n = \rmfamily,
- marginpar .tl_set:N = \marginfont,
- marginpar .initial:n = \rmfamily\footnotesize,
+ caption-table .tl_set:N = \l__eb_subfont_table_tl,
+ caption-table .initial:n = \sffamily\small,
+ caption-figure .tl_set:N = \l__eb_subfont_figure_tl,
+ caption-figure .initial:n = \sffamily\small,
+ caption-listing .tl_set:N = \l__eb_subfont_listing_tl,
+ caption-listing .initial:n = \sffamily\small,
+ footnote .tl_set:N = \l__eb_subfont_footnote_tl,
+ footnote .initial:n = \rmfamily,
+ marginpar .tl_set:N = \marginfont,
+ marginpar .initial:n = \rmfamily\footnotesize,
unknown .code:n = \eb_msg_unknown_option:n { subfont }
}
@@ -1770,11 +1769,11 @@
footnote .initial:n = 1.2,
spread-all .meta:n =
{
- line = #1,
- table = #1,
- math = #1,
- caption = #1,
- footnote = #1
+ line = #1,
+ table = #1,
+ math = #1,
+ caption = #1,
+ footnote = #1
},
unknown .code:n = \eb_msg_unknown_option:n { spread }
}
@@ -2034,7 +2033,7 @@
notebraces .tl_set:N = \l__eb_thm_notebraces_tl,
unknown .code:n = \eb_msg_unknown_option:n { thmset }
}
-\eb_at_end_patch_cmd:nnn \thmt@setheadstyle
+\eb_patch_cmd:wnn \thmt@setheadstyle
{ \def\NAME{\the\thm@headfont ##1} }
{
\def\NAME
@@ -2105,14 +2104,14 @@
\linespread{\fp_use:N \l__eb_spread_math_fp}
\selectfont\ignorespaces
}
-\eb_at_end_patch_cmd:nnn
+\eb_patch_cmd:wnn
{ \start@gather,\start@align,\start@multline }
{ \collect@body }
{
\linespread{\fp_use:N \l__eb_spread_math_fp}
\selectfont\collect@body
}
-\eb_at_end_patch_cmd:nnn \gather@split
+\eb_patch_cmd:wnn \gather@split
{ \spread@equation }
{
\linespread{\fp_use:N \l__eb_spread_math_fp}
@@ -2169,12 +2168,12 @@
backend/biblatex .code:n =
{ \bool_set_false:N \l__eb_backend_bibtex_bool },
- bib-style .code:n =
+ bibstyle .code:n =
{ \tl_set:Nn \l__eb_bib_all_style_tl {#1} },
- bib-style .value_required:n = true,
- bib-style .initial:n = numerical,
+ bibstyle .value_required:n = true,
+ bibstyle .initial:n = numerical,
- cite-style .code:n =
+ citestyle .code:n =
{ \tl_set:Nn \l__eb_bib_cite_style_tl {#1} },
datafile .clist_set:N = \l__eb_bib_datafile_clist,
bitoc-title .tl_set:N = \l__eb_bib_en_bitoc_title_tl,
@@ -2382,7 +2381,7 @@
\eb_link_color_set:n
linkcolor .default:n = navyblue,
linkcolor .initial:n = navyblue,
- linkcol-all .code:n =
+ linkcolor-all .code:n =
{ \eb_define_link_color:n { \exp_not:n {#1} } }
}
\ctex_define:nx { style }
@@ -2469,7 +2468,7 @@
}
%</package>
%<*tcolorbox>
-\ProvidesExplFile{eb-tcolorbox.cfg}{2021/10/21}{1.3X}
+\ProvidesExplFile{eb-tcolorbox.cfg}{2021/10/21}{1.40}
{Customization of tcolorbox for easybook}
\tl_gset:Nn \eb@tc@line@skip { 0.5\baselineskip }
diff --git a/macros/latex/contrib/easybook/easybook.pdf b/macros/latex/contrib/easybook/easybook.pdf
index 06436bb1e8..8ca5f64aae 100644
--- a/macros/latex/contrib/easybook/easybook.pdf
+++ b/macros/latex/contrib/easybook/easybook.pdf
Binary files differ
diff --git a/macros/latex/contrib/easybook/easybook.tex b/macros/latex/contrib/easybook/easybook.tex
index 43d36ab171..60736dc607 100644
--- a/macros/latex/contrib/easybook/easybook.tex
+++ b/macros/latex/contrib/easybook/easybook.tex
@@ -20,7 +20,7 @@
name = easybook,
color-scheme = blue,
title = EASYBOOK 使用手册,
- version = v1.3X,
+ version = v1.40,
date = 2021/10/21,
authors = 瞿毅,
info = 排版简体中文学位论文和书籍,
@@ -28,7 +28,7 @@
url = https://gitee.com/texl3/easybook,
abstract =
{
- \cls*{easybook} 是基于 \cls*{ctexbook} 书籍文档类创建以极简为风格的模板,同时兼具 \cls*{book} 与 \cls*{article} 文档类的功能。结合中国各高校学位论文的通用框架设计,提供多个命令和接口可以使用户简便地定制论文模板。它的基础宏包 \pkg*{easybase} 还可以搭配 C\TeX 和标准文档类使用。
+ \cls*{easybook} 是基于 \cls*{ctexbook} 书籍文档类创建以极简为风格的模板,同时兼具 \cls*{book} 与 \cls*{article} 文档类的功能。结合中国许多高校学位论文的通用框架设计,提供多个命令和接口可以使用户简便地定制论文模板。它的基础宏包 \pkg*{easybase} 还可以搭配 C\TeX 和标准文档类使用。
},
arg-format = \normalfont\small\itshape,
abstract-format = \small,
@@ -191,7 +191,7 @@
文档页面尺寸选项将参数交给 \pkg*{geometry} 宏包处理,可使用它支持的所有纸张规格。建议选项值 \code{b5paper} 和 \keyis*-{zihao}{5},选项值 \code{a4paper} 和 \keyis*-{zihao}{-4} 配合。
\keyval-{config}{配置文件名}\Default
选项 \option{config} 载入用户配置文件,最好放在当前路径且需带有文件扩展名如 \code{tex}、\code{def} 和 \code{cfg}。
- \keybool{floatpage}\Default{true}
+ \keybool{floatpage}\Default{false}
开启这个选项后浮动环境 \env*{table} 和 \env*{figure} 的比例参数会使用默认值,关闭它则尽可能避免出现浮动页,使图表环境与正文段落更加紧凑,减少多余的空白版面。
\end{options}
@@ -216,7 +216,7 @@
\begin{center}
\begin{tblr}
{
- colspec = cccc,
+ colspec = @{}*{4}{c}@{},
hline{1,7} = {1pt,cnltxblue},
hline{2} = {0.6pt,cnltxblue}
}
@@ -225,7 +225,7 @@
\code{garamond} & EB Garamond & Libertinus Sans & LM Mono \\
\code{palatino} & TG Pagella & Libertinus Sans & LM Mono \\
\code{libertine} & TG Pagella & Libertinus Sans & LM Mono \\
- \code{times} & XITS & TG Heros & TG Cursor \\
+ \code{times} & XITS & TG Heros & TG Cursor
\end{tblr}
\end{center}
\end{options}
@@ -338,14 +338,14 @@
\begin{center}
\begin{tblr}
{
- colspec = *{5}{c},
+ colspec = @{}*{5}{c}@{},
hline{1,5} = {1pt,cnltxblue},
hline{3} = {0.6pt,cnltxblue}
}
\hyperref[subsec:style]{风格} & \hyperref[subsec:other font]{其它字体} & \hyperref[subsec:spacing]{行距} & \hyperref[subsec:hyperlinks]{超链接} & \hyperref[subsec:reference]{参考文献} \\
\module*{style} & \module*{subfont} & \module*{spread} & \module*{refset} & \module*{bibset} \\
\hyperref[subsec:theorem of style]{定理样式} & \hyperref[subsec:page margins]{页面尺寸} & \hyperref[subsec:header and footer]{页眉页脚} & \hyperref[subsec:catalog style]{目录样式} & \\
- \module*{thmset} & \module*{geoset} & \module*{hdrset} & \module*{tocset} & \\
+ \module*{thmset} & \module*{geoset} & \module*{hdrset} & \module*{tocset} &
\end{tblr}
\end{center}
@@ -360,7 +360,7 @@
uppercase = false
}
}
- \style{figure-con = {-}}
+ \style{figure-connect = {-}}
\end{ctexexam}
文档类有三种选项:布尔型 \boolkey*{key},选项的值为 \code{true} 或 \code{false},如果不指定默认为真。键值型 \key*-{key}{value} 需要为选项指定值,后面 \code{=} 号不能省略。选择型 \choicekey*{key}{one,\default{two},three} 根据提供的可选值进行设定。
@@ -395,15 +395,15 @@
\subsubsection{连接符}
\begin{options}
- \keyval-{figure-con}{图片连接符}\Module{style}\Default{\Carg{.}}
+ \keyval-{figure-connect}{图片连接符}\Module{style}\Default{\Carg{.}}
设置图片题注编号的连接符。
- \keyval-{table-con}{表格连接符}\Default{\Carg{.}}
+ \keyval-{table-connect}{表格连接符}\Default{\Carg{.}}
设置表格题注编号的连接符。
- \keyval-{listing-con}{代码连接符}\Default{\Carg{.}}
+ \keyval-{listing-connect}{代码连接符}\Default{\Carg{.}}
设置代码题注编号的连接符。
- \keyval-{equation-con}{公式连接符}\Default{\Carg{.}}
+ \keyval-{equation-connect}{公式连接符}\Default{\Carg{.}}
设置公式题注编号的连接符。
- \keyval-{number-con}{连接符}\Default{\Carg{.}}
+ \keyval-{connect-all}{连接符}\Default{\Carg{.}}
统一设置上述所有编号的连接符。
\end{options}
@@ -448,7 +448,7 @@
\command{DeclareLinkColor}[\splitmarg{风格名称,ctex@link,ctex@url,ctex@cite}]
可以使用 \cs{DeclareLinkColor} 命令声明新的超链接颜色样式,它的参数以英文逗号分隔,第一部分为颜色风格名称,后面三部分为 \code{HTML} 颜色代码,构成超链接颜色。
\end{commands}
- \keyval-{linkcol-all}{HTML颜色代码}\Default
+ \keyval-{linkcolor-all}{HTML颜色代码}\Default
统一设置超链接的各部分颜色,参数是 6 个十六进制数字组成的 \code{HTML} 颜色代码,任意颜色的代码可以在常见的图片处理工具拾色器中查看。
\keychoice{linktoc}{none,section,page,all}\Default{all}
将目录中的超链接取消、置于标题上、置于页码上或置于标题和页码上。
@@ -479,11 +479,11 @@
\subsection{其它字体}
\label{subsec:other font}
\begin{options}
- \keyval-{table-cap}{字体命令}\Module{subfont}\Default{\cs*{sffamily}\cs*{small}}
+ \keyval-{caption-table}{字体命令}\Module{subfont}\Default{\cs*{sffamily}\cs*{small}}
表格标题的字体设置,包括字体族、字体系列、字体尺寸和字体形状命令。
- \keyval-{figure-cap}{字体命令}\Default{\cs*{sffamily}\cs*{small}}
+ \keyval-{caption-figure}{字体命令}\Default{\cs*{sffamily}\cs*{small}}
图片标题的字体设置,包括字体族、字体系列、字体尺寸和字体形状命令。
- \keyval-{listing-cap}{字体命令}\Default{\cs*{sffamily}\cs*{small}}
+ \keyval-{caption-listing}{字体命令}\Default{\cs*{sffamily}\cs*{small}}
代码标题的字体设置,包括字体族、字体系列、字体尺寸和字体形状命令。
\keyval-{footnote}{字体命令}\Default{\cs*{rmfamily}}
设置脚注标记与内容的字体,包括字体族、字体系列、字体尺寸和字体形状命令。
@@ -496,9 +496,9 @@
\begin{options}
\keychoice{backend}{bibtex,biblatex}\Module{bibset}\Default{bibtex}
参考文献处理后端,默认用传统的 \hologo{BibTeX} 处理参考文献\footnote{使用 \hologo{BibTeX} 引擎时加载 \pkg*{natbib} 宏包,使用 \hologo{biber} 时将加载 \pkg*{biblatex} 宏包。}。
- \keychoice{bib-style}{numerical,authoryear,other sty}\Default{numerical}
+ \keychoice{bibstyle}{numerical,authoryear,other sty}\Default{numerical}
参考文献格式为中国的参考文献推荐标准 GB/T 7714-2015,有顺序编码制和著者-出版年制两种风格,理工科类一般使用顺序编码制,文科类一般使用著者-出版年制。若使用其它格式,使用 \hologo{BibTeX} 处理时需确保正确的 \code{bst} 文件,使用 \hologo{biber} 处理可使用 \pkg*{biblatex} 宏包支持的参考文献风格名称。
- \keyval-{cite-style}{标注风格}\Default
+ \keyval-{citestyle}{标注风格}\Default
标注参考文献的风格,选项 \keyis-{backend}{bibtex} 下可使用 \option{super}(数字上标标注,默认)或 \option{numbers}(数字标注)等 \pkg*{natbib} 宏包带有的标注风格,选项 \keyis-{backend}{biblatex} 下可使用 \pkg*{biblatex} 宏包支持的标注风格名称。
\keyval-{datafile}{参考文献数据库名}\Default
参考文献数据库的文件名,可以是单个文件也可以是以括号包裹并以英文逗号分隔的文件列表,使用 \hologo{biber} 处理时要带有 \code{bib} 后缀,若不在当前文件夹名称需要包含路径。不设置参考文献数据库名时 \module*{bibset} 中的选项会失效,即不自动载入 \pkg*{natbib} 或 \pkg*{biblatex} 宏包,此时需要手动载入相关宏包配置参考文献。
@@ -637,7 +637,7 @@
\label{subsec:header and footer}
模块 \module*{hdrset} 设置的命令由 \pkg*{fancyhdr} 宏包提供支持。在 \cls*{book} 模式时使用章节标题标记选项 \option{chap-mark} 和 \option{sec-mark},在 \cls*{article} 模式时使用 \option{sec-mark} 和 \option{subsec-mark} 选项,这与标准文档类的行为一致。标题标记由标签和标题组成,选项中参数 \code{\#1} 代表当前章、节或小节的标题。也可以直接重新定义这些选项对应的标题标记命令,但此时标记大写选项 \module*{style/}\option{uppercase} 失效。
\begin{options}
- \keyval-{head-foot}{页眉页脚代码}\Module{hdrset}
+ \keyval-{headfoot}{页眉页脚代码}\Module{hdrset}
设置页眉页脚的格式,使用 \pkg*{fancyhdr} 支持的 \cs*{fancyhead} 和 \cs*{fancyhead} 等命令,或在正文中使用这些命令改变其后的页面风格。
\keyval-{chap-mark}{标题标记}
标题标记命令 \cs*{chaptermark} 的内容,包括了标签选项 \option{chap-label} 的内容。
@@ -669,7 +669,7 @@
\begin{commands}\noitemsep
\command{easyhead}[\oarg{位置}\marg{内容}]\default{}
\command{easyfoot}[\oarg{位置}\marg{内容}]
- 命令 \cs{easyhead} 和 \cs{easyfoot} 的使用方法与 \cs{fancyhead} 和 \cs{fancyfoot} 完全相同,它们需要在 \option{head-foot} 选项中使用,设置的是一个名为 \code{fancy} 的页面风格。\pkg*{fancyhdr} 将页眉页脚分成了左中右和奇数页(odd)、偶数页(even)共 12 个部分,可选参数中 \code{E} 和 \code{O} 代表偶数和奇数,\code{L}、\code{C} 和 \code{R} 代表左、中和右部分。单面打印时,含有偶数位置的命令无效。
+ 命令 \cs{easyhead} 和 \cs{easyfoot} 的使用方法与 \cs{fancyhead} 和 \cs{fancyfoot} 完全相同,它们需要在 \option{headfoot} 选项中使用,设置的是一个名为 \code{fancy} 的页面风格。\pkg*{fancyhdr} 将页眉页脚分成了左中右和奇数页(odd)、偶数页(even)共 12 个部分,可选参数中 \code{E} 和 \code{O} 代表偶数和奇数,\code{L}、\code{C} 和 \code{R} 代表左、中和右部分。单面打印时,含有偶数位置的命令无效。
\end{commands}
\begin{commands}\noitemsep
@@ -684,7 +684,7 @@
\begin{ctexexam}
\hdrset
{
- head-foot =
+ headfoot =
{
\easyhead[ER]{\leftmark}
\easyhead[OL]{\rightmark}
@@ -722,7 +722,7 @@
\end{ctexexam}
\keychoice{fntext-num}{plain,pifont,pifont*,pisans,pisans*,short num}\Default{plain}
脚注内容标记编号的类型,用法与 \option{fnmark-num} 一样,所以脚注内容与正文标记编号格式\textbf{可以不同}。
- \keychoice{fnboth-num}{plain,pifont,pifont*,pisans,pisans*,short num}\Default{plain}
+ \keychoice{fnmate-num}{plain,pifont,pifont*,pisans,pisans*,short num}\Default{plain}
同时设定脚注正文标记编号 \option{fnmark-num} 与脚注内容标记编号 \option{fntext-num} 的类型。目前脚注编号格式选项对于迷你页环境 \env*{minipage} 无效,其中的脚注保持默认英文字母的编号形式。
\keychoice{fnmark-vshift}{fixed length,match}\Default{0pt}
脚注正文标记的垂直偏移,可以设为刚性长度,或用 \code{match} 匹配 \option*{super-vshift} 全局的值。
@@ -743,7 +743,7 @@
\keychoice{fncust-form}{format code,match}\Default
单独设定自定义脚注标记的格式,\code{match} 可以匹配 \option*{super-format} 全局的值。自定义脚注的命令与用法见小节 \ref{subsubsec:custom footnotes}。
\keychoice{fnboth-form}{format code,match}\Default
- 同时设定默认脚注标记 \option{fnmate-form} 和自定义脚注标记 \option{fncust-form} 的格式,两种脚注标记匹配上标格式 \option*{super-format} 的值是独立的,使用 \code{match} 则可以同时匹配。标记格式选项含有字体命令会覆盖 \module*{subfont/}\option{footnote} 的设置,最后一个格式命令可以带有一个参数接受脚注标记。
+ 同时设定默认脚注标记 \option{fnmate-form} 和自定义脚注标记 \option{fncust-form} 的格式。两种脚注标记匹配上标格式 \option*{super-format} 的值是独立的,使用 \code{match} 则可以同时匹配。标记格式选项含有字体命令会覆盖 \module*{subfont/}\option{footnote} 的设置,最后一个格式命令可以带有一个参数接受脚注标记。
\keyval-{fnpara-form}{格式代码}\Default
脚注内容的格式,在此设置字体命令会覆盖 \module*{subfont/}\option{footnote} 的设置,最后一个格式命令可以带有一个参数接受脚注内容。
\kvsplit{fntext-code}{前代码,后代码}\newline
@@ -794,7 +794,7 @@
\begin{options}
\keyval-{lolskip}{弹性长度}\Default{10pt}
代码目录中每章代码标题的额外距离,与 C\TeX 的表格和图片目录中每章间的标题距离选项 \option*{lotskip} 和 \option*{lofskip} 类似,在 \cls*{article} 模式中此选项失效。
- \keyval-{toc-voffset}{弹性长度}
+ \keyval-{tocvoffset}{弹性长度}
主文档目录标题下方的间距补偿,一般为正值,用于抵消目录中首行的额外垂直间距。
\keyval-{voffset}{弹性长度}
图片、表格或代码目录标题下方的间距补偿,一般为正值,用于抵消目录中首行的额外垂直间距。路径为 \module*{figure}、\module*{table} 和 \module*{lstlisting},或者用 \module*{list} 路径统一设置。
@@ -900,12 +900,12 @@
\begin{center}
\begin{tblr}
{
- colspec = *{8}{c},
+ colspec = @{}*{8}{c}@{},
hline{1,3} = {1pt,cnltxblue},
hline{2} = {0.6pt,cnltxblue}
}
\env{theorem} & \env{definition} & \env{lemma} & \env{corollary} & \env{proposition} & \env{example} & \env{remark} & \env{proof} \\
- 定理 & 定义 & 引理 & 推论& 性质 & 例 & 注 & 证明 \\
+ 定理 & 定义 & 引理 & 推论& 性质 & 例 & 注 & 证明
\end{tblr}
\end{center}
\end{environments}
diff --git a/macros/latex/contrib/handoutwithnotes/README.md b/macros/latex/contrib/handoutwithnotes/README.md
new file mode 100644
index 0000000000..553a743614
--- /dev/null
+++ b/macros/latex/contrib/handoutwithnotes/README.md
@@ -0,0 +1,65 @@
+# handoutWithNotes.sty 2021/10/21 v1.0
+
+Create Handouts with notes from your LaTeX beamer presentation.
+This package provides pgfpages layouts to place notes next to the scaled slides.
+By default the note area is empty providing rules for handwritten notes but with version 1.0 also beamer note pages can be used there.
+
+–––––––––––––––––––––––––––––––––––––––––––––
+
+ Copyright (C) 2009–2018 by Guido Diepen <guido@guidodiepen.nl>
+ Parts provided by Edson Valle
+ Copyright (C) 2021 Marei Peischl <marei@peitex.de>
+
+***************************************************************************
+
+ This material is subject to the LaTeX Project Public License version 1.3c
+ or later. See http://www.latex-project.org/lppl.txt for details.
+
+*************************************************************************
+
+## Quickstart
+To use this package load it in a document using beamer and select a layout:
+
+Minimal example:
+```
+\documentclass{beamer}
+\usepackage{handoutWithNotes}
+\pgfpagesuselayout{3 on 1 with notes}
+\begin{document}
+…
+\end{document}
+```
+
+Currently the following layouts are implemented by this package:
+
+- `1 on 1 with notes landscape`
+- `2 on 1 with notes landscape`
+- `1 on 1 with notes`
+- `2 on 1 with notes`
+- `3 on 1 with notes`
+- `4 on 1 with notes`
+
+Additionally we support the following package options:
+
+- `slide-frame=true/false` draw a frame around the slides
+- `note-frame=true/false` draw a frame around the note pages
+- `beamer-notes=true/false` use beamer notepages instead of the area for handwritten notes
+- `lines=<Number>` modify the number of lines in the notesbox (default is 8)
+
+Additionally the pgfpages options can be used.
+
+
+## Documentation
+A detailed documentation will follow but until this is done most information can be found in the blog post: https://www.guidodiepen.nl/2009/07/creating-latex-beamer-handouts-with-notes/
+
+## Version History
+* v1.00 (2021-10-21) First CTAN Version
+ - add options to draw frames around the slides/notes
+ - add possibility to use beamer's note pages instead of empty ones
+* 20180920 - Refactored to work with different slide sizes
+* 20091202 - Added `1 on 1 with notes` layout, provided by Harald Welte
+* 20091108 - Added `2 on 1 with notes landscape` layout, provided by Edson Valle
+* 20091104 - Added `3 on 1 with notes` layout
+* 20091104 - Added `2 on 1 with notes` layout
+* 20091104 - Added `1 on 1 with notes landscape` layout, provided by Edson Valle
+* 20090101 - Initial Version \ No newline at end of file
diff --git a/macros/latex/contrib/handoutwithnotes/handoutWithNotes.sty b/macros/latex/contrib/handoutwithnotes/handoutWithNotes.sty
new file mode 100644
index 0000000000..e2a6d7bf10
--- /dev/null
+++ b/macros/latex/contrib/handoutwithnotes/handoutWithNotes.sty
@@ -0,0 +1,639 @@
+% Copyright (C) 2009–2018 by Guido Diepen <guido@guidodiepen.nl>
+% Parts provided by Edson Valle
+% Copyright (C) 2021 Marei Peischl <marei@peitex.de>
+%
+%% ============================================================================
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2008/05/04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainers of this work are
+%% Marei Peischl <marei@peitex.de>
+%% Guido Diepen <guido@guidodiepen.nl>
+%%
+%% The development respository can be found at
+%% https://github.com/gdiepen/latexbeamer-handoutWithNotes
+%% Please use the issue tracker for feedback!
+%%
+%% ============================================================================
+%%
+
+\ProvidesPackage{handoutWithNotes}[2021/10/21 v1.0 pgfpages layouts to print beamer slides with notes]
+\RequirePackage{l3keys2e}
+\ExplSyntaxOn
+\keys_define:nn {handoutWithNotes} {
+ slide-frame .bool_gset:N = \g__handoutWithNotes_print_slide_frame_bool,
+ slide-frame .initial:n = false,
+ slide-frame .default:n = true,
+ note-frame .bool_gset:N = \g__handoutWithNotes_print_note_frame_bool,
+ note-frame .initial:n = false,
+ note-frame .default:n = true,
+ beamer-notes .bool_gset:N = \g__handoutWithNotes_beamer_notes_bool,
+ beamer-notes .initial:n = false,
+ beamer-notes .default:n = true,
+ lines .int_gset:N = \g_handoutWithNotes_lines_int,
+ lines .initial:n = 8
+}
+
+\ProcessKeysOptions{handoutWithNotes}
+
+\newcommand*{\handoutwithNotes@conditionalFrame}[1]{
+ \bool_if:cT {g__handoutWithNotes_print_#1_frame_bool} {\pgfusepath{stroke}}
+}
+\ExplSyntaxOff
+
+\RequirePackage{pgfpages}
+\RequirePackage{translator}
+
+\providetranslation[to=English]{Notes}{Notes}
+\providetranslation[to=German]{Notes}{Notizen}
+\providetranslation[to=French]{Notes}{Notes}
+
+
+\ExplSyntaxOn
+
+\cs_if_exist:NTF \pageheight {
+ \cs_set:Nn \handoutWithNotes_pageheight: {\pageheight}
+} {
+ \cs_set:Nn \handoutWithNotes_pageheight: {\pdfpageheight}
+}
+
+\box_new:N \g__handoutWithNotes_notes_box
+\tl_new:N \l_handoutWithNotes_title_tl
+\hook_new:n {handoutWithNotes/notesbox}
+\hook_new:n {handoutWithNotes/notesbox/title}
+\hook_new:n {handoutWithNotes/notesbox/content}
+
+\newcommand{\handoutWithNotes@initNotesBox}[1]{
+ \bool_if:NTF \g__handoutWithNotes_beamer_notes_bool {
+ \beamer@twoscreensnotestrue
+ \setbeameroption{show~notes}
+ \gdef\beamer@currentmode{handout}
+ \setbeamertemplate{note~page}[plain]
+ \let\beamer@outsideframenote\handoutWithNotes@beamer@outsideframenote
+ \msg_new:nnn {handoutWithNotes} {patch-beamer@outsideframenote} {I~am~patching~the~note~mechanism~to~be~able~to~place~multiple~note~pages~on~one~physical~page.}
+ \msg_info:nn {handoutWithNotes} {patch-beamer@outsideframenote}
+ }{
+ \vbox_set:Nn \g__handoutWithNotes_notes_box {
+ \hsize=\paperwidth
+ \skip_vertical:n {-1in}
+ \skip_horizontal:n {-1in}
+ \vbox_to_ht:nn {\handoutWithNotes_pageheight:} {
+ \skip_vertical:n {\topskip}
+ \translatelet{\l_handoutWithNotes_title_tl}{Notes}%
+ \hook_use:n {handoutWithNotes/notesbox}
+ \tl_if_empty:NF \l_handoutWithNotes_title_tl {\hook_use:n {handoutWithNotes/notesbox/title}\l_handoutWithNotes_title_tl}
+ \hook_use:n {handoutWithNotes/notesbox/content}
+ \skip_vertical:n {\fill}
+ \int_step_inline:nn {\g_handoutWithNotes_lines_int} {\hrule width\paperwidth\skip_vertical:n {\fill}}
+ }
+ }
+ \int_step_inline:nnn {#1+1} {2*#1} {\pgfpagesshipoutlogicalpage{##1}\box_use:N \g__handoutWithNotes_notes_box}
+ }
+}
+
+%backwards compatibility
+\let\notesbox\g__handoutWithNotes_notes_box
+\ExplSyntaxOff
+
+% 1 on 1 with notes landscape
+% ----------------------------------------
+% | %%%%%%%%%%%%%%%%%% __________________ |
+% | %%%%%%%%%%%%%%%%%% __________________ |
+% | %%%%%%%%%%%%%%%%%% __________________ |
+% | %%%%%%%%%%%%%%%%%% __________________ |
+% | %%%%%%%%%%%%%%%%%% __________________ |
+% | %%%%%%%%%%%%%%%%%% __________________ |
+% | %%%%%%%%%%%%%%%%%% __________________ |
+% | %%%%%%%%%%%%%%%%%% __________________ |
+% | %%%%%%%%%%%%%%%%%% __________________ |
+% | %%%%%%%%%%%%%%%%%% __________________ |
+% ----------------------------------------
+\pgfpagesdeclarelayout{1 on 1 with notes landscape} {
+ \edef\pgfpageoptionheight{\the\paperwidth}
+ \edef\pgfpageoptionwidth{\the\paperheight}
+ \edef\pgfpageoptionborder{0pt}
+}
+{
+ \setkeys{pgfpagesuselayoutoption}{landscape}
+ \pgfpagesphysicalpageoptions
+ {%
+ logical pages=2,%
+ physical height=\pgfpageoptionheight,%
+ physical width=\pgfpageoptionwidth,%
+ last logical shipout=1%
+ }
+
+ \pgfpageslogicalpageoptions{1}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.5\pgfphysicalheight,%
+ center=\pgfpoint{.25\pgfphysicalwidth}{.5\pgfphysicalheight},%
+ border code=\handoutwithNotes@conditionalFrame{slide},%
+ }%
+
+ \pgfpageslogicalpageoptions{2}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.5\pgfphysicalheight,%
+ center=\pgfpoint{.75\pgfphysicalwidth}{.5\pgfphysicalheight},%
+ copy from=2,%
+ border code=\handoutwithNotes@conditionalFrame{note},%
+ }%
+
+ \AtBeginDocument{
+ \handoutWithNotes@initNotesBox{1}
+ }
+}
+
+
+% 4 on 1 with notes
+% --------------------------
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% --------------------------
+ \pgfpagesdeclarelayout{4 on 1 with notes} {
+ \edef\pgfpageoptionheight{\the\paperheight}
+ \edef\pgfpageoptionwidth{\the\paperwidth}
+ \edef\pgfpageoptionborder{0pt}
+ }
+ {
+ \pgfpagesphysicalpageoptions
+ {%
+ logical pages=8,%
+ physical height=\pgfpageoptionheight,%
+ physical width=\pgfpageoptionwidth,%
+ last logical shipout=4%
+ }
+
+ \pgfpageslogicalpageoptions{1}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.25\pgfphysicalheight,%
+ center=\pgfpoint{.25\pgfphysicalwidth}{.875\pgfphysicalheight},%
+ border code=\handoutwithNotes@conditionalFrame{slide},%
+ }%
+ \pgfpageslogicalpageoptions{2}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.25\pgfphysicalheight,%
+ center=\pgfpoint{.25\pgfphysicalwidth}{.625\pgfphysicalheight},%
+ border code=\handoutwithNotes@conditionalFrame{slide},%
+ }%
+
+ \pgfpageslogicalpageoptions{3}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.25\pgfphysicalheight,%
+ center=\pgfpoint{.25\pgfphysicalwidth}{.375\pgfphysicalheight},%
+ border code=\handoutwithNotes@conditionalFrame{slide},%
+ }%
+
+ \pgfpageslogicalpageoptions{4}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.25\pgfphysicalheight,%
+ center=\pgfpoint{.25\pgfphysicalwidth}{.125\pgfphysicalheight},%
+ border code=\handoutwithNotes@conditionalFrame{slide},%
+ }%
+
+
+ \pgfpageslogicalpageoptions{5}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.25\pgfphysicalheight,%
+ center=\pgfpoint{.75\pgfphysicalwidth}{.875\pgfphysicalheight},%
+ copy from=5,%
+ border code=\handoutwithNotes@conditionalFrame{note},%
+ }%
+ \pgfpageslogicalpageoptions{6}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.25\pgfphysicalheight,%
+ center=\pgfpoint{.75\pgfphysicalwidth}{.625\pgfphysicalheight},%
+ copy from=6,%
+ border code=\handoutwithNotes@conditionalFrame{note},%
+ }%
+ \pgfpageslogicalpageoptions{7}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.25\pgfphysicalheight,%
+ center=\pgfpoint{.75\pgfphysicalwidth}{.375\pgfphysicalheight},%
+ copy from=7,%
+ border code=\handoutwithNotes@conditionalFrame{note},%
+ }%
+ \pgfpageslogicalpageoptions{8}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.25\pgfphysicalheight,%
+ center=\pgfpoint{.75\pgfphysicalwidth}{.125\pgfphysicalheight},%
+ copy from=8,%
+ border code=\handoutwithNotes@conditionalFrame{note},%
+ }%
+
+ \AtBeginDocument{
+ \handoutWithNotes@initNotesBox{4}
+ }
+}
+
+
+% 2 on 1 with notes
+% --------------------------
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% --------------------------
+\pgfpagesdeclarelayout{2 on 1 with notes} {
+ \edef\pgfpageoptionheight{\the\paperheight}
+ \edef\pgfpageoptionwidth{\the\paperwidth}
+ \edef\pgfpageoptionborder{0pt}
+}
+{
+ \pgfpagesphysicalpageoptions
+ {%
+ logical pages=4,%
+ physical height=\pgfpageoptionheight,%
+ physical width=\pgfpageoptionwidth,%
+ last logical shipout=2%
+ }
+
+ \pgfpageslogicalpageoptions{1}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.5\pgfphysicalheight,%
+ center=\pgfpoint{.25\pgfphysicalwidth}{.75\pgfphysicalheight},%
+ border code=\handoutwithNotes@conditionalFrame{slide},%
+ }%
+
+ \pgfpageslogicalpageoptions{2}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.5\pgfphysicalheight,%
+ center=\pgfpoint{.25\pgfphysicalwidth}{.25\pgfphysicalheight},%
+ border code=\handoutwithNotes@conditionalFrame{slide},%
+ }%
+
+ \pgfpageslogicalpageoptions{3}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.5\pgfphysicalheight,%
+ center=\pgfpoint{.75\pgfphysicalwidth}{.75\pgfphysicalheight},%
+ copy from=3,%
+ border code=\handoutwithNotes@conditionalFrame{note},%
+ }%
+
+ \pgfpageslogicalpageoptions{4}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.5\pgfphysicalheight,%
+ center=\pgfpoint{.75\pgfphysicalwidth}{.25\pgfphysicalheight},%
+ copy from=4,%
+ border code=\handoutwithNotes@conditionalFrame{note},%
+ }%
+
+ \AtBeginDocument{
+ \handoutWithNotes@initNotesBox{2}
+ }
+}
+
+
+% 3 on 1 with notes
+% --------------------------
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% | %%%%%%%%%%% ___________ |
+% --------------------------
+\pgfpagesdeclarelayout{3 on 1 with notes} {
+ \edef\pgfpageoptionheight{\the\paperheight}
+ \edef\pgfpageoptionwidth{\the\paperwidth}
+ \edef\pgfpageoptionborder{0pt}
+}
+{
+ \pgfpagesphysicalpageoptions
+ {%
+ logical pages=6,%
+ physical height=\pgfpageoptionheight,%
+ physical width=\pgfpageoptionwidth,%
+ last logical shipout=3%
+ }
+
+ \pgfpageslogicalpageoptions{1}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.33\pgfphysicalheight,%
+ center=\pgfpoint{.25\pgfphysicalwidth}{.83\pgfphysicalheight},%
+ border code=\handoutwithNotes@conditionalFrame{slide},%
+ }%
+
+ \pgfpageslogicalpageoptions{2}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.33\pgfphysicalheight,%
+ center=\pgfpoint{.25\pgfphysicalwidth}{.50\pgfphysicalheight},%
+ border code=\handoutwithNotes@conditionalFrame{slide},%
+ }%
+
+ \pgfpageslogicalpageoptions{3}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.33\pgfphysicalheight,%
+ center=\pgfpoint{.25\pgfphysicalwidth}{.17\pgfphysicalheight},%
+ border code=\handoutwithNotes@conditionalFrame{slide},%
+ }%
+
+ \pgfpageslogicalpageoptions{4}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.33\pgfphysicalheight,%
+ center=\pgfpoint{.75\pgfphysicalwidth}{.83\pgfphysicalheight},%
+ copy from=4,%
+ border code=\handoutwithNotes@conditionalFrame{note},%
+ }%
+
+ \pgfpageslogicalpageoptions{5}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.33\pgfphysicalheight,%
+ center=\pgfpoint{.75\pgfphysicalwidth}{.50\pgfphysicalheight},%
+ copy from=5,%
+ border code=\handoutwithNotes@conditionalFrame{note},%
+ }%
+
+ \pgfpageslogicalpageoptions{6}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.33\pgfphysicalheight,%
+ center=\pgfpoint{.75\pgfphysicalwidth}{.17\pgfphysicalheight},%
+ copy from=6,%
+ border code=\handoutwithNotes@conditionalFrame{note},%
+ }%
+
+ \AtBeginDocument{
+ \handoutWithNotes@initNotesBox{3}
+ }
+}
+
+
+% 2 on 1 with notes landscape
+% ----------------------------------------
+% | %%%%%%%%%%%%%%%%%% __________________ |
+% | %%%%%%%%%%%%%%%%%% __________________ |
+% | %%%%%%%%%%%%%%%%%% __________________ |
+% | %%%%%%%%%%%%%%%%%% __________________ |
+% | |
+% | |
+% | %%%%%%%%%%%%%%%%%% __________________ |
+% | %%%%%%%%%%%%%%%%%% __________________ |
+% | %%%%%%%%%%%%%%%%%% __________________ |
+% | %%%%%%%%%%%%%%%%%% __________________ |
+% ----------------------------------------
+ \pgfpagesdeclarelayout{2 on 1 with notes landscape} {
+ \edef\pgfpageoptionheight{\the\paperheight}
+ \edef\pgfpageoptionwidth{\the\paperwidth}
+ \edef\pgfpageoptionborder{0pt}
+ }
+ {
+ \setkeys{pgfpagesuselayoutoption}{landscape}
+
+ \pgfpagesphysicalpageoptions
+ {%
+ logical pages=4,%
+ physical height=\pgfpageoptionheight,%
+ physical width=\pgfpageoptionwidth,%
+ last logical shipout=2%
+ }
+
+ \pgfpageslogicalpageoptions{1}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.5\pgfphysicalheight,%
+ center=\pgfpoint{.25\pgfphysicalwidth}{.75\pgfphysicalheight},%
+ border code=\handoutwithNotes@conditionalFrame{slide},%
+ }%
+
+ \pgfpageslogicalpageoptions{2}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.5\pgfphysicalheight,%
+ center=\pgfpoint{.25\pgfphysicalwidth}{.25\pgfphysicalheight},%
+ border code=\handoutwithNotes@conditionalFrame{slide},%
+ }%
+
+ \pgfpageslogicalpageoptions{3}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.5\pgfphysicalheight,%
+ center=\pgfpoint{.75\pgfphysicalwidth}{.75\pgfphysicalheight},%
+ copy from=3,%
+ border code=\handoutwithNotes@conditionalFrame{note},%
+ }%
+
+ \pgfpageslogicalpageoptions{4}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=.5\pgfphysicalwidth,%
+ resized height=.5\pgfphysicalheight,%
+ center=\pgfpoint{.75\pgfphysicalwidth}{.25\pgfphysicalheight},%
+ copy from=4,%
+ border code=\handoutwithNotes@conditionalFrame{note},%
+ }%
+
+ \AtBeginDocument{
+ \handoutWithNotes@initNotesBox{2}
+ }
+}
+
+
+% 1 on 1 with notes
+% --------------------------
+% | %%%%%%%%%%%%%%%%%%%%%%%% |
+% | %%%%%%%%%%%%%%%%%%%%%%%% |
+% | %%%%%%%%%%%%%%%%%%%%%%%% |
+% | %%%%%%%%%%%%%%%%%%%%%%%% |
+% | %%%%%%%%%%%%%%%%%%%%%%%% |
+% | %%%%%%%%%%%%%%%%%%%%%%%% |
+% | %%%%%%%%%%%%%%%%%%%%%%%% |
+% | |
+% | ________________________ |
+% | ________________________ |
+% | ________________________ |
+% | ________________________ |
+% | ________________________ |
+% | ________________________ |
+% | ________________________ |
+% --------------------------
+\pgfpagesdeclarelayout{1 on 1 with notes} {
+ \edef\pgfpageoptionheight{\the\paperwidth}
+ \edef\pgfpageoptionwidth{\the\paperheight}
+ \edef\pgfpageoptionborder{0pt}
+}
+{
+ \pgfpagesphysicalpageoptions
+ {%
+ logical pages=2,%
+ physical height=\pgfpageoptionheight,%
+ physical width=\pgfpageoptionwidth,%
+ last logical shipout=1%
+ }
+
+ \pgfpageslogicalpageoptions{1}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=\pgfphysicalwidth,%
+ resized height=.5\pgfphysicalheight,%
+ center=\pgfpoint{.5\pgfphysicalwidth}{.75\pgfphysicalheight},%
+ border code=\handoutwithNotes@conditionalFrame{slide},%
+ }%
+
+ \pgfpageslogicalpageoptions{2}
+ {%
+ border shrink=\pgfpageoptionborder,%
+ resized width=\pgfphysicalwidth,%
+ resized height=.5\pgfphysicalheight,%
+ center=\pgfpoint{.5\pgfphysicalwidth}{.25\pgfphysicalheight},%
+ copy from=2,%
+ border code=\handoutwithNotes@conditionalFrame{note},%
+ }%
+
+ \AtBeginDocument{
+ \handoutWithNotes@initNotesBox{1}
+ }
+}
+
+
+
+% if print-beamer-notes is enable the note frame has to be patched
+\ExplSyntaxOn
+\int_new:N \g__handoutWithNotes_last_shipout_int
+\int_new:N \g__handoutWithNotes_current_note_page_int
+
+%Modified variant of beamer@outsideframenote
+%the patch allows multi page layouts with pgfpages
+%based on the definition in beamerbasenotes.sty
+% Copyright 2003--2007 by Till Tantau
+% Copyright 2010 by Vedran Mileti\'c
+% Copyright 2012,2015 by Vedran Mileti\'c, Joseph Wright
+% Copyright 2017,2018 by Louis Stuart, Joseph Wright
+\newcommand\handoutWithNotes@beamer@outsideframenote[2][]{%
+ \beamer@savemode%
+ \ifbeamer@inlecture%
+ \def\beamer@noteenvstart{}%
+ \def\beamer@noteenvend{}%
+ \setkeys{beamernotes}{#1}%
+ \ifbeamer@notes
+ \begingroup
+ \setbeamertemplate{itemize~item}{\textbullet}
+ \setbeamertemplate{itemize~subitem}{--}
+ \setbeamertemplate{enumerate~item}{\insertenumlabel.}
+ \setbeamertemplate{enumerate~subitem}{\insertenumlabel.\insertsubenumlabel}
+ \def\@oddhead{}
+ \def\@oddfoot{}
+ \let\@evenhead\@oddhead
+ \let\@evenfoot\@oddfoot
+ \def\beamer@backgroundtemplate{}%
+ \setbeamercolor{item}{fg=black,bg=white}
+ \color{black}%
+ \nointerlineskip
+ \hbox{\hskip-\Gm@lmargin\hskip1cm\vbox to\textheight{%
+ %pretend to have ``standard'' margins
+ \edef\beamer@origlmargin{\Gm@lmargin}%
+ \edef\beamer@origrmargin{\Gm@rmargin}%
+ \def\Gm@lmargin{1cm}%
+ \def\Gm@rmargin{1cm}%
+ \textwidth=\dimexpr\paperwidth-\Gm@lmargin-\Gm@rmargin\relax%
+ \hsize=\textwidth%
+ \@arrayparboxrestore%
+ \vskip-\headheight%
+ \def\insertnote{\vbox{}%
+ \beamer@noteenvstart#2\beamer@noteenvend%
+ }%
+ \usebeamertemplate*{note~page}%
+ \vfil%
+ \vskip-4pt% foot separator
+ \vskip-\footheight}\hskip-\Gm@lmargin\hskip1cm}%
+ \ifbeamer@twoscreensnotes%
+ \int_compare:nF {\the\pgf@currentshipout = \g__handoutWithNotes_last_shipout_int}{
+ \int_gset:Nn \g__handoutWithNotes_last_shipout_int {\the\pgf@currentshipout}
+ \int_compare:nTF {\g__handoutWithNotes_current_note_page_int=\the\pgf@lastshipout} {
+ \int_gset:Nn \g__handoutWithNotes_current_note_page_int {1}
+ } {
+ \int_gincr:N \g__handoutWithNotes_current_note_page_int
+ }
+ }
+ \pgfpagescurrentpagewillbelogicalpage{\int_eval:n {\g__handoutWithNotes_current_note_page_int+\the\pgf@lastshipout}}
+ \advance\c@page by-1\relax%
+ \fi%
+ \clearpage
+ \endgroup
+ \fi%
+ \fi%
+ \beamer@resumemode}
+
+\ExplSyntaxOff
+\endinput