diff options
Diffstat (limited to 'macros/latex')
39 files changed, 1110 insertions, 481 deletions
diff --git a/macros/latex/contrib/easybook/easybook.dtx b/macros/latex/contrib/easybook/easybook.dtx index 94cecae2dc..47c8f1d4f2 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}{2024/01/16}{2024I} +\ProvidesExplClass{easybook}{2024/01/18}{2024J} {Easily typesetting Chinese theses or books} \bool_set_false:N \l__eb_compile_draft_bool @@ -302,7 +302,7 @@ %<*package> \NeedsTeXFormat{LaTeX2e}[2020/10/01] \RequirePackage{l3keys2e,etoolbox} -\ProvidesExplPackage{easybase}{2024/01/16}{2024I} +\ProvidesExplPackage{easybase}{2024/01/18}{2024J} {Easily typesetting Chinese theses or books} \cs_generate_variant:Nn \dim_set:Nn { NV } @@ -1371,7 +1371,6 @@ { \tl_clear:N \eb@bitoc@title } { \tl_set:Nn \eb@bitoc@title {#2} } } -\prop_new:N \l__eb_toc_float_label_prop \cs_new_protected:Npn \eb_toc_start_multi_column_ext:n #1 { \int_compare:nNnTF { \l__eb_toc_columns_int } > { 1 } @@ -1424,34 +1423,21 @@ #1 .meta:nn = { ctex/#1 } {##1}, #1/between .tl_set:c = l__eb_toc_#1_between_hook_tl, #1/tocline .cs_set:cp = { eb@tocline@#1 } ##1##2, - #1/tocline .initial:n = \listnumberline{#1}##2 + #1/tocline .initial:n = \listnumberline{##1}##2 } - \prop_put_from_keyval:Nn \l__eb_toc_float_label_prop - { #1 = \use:c { eb@tocline@#1 } } } \DeclareFloatList{table}{lot} \DeclareFloatList{figure}{lof} \DeclareFloatList{lstlisting}{lol} \cs_gset:Npn \caption@@@addcontentsline #1#2#3#4 { - \exp_args:Nnnx \addcontentsline{#1}{#2} { - \prop_if_in:NnTF \l__eb_toc_float_label_prop {#2} - { \prop_item:Nn \l__eb_toc_float_label_prop {#2} } - { \protect\numberline } - {#3}{#4} + \cs_if_exist_use:cTF { eb@tocline@#2 } + { {#2}{#4} } + { \protect\numberline{#3}{#4} } } } -\ctex_patch_cmd:Nnn \lst@MakeCaption - { - \addcontentsline{lol}{lstlisting} - {\protect\numberline{\thelstlisting}\lst@@caption} - } - { - \addcontentsline{lol}{lstlisting} - {\eb@tocline@lstlisting{\thelstlisting}{\lst@@caption}} - } \ctex_define:n { bicontentsname .tl_set:N = \bicontentsname, @@ -2348,7 +2334,7 @@ } %</package> %<*tcolorbox> -\ProvidesExplFile{eb-tcolorbox.cfg}{2024/01/16}{2024I} +\ProvidesExplFile{eb-tcolorbox.cfg}{2024/01/18}{2024J} {Customization of tcolorbox for easybook} \cs_set_protected:Npn \addtotcbstyle #1#2 diff --git a/macros/latex/contrib/easybook/easybook.pdf b/macros/latex/contrib/easybook/easybook.pdf Binary files differindex a0fea3d113..f6999524ac 100644 --- a/macros/latex/contrib/easybook/easybook.pdf +++ b/macros/latex/contrib/easybook/easybook.pdf diff --git a/macros/latex/contrib/easybook/easybook.tex b/macros/latex/contrib/easybook/easybook.tex index d0df41762e..80069337fe 100644 --- a/macros/latex/contrib/easybook/easybook.tex +++ b/macros/latex/contrib/easybook/easybook.tex @@ -23,8 +23,8 @@ name = easybook, color-scheme = blue, title = EASYBOOK使用手册, - version = v2024I, - date = 2024/01/16, + version = v2024J, + date = 2024/01/18, authors = 瞿毅, info = 简便地排版中文学位论文或书籍, email = toquyi@163.com, @@ -813,7 +813,7 @@ \keyval{tocbelow}{距离命令}\dtag 在目录条目下方执行的代码,可以插入垂直距离等命令。 \keyval{tocline}{条目定义}\dtag[\textcolor{red}{\ding{73}}] - 这个选项在章节标题基础上扩展了浮动环境的题注标题在目录文件中的定义。由于设计的原因,章节标题选项中参数 \code{\#1} 代表标题编号 \cs*{the}\meta{计数器} 对应的计数器名称,而题注标题选项中参数 \code{\#1} 代表标题编号 \cs*{the}\meta{计数器} 的值,章节和题注标题中参数 \code{\#2} 均代表相应标题内容。 + 这个选项在章节标题基础上扩展了浮动环境的题注标题在目录文件中的定义。章节和题注标题选项中参数 \code{\#1} 代表标题编号 \cs*{the}\meta{计数器} 对应的计数器名称,参数 \code{\#2} 则代表相应标题内容。 \begin{ctexexam} \ctexset { @@ -854,13 +854,13 @@ \SetTocStyle{chapter}{fancy}{tocformat = \color{red}\zihao{3}} \UseTocStyle{chapter}{fancy}{toc} \end{ctexexam} - \command{listnumberline}[\marg{条目名}] - 在图表等浮动环境的题注目录中插入条目标签,默认标签的名字可以由格式命令 \cs{labelformat} 设置。注意其中 \meta{条目名} 需要用对应名称\textbf{显式指定}。 + \command{listnumberline}[\marg{计数器名}] + 在图表等浮动环境的题注目录中插入条目标签,默认标签的名字可以由格式命令 \cs{labelformat} 设置。其中 \meta{计数器名} 一般与 \meta{条目名} 相同,可以用参数 \code{\#1} 指定或用对应计数器名称显式指定。 \begin{ctexexam} \ctexset { - figure/tocline = \listnumberline{figure}#2, - lstlisting/tocline = \protect\numberline{代码#1\hspace{1em}}#2 + lstlisting/tocline = \listnumberline{#1}#2, + figure/tocline = \protect\numberline{图\thefigure\hspace{1em}}#2 } \end{ctexexam} \command{contentsmargin}[\marg{右边距}] @@ -1350,9 +1350,9 @@ \shortversion{v = 1.638,date = 2022/03/04,changes = 增加目录条目样式选项注册命令 \cs{RegisterTocName}。} \shortversion{v = 1.644,date = 2022/03/10,changes = 增加浮动环境目录声明命令 \cs{DeclareFloatList} 配合 \pkg*{caption} 宏包。} \shortversion{v = 1.682,date = 2022/05/01,changes = 将迷你页判断命令 \cs{notminipage} 改为被保护命令兼容 \pkg*{circledtext} 宏包。} - \begin{version}[v = 2024I,date = 2024/01/16,simple] + \begin{version}[v = 2024J,date = 2024/01/18,simple] \item 核对依赖宏包的更新改动,优化使用手册的内容细节。 - \item 修复图表题注目录中条目标签编号的计数器值显示错误问题。 + \item 修复图表等浮动环境题注目录中条目标签编号的计数器值显示错误问题。 \item 新增目录风格定义命令 \cs{SetTocStyle} 和使用命令 \cs{UseTocStyle}。 \end{version} \end{changelog} diff --git a/macros/latex/contrib/pagelayout/README.md b/macros/latex/contrib/pagelayout/README.md index 1947399306..4d62838bf4 100644 --- a/macros/latex/contrib/pagelayout/README.md +++ b/macros/latex/contrib/pagelayout/README.md @@ -1,6 +1,6 @@ ![The pagelayout LaTeX class](doc/banner.svg) -The pagelayout class enables you to layout pages declaratively using simple macros for pages, covers, grids, templates, text, and graphics to create graphic rich, perfectly typeset, and print ready PDFs. +The pagelayout class enables you to design pages declaratively using simple macros for pages, covers, grids, templates, text, and graphics to create graphic rich, perfectly typeset, and print ready PDFs. The integration of [Inkscape](https://inkscape.org) allows your to create box shadows. Text shadows and SVG filters are ideas for future releases. @@ -10,23 +10,27 @@ The pagelayout class also integrates the [TikZ](https://www.ctan.org/pkg/pgf) an ## Quick Start -### Generic Templates +### Pages -Generic templates are the easiest way to put content on a page. The template name describes the layout. You can arrange [l]andscape, [p]ortrait, [s]quare, [w]ide, [g]olden ratio, g[o]lden upright ratio or [f]lexible placeholders in rows [-]. A valid template name for example is `sg-ff`. Notice you cannot combine flexible with fixed aspect ratio placeholders within a row. +Create a page with the `\page` command. A grid with rows and cells helps you to arrange content. Use the `\setgrid` command to define your grid. The following example shows a grid with one row containing two cells. ```latex -\template{ff}{ - \text{ - This text fills the first placeholder. +\page{ + \setgrid{ + {{}{}} + } + \text[breakable]{ + Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut purus elit, vestibulum ut, placerat ac, adipiscing vitae, felis. Curabitur dictum gravida mauris. Nam arcu libero, nonummy eget, consectetuer id, vulputate a, magna. Donec vehicula augue eu neque. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Mauris ut leo. Cras viverra metus rhoncus sem. Nulla et lectus vestibulum urna fringilla ultrices. Phasellus eu tellus sit amet tortor gravida placerat. } + \usetext } ``` -![Generic template](doc/quickstart-1.svg) +![A page with a two column layout](doc/quickstart-1.svg) -### Custom Templates +### Templates -You can use the grid to layout content on a page. The grid has rows with cells. You can set width relations between cells and height relations between rows. You can give cells a explicit aspect ratio by adding a `!`. +You can set width relations between grid cells and height relations between grid rows. You can give cells a explicit aspect ratio by adding a `!`. With the `\newtemplate` command you can create reusable layouts. ```latex \newtemplate{my template}{ @@ -34,31 +38,36 @@ You can use the grid to layout content on a page. The grid has rows with cells. {[2]{3!}{2!}} } \placeholder{0 0 1 1} + \placeholder{0 1 1 2} } \template{my template}{} ``` -![Custom template](doc/quickstart-2.svg) +![A template with two placeholders](doc/quickstart-2.svg) -You can set margin and gutter for a single grid, on document level, or on page level. +You can set margin and gutter at grid, page, or document level. ### Graphics You can scale and position a graphic. And you can add borders and box shadows to graphics and text frames. ```latex -\newborder{my border}{width=2mm, color=white, radius=5mm} -\newshadow{my shadow}{size=8} +\newborder{my border}{ + width = 1mm, + color = white, + radius = 5mm +} +\newshadow{my shadow}{size = 7} -\template[margin=7mm]{s}{ +\template{my template}{ \graphic[ - scale=1.1, - hpos=0.2, - unsharp=3x1, - shadow=my shadow, - border=my border, - border radius=0mm + scale = 1.1, + vpos = 0.3, + unsharp = 3x1, + shadow = my shadow, + border = my border, + border radius = 0mm ]{kopi} } ``` @@ -73,7 +82,7 @@ For a complete reference, read the [manual](doc/pagelayout-manual.pdf). In general, you should use the package manager shipped with your TeX distribution to install the pagelayout package. -To install manually, copy the contents of [pagelayout.tds.zip](https://github.com/friedemannbartels/latex-pagelayout/releases/download/v1.0.5/pagelayout.tds.zip) to your local TeX directory tree and run the command `texhash`. +To install manually, copy the contents of [pagelayout.tds.zip](https://github.com/friedemannbartels/latex-pagelayout/releases/download/1.1.0/pagelayout-1.1.0.tds.zip) to your local TeX directory tree and run the command `texhash`. To enable image optimization, shadow creation, and preflight, perform these installation steps: diff --git a/macros/latex/contrib/pagelayout/doc/banner.tex b/macros/latex/contrib/pagelayout/doc/banner.tex index 4f4dece806..bb0736c96a 100644 --- a/macros/latex/contrib/pagelayout/doc/banner.tex +++ b/macros/latex/contrib/pagelayout/doc/banner.tex @@ -1,5 +1,5 @@ %% -%% Copyright (c) 2022-2023 by Friedemann Bartels +%% Copyright (c) 2022-2024 by Friedemann Bartels %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either diff --git a/macros/latex/contrib/pagelayout/doc/example-book.tex b/macros/latex/contrib/pagelayout/doc/example-book.tex index 04e9dd4db6..49b0605cda 100644 --- a/macros/latex/contrib/pagelayout/doc/example-book.tex +++ b/macros/latex/contrib/pagelayout/doc/example-book.tex @@ -1,5 +1,5 @@ %% -%% Copyright (c) 2022-2023 by Friedemann Bartels +%% Copyright (c) 2022-2024 by Friedemann Bartels %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either diff --git a/macros/latex/contrib/pagelayout/doc/example-borders-and-shadows.tex b/macros/latex/contrib/pagelayout/doc/example-borders-and-shadows.tex index 33c0b14e65..4f248cc9c2 100644 --- a/macros/latex/contrib/pagelayout/doc/example-borders-and-shadows.tex +++ b/macros/latex/contrib/pagelayout/doc/example-borders-and-shadows.tex @@ -1,5 +1,5 @@ %% -%% Copyright (c) 2022-2023 by Friedemann Bartels +%% Copyright (c) 2022-2024 by Friedemann Bartels %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either diff --git a/macros/latex/contrib/pagelayout/doc/example-graphic.tex b/macros/latex/contrib/pagelayout/doc/example-graphic.tex index 5eb085bef7..86ad3be5f4 100644 --- a/macros/latex/contrib/pagelayout/doc/example-graphic.tex +++ b/macros/latex/contrib/pagelayout/doc/example-graphic.tex @@ -1,5 +1,5 @@ %% -%% Copyright (c) 2022-2023 by Friedemann Bartels +%% Copyright (c) 2022-2024 by Friedemann Bartels %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either diff --git a/macros/latex/contrib/pagelayout/doc/example-grid.tex b/macros/latex/contrib/pagelayout/doc/example-grid.tex index 6bc3573867..d31b2c1864 100644 --- a/macros/latex/contrib/pagelayout/doc/example-grid.tex +++ b/macros/latex/contrib/pagelayout/doc/example-grid.tex @@ -1,5 +1,5 @@ %% -%% Copyright (c) 2022-2023 by Friedemann Bartels +%% Copyright (c) 2022-2024 by Friedemann Bartels %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either diff --git a/macros/latex/contrib/pagelayout/doc/example-template.tex b/macros/latex/contrib/pagelayout/doc/example-template.tex index b10e8a7486..b6dbbf50b9 100644 --- a/macros/latex/contrib/pagelayout/doc/example-template.tex +++ b/macros/latex/contrib/pagelayout/doc/example-template.tex @@ -1,5 +1,5 @@ %% -%% Copyright (c) 2022-2023 by Friedemann Bartels +%% Copyright (c) 2022-2024 by Friedemann Bartels %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either diff --git a/macros/latex/contrib/pagelayout/doc/example-text.tex b/macros/latex/contrib/pagelayout/doc/example-text.tex index 82376d1abc..d1979be95f 100644 --- a/macros/latex/contrib/pagelayout/doc/example-text.tex +++ b/macros/latex/contrib/pagelayout/doc/example-text.tex @@ -1,5 +1,5 @@ %% -%% Copyright (c) 2022-2023 by Friedemann Bartels +%% Copyright (c) 2022-2024 by Friedemann Bartels %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either diff --git a/macros/latex/contrib/pagelayout/doc/pagelayout-manual-layout-guides.tex b/macros/latex/contrib/pagelayout/doc/pagelayout-manual-layout-guides.tex index def8cdfda0..75ea0002ac 100644 --- a/macros/latex/contrib/pagelayout/doc/pagelayout-manual-layout-guides.tex +++ b/macros/latex/contrib/pagelayout/doc/pagelayout-manual-layout-guides.tex @@ -1,5 +1,5 @@ %% -%% Copyright (c) 2022-2023 by Friedemann Bartels +%% Copyright (c) 2022-2024 by Friedemann Bartels %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either diff --git a/macros/latex/contrib/pagelayout/doc/pagelayout-manual.pdf b/macros/latex/contrib/pagelayout/doc/pagelayout-manual.pdf Binary files differindex a09ac3d752..6913eb17ce 100644 --- a/macros/latex/contrib/pagelayout/doc/pagelayout-manual.pdf +++ b/macros/latex/contrib/pagelayout/doc/pagelayout-manual.pdf diff --git a/macros/latex/contrib/pagelayout/doc/pagelayout-manual.tex b/macros/latex/contrib/pagelayout/doc/pagelayout-manual.tex index 15e57bcafc..460f1170d0 100644 --- a/macros/latex/contrib/pagelayout/doc/pagelayout-manual.tex +++ b/macros/latex/contrib/pagelayout/doc/pagelayout-manual.tex @@ -1,9 +1,9 @@ %% -%% Copyright (c) 2022-2023 by Friedemann Bartels +%% Copyright (c) 2022-2024 by Friedemann Bartels %% %% This file 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 1.3c of this license or (at your argument) any later %% version. The latest version of this license is in: %% %% http://www.latex-project.org/lppl.txt @@ -18,7 +18,7 @@ \usepackage{tikz} \OnlyDescription \hypersetup{pdfborder={0 0 0}} -\def\pagelayoutversion{1.0.5} +\def\pagelayoutversion{1.1.0} \begin{document} @@ -43,15 +43,15 @@ In 2020, I started to develop my own solution. What started with some SVG templates and shell scripts ended up in the pagelayout class, a declarative desktop publishing approach. \par With the pagelayout class you can create single- and double-sided documents, create pages with margins, safety margins, and bleed, use templates, align text and graphics in a grid, wrap text across multiple pages and use before pages. -Generic templates, automatic grid layout and a simple and consistent user interface make it easier than ever to create graphics-rich documents with \LaTeX. +Automatic grid layout and a simple and consistent user interface make it easier than ever to create graphics-rich documents with \LaTeX. Under the hood the TikZ and tcolorbox packages, ImageMagick and Inkscape are used. \section{Document}\label{sec:document} -The document options described in the following can be either set as a document option (|\documentclass[twoside]{pagelayout}|) or with a macro (|\twoside|) in the preamble. +The document arguments described in the following can be either set as a document argument (|\documentclass[twoside]{pagelayout}|) or with a command (|\twoside|) in the preamble. \DescribeMacro {\documentclass} -Use the class with the |\documentclass|\oarg{options}|{pagelayout}| macro. +Use the class with the |\documentclass|\oarg{arguments}|{pagelayout}| command. A single sided document is the default. \begin{figure}[h!] \begin{tikzpicture} @@ -65,7 +65,7 @@ A single sided document is the default. \end{figure} \DescribeMacro {\twoside} -Using the document option |twoside| results in a document with left and right pages. +Using the document argument |twoside| results in a document with left and right pages. When you create a two-sided document, your document always has an even number of pages. If you create a document with an odd number of pages, an additional page is automatically inserted. Two-sided documents start with a right page by default. @@ -83,7 +83,7 @@ Two-sided documents start with a right page by default. \end{figure} \DescribeMacro {\beginleft} -Use the option |beginleft| to begin with a left page. +Use the argument |beginleft| to begin with a left page. \begin{figure}[h!] \begin{tikzpicture} \draw[black, thin] (0,0) rectangle (1,1); @@ -99,7 +99,7 @@ Use the option |beginleft| to begin with a left page. By default, each page is placed on one paper. \DescribeMacro {\fanfold} -With the |fanfold| option you can change this behavior so that a left and a right page are placed on one paper. +With the |fanfold| argument you can change this behavior so that a left and a right page are placed on one paper. In this case, the first page is a left one by default. \begin{figure}[h!] \begin{tikzpicture} @@ -113,7 +113,7 @@ In this case, the first page is a left one by default. \end{figure} \DescribeMacro {\cover} -The |cover| option is similar to the |fanfold| option, but only applied to cover pages. +The |cover| argument is similar to the |fanfold| argument, but only applied to cover pages. Read more about cover pages in section~\ref{sec:pages}. \begin{figure}[h!] \begin{tikzpicture} @@ -126,7 +126,7 @@ Read more about cover pages in section~\ref{sec:pages}. \end{figure} \DescribeMacro {\beginright} -If you want your fanfold document to start with a right hand page, you can use the option |beginright|. +If you want your fanfold document to start with a right hand page, you can use the argument |beginright|. \begin{figure}[h!] \begin{tikzpicture} \draw[black, thin] (0,0) rectangle (1,1); @@ -147,7 +147,7 @@ If you want your fanfold document to start with a right hand page, you can use t \subsection{Lengths}\label{subsec:size} -The document lengths described below can be set either as a document option (|\documentclass[page width=21cm]{pagelayout}|) or by assigning the dimension directly (|\pagewidth=21cm|) in the preamble or in the document. +The document lengths described below can be set either as a document argument (|\documentclass[page width=21cm]{pagelayout}|) or by assigning the dimension directly (|\pagewidth=21cm|) in the preamble or in the document. \DescribeMacro {\pagewidth} \DescribeMacro {\pageheight} @@ -163,7 +163,7 @@ The paper size results from the page size and the bleed. \DescribeMacro {\safetymargin} The |safety margin| is the only length that has no influence on the final result. -Its only purpose is to control the safe zone during editing. +Its only purpose is to control the safe zone when editing. It is |0mm| by default and can be configured for each edge by defining |top safety margin|, |inner safety margin|, |bottom safety margin| and |outer safety margin|. \DescribeMacro {\margin} @@ -178,7 +178,7 @@ You can create documents with cover pages. Read more about creating cover pages in section~\ref{sec:pages}. You can set the lengths |coverwidth| and |coverheight|. By default, the cover pages are the same size as the inside pages. -If you want to create a cover with a spine, use the |fanfold| or |cover| option described in section~\ref{sec:document}. +If you want to create a cover with a spine, use the |fanfold| or |cover| argument described in section~\ref{sec:document}. In this case the length |spinewidth| takes effect. The default spine width is |3mm|. \par @@ -188,26 +188,26 @@ For example, define |cover inner bleed| or |cover safety margin|. \subsection{Page Graphics and Colors}\label{subsec:colors} -You can define a page graphic and a page color with the options |page graphic| and |page color|. -Set the option |color| to define the text color. -These options can be defined for the document or for each page (see section~\ref{sec:pages}). +You can define a page graphic and a page color with the arguments |page graphic| and |page color|. +Set the argument |color| to define the text color. +These arguments can be defined for the document or for each page (see section~\ref{sec:pages}). \par -Read how to set the scale and crop of a page graphic with the |\newgraphic| macro in section~\ref{sec:content}. +Read how to set the scale and crop of a page graphic with the |\newgraphic| command in section~\ref{sec:content}. \subsection{Layout Guides} -The layout guides described in the following can be either set as a document option (|\documentclass[grid]{pagelayout}|) or using a macro (|\grid|) in the preamble or the document. +The layout guides described in the following can be either set as a document argument (|\documentclass[grid]{pagelayout}|) or using a command (|\grid|) in the preamble or the document. Layout guides can be switched on (|\safezone|) or off (|\nosafezone|). \DescribeMacro {\grid} -The |grid| option visualizes the margin and the grid gutters with green lines. +The |grid| argument visualizes the margin and the grid gutters with green lines. Read more about the grid in section~\ref{sec:grid}. \DescribeMacro {\safezone} The |safezone| layout guide shows a red border for the bleed and a thin pink line to indicate the safety margin. \DescribeMacro {\cuttingmarks} As an alternative to |safezone|, you can also use |cutting marks| to display cutting marks. \DescribeMacro {\graphpaper} -Show a graph paper with the |graph paper| option. +Show a graph paper with the |graph paper| argument. \begin{figure}[h] \begin{tikzpicture} @@ -228,59 +228,59 @@ Show a graph paper with the |graph paper| option. \end{figure} \DescribeMacro {\placeholders} -The |placeholders| option shows template placeholders. +The |placeholders| argument shows template placeholders. Read more about templates in section~\ref{sec:templates}. \DescribeMacro {\fillpages} -If you create a document with a cover and a first right hand page, use the |fill pages| option during editing to add blank pages to get a better impression of the final result. +If you create a document with a cover and a first right hand page, use the |fill pages| argument during editing to add blank pages to get a better impression of the final result. \subsection{Draft Mode}\label{subsec:draftmode} -The |draft| option is a shortcut to enable the options |placeholders|, |cutting marks| and |fill pages|. +The |draft| argument is a shortcut to enable the arguments |placeholders|, |cutting marks| and |fill pages|. It also speeds up rebuilding the PDF when changing the document. \section{Pages}\label{sec:pages} \DescribeMacro {\page} -Create a page with the macro |\page|\oarg{options}\marg{content}. -You can overwrite the document options |margin|, |top margin|, |bottom margin|, |inner margin|, |outer margin|, |gutter|, |page color|, |page graphic| and |color| for each page. +Create a page with the command |\page|\oarg{arguments}\marg{content}. +You can overwrite the document arguments |margin|, |top margin|, |bottom margin|, |inner margin|, |outer margin|, |gutter|, |page color|, |page graphic| and |color| for each page. -Use the option |double| to create a double page. +Use the argument |double| to create a double page. When creating a double page after a left page, a right page is automatically inserted before the double page. -The option |double| is only recognized for double sided documents. +The argument |double| is only recognized for double sided documents. \par -Use the options |front cover| or |back cover| to create a front or back cover. +Use the arguments |front cover| or |back cover| to create a front or back cover. If you have a back cover and a front cover, the back cover page must be defined first. -If no option is active, the front cover is placed as the first page and the back cover as the last page of the document. +If no argument is active, the front cover is placed as the first page and the back cover as the last page of the document. In this case, the only difference from normal pages is that the cover pages are not counted in the page numbering. \par -If the option |fanfold| or |cover| is selected, the back and front covers are laid out on one paper so that the cover is suitable for a book with a hard or soft cover (see section~\ref{sec:document}). +If the argument |fanfold| or |cover| is selected, the back and front covers are laid out on one paper so that the cover is suitable for a book with a hard or soft cover (see section~\ref{sec:document}). Space is reserved between the back and front covers for the spine. -Set the |spine width| document option as described in section~\ref{subsec:size}. +Set the |spine width| document argument as described in section~\ref{subsec:size}. \par -With the options |hpos| and |vpos| you can set the default grid alignment for a page. +With the arguments |hpos| and |vpos| you can set the default grid alignment for a page. Read more about the grid in the next section. -\DescribeMacro {\setpagecolor}Alternativly to the option you can use the macro |\setpagecolor|\marg{color} to set the page color for all following pages. +\DescribeMacro {\setpagecolor}Alternativly to the argument you can use the command |\setpagecolor|\marg{color} to set the page color for all following pages. -\DescribeMacro {\setpagegraphic}With the macro |\setpagegraphic|\oarg{options}\marg{name} you can define a page graphic for all following pages. -The name references a graphic version created with the |\newgraphic| macro (see section~\ref{sec:content}). -If no graphic version with the given name exists, the macro uses the name as the file name. -You can change the clipping by defining relative decimal values for the options |scale| (>1), |hpos| and |vpos| (0-1). +\DescribeMacro {\setpagegraphic}With the command |\setpagegraphic|\oarg{arguments}\marg{name} you can define a page graphic for all following pages. +The name references a graphic version created with the |\newgraphic| command (see section~\ref{sec:content}). +If no graphic version with the given name exists, the command uses the name as the file name. +You can change the clipping by defining relative decimal values for the arguments |scale| (>1), |hpos| and |vpos| (0-1). -\DescribeMacro {\newbeforepage}With the macro |\newbeforepage|\marg{name}\marg{content} you can create a reusable page layer, that can be set before pages. +\DescribeMacro {\newbeforepage}With the command |\newbeforepage|\marg{name}\marg{content} you can create a reusable page layer, that can be set before pages. \DescribeMacro {\setbeforepage} -Use the macro |\setbeforepage|\marg{name} to define a before page for all following pages or use the page option |before page| to specify a before page for a individual page. +Use the command |\setbeforepage|\marg{name} to define a before page for all following pages or use the page argument |before page| to specify a before page for a individual page. \DescribeMacro {\ifleftpage} \DescribeMacro {\ifrightpage} Use the condition |\ifleftpage|\marg{content} and |\ifrightpage|\marg{content} to check for the current page alignment. \DescribeMacro {\leftpage} -Within a page scope you can use the |\leftpage|\marg{content} macro to place content only on a left page. -In comparison to the |\ifleftpage|\marg{content} condition, the macro sets a grid for a single page. +Within a page scope you can use the |\leftpage|\marg{content} command to place content only on a left page. +In comparison to the |\ifleftpage|\marg{content} condition, the command sets a grid for a single page. That way you can combine single with double page layouts. \DescribeMacro {\rightpage} -Accordingly you can use the |\rightpage|\marg{content} macro. +Accordingly you can use the |\rightpage|\marg{content} command. \section{Grid}\label{sec:grid} @@ -290,7 +290,7 @@ All definitions are relative. The size and position results from these relations and the configured dimensions page width, page height, margin and gutter. \DescribeMacro{\setgrid} -Create a grid with the macro |\setgrid|\oarg{options}\marg{config}. +Create a grid with the command |\setgrid|\oarg{arguments}\marg{config}. The grid configuration is a nested list of rows and cells. A cell is defined by a number that describes the width ratio to the other cells in the row. The default grid describes a row with one cell: @@ -335,30 +335,30 @@ The cells in the second row share the available width in the ratio one to two: If the height of fixed and forced rows exceeds the available height, the grid shrinks to fit the available space. The defined aspect ratios of the cells are preserved and the grid is centered horizontally. -In this case you can define the |hpos| option to align the grid horizontally. +In this case you can define the |hpos| argument to align the grid horizontally. A value of |0| aligns the grid to the left, a value of |1| aligns the grid to the right. The default is a value of |0.5|. If the height of fixed and forced rows is less than the available height, all flexible rows share the excess height. If there are no flexible rows, the grid is centered vertically. -In this case you can define the |vpos| option to align the grid vertically. +In this case you can define the |vpos| argument to align the grid vertically. A value of |0| aligns the grid to the top, a value of |1| aligns the grid to the bottom. The default is a value of |0.5|. -As for a document or a page you can set |margin| and |gutter| options for a specific grid. -With the options |width|, |height|, |x| and |y| you can override the intrinsic grid size and position. +As for a document or a page you can set |margin| and |gutter| arguments for a specific grid. +With the arguments |width|, |height|, |x| and |y| you can override the intrinsic grid size and position. When overriding the grid size and position, you can calculate with the intrinsic values, for example |x=\x-1cm|. \subsection{Placing Content} The grid aligns content (see section~\ref{sec:content}) automatically in the given grid cells. -To set the position of a content box manually use the macro |\place|\marg{fromrow fromcell torow tocell}. +To set the position of a content box manually use the command |\place|\marg{fromrow fromcell torow tocell}. \DescribeMacro{\place} -To place content in the first row and first cell use the macro |\place{0 0 1 1}| before the content. +To place content in the first row and first cell use the command |\place{0 0 1 1}| before the content. The definded place applies only for the following content box. The next boxes are then again placed with auto layout. \par -The macro accepts decimals. +The command accepts decimals. That allows you to place content everywhere within the grid. The |gutter| is taken into account when calculating the positions. @@ -367,80 +367,84 @@ The |gutter| is taken into account when calculating the positions. \subsection{Text} \DescribeMacro{\text} -With the macro |\text|\oarg{options}\marg{text} you can place text. -Align the text vertically with the |center| and |bottom| options. +With the command |\text|\oarg{arguments}\marg{text} you can place text. +Align the text vertically with the |center| and |bottom| arguments. \par -The |\text| macro uses the package tcolorbox and accepts tcolorbox options, for example to set text, frame or background color and transparency. +The |\text| command uses the package tcolorbox and accepts tcolorbox arguments, for example to set text, frame or background color and transparency. The tcolorbox behaves slightly diffenrent then the standalone version: spacings, rules and background are removed by default. -You can change the behaviour with the tcolorbox macro |\tcbset|\marg{options}. -Also the |arc| options behaves different: if you set the |arc| to |0pt| the |outer arc| is also set to |0pt|. +You can change the behaviour with the tcolorbox command |\tcbset|\marg{arguments}. +Also the |arc| arguments behaves different: if you set the |arc| to |0pt| the |outer arc| is also set to |0pt|. \par -Add the option |breakable| to break text over multiple boxes and pages. +Add the argument |breakable| to break text over multiple boxes and pages. \DescribeMacro{\usetext} -Use the macro |\usetext|\oarg{name} to place the following text boxes in the grid. -If you want to use multiple breakable text boxes you can initialize the text with the |name| option and define a name that you then can pass to the |\usetext| option. +Use the command |\usetext|\oarg{name} to place the following text boxes in the grid. +If you want to use multiple breakable text boxes you can initialize the text with the |name| argument and define a name that you then can pass to the |\usetext| argument. +Breakable text boxes may have different heights and positions. +To align the baselines use the |baselinesnap| argument and set the baseline dimension, for example |baselinesnap=\baselineskip|. \par -The |\text| macro accepts the options |shadow|, |shadow size|, |shadow color|, |shadow opacity|, |shadow xshift|, |shadow yshift|, |border|, |border width|,\break |border color| and |border radius|. +The |\text| command accepts the arguments |shadow|, |shadow size|, |shadow color|, |shadow opacity|, |shadow xshift|, |shadow yshift|, |border|, |border width|,\break |border color| and |border radius|. Read more about shadows and borders in section~\ref{subsec:borders}. \subsection{Graphics} \DescribeMacro{\newgraphic} -Create a reusable graphic version with the |\newgraphic|\marg{name}\marg{options} macro. -Define the options |scale| (>1), |hpos| and |vpos| (0-1) to set the clipping of the graphic. -With the option |file| you can link a file. +Create a reusable graphic version with the |\newgraphic|\marg{name}\marg{arguments} command. +Define the arguments |scale| (>1), |hpos| and |vpos| (0-1) to set the clipping of the graphic. +With the argument |file| you can link a file. If no file is defined, the name is used as the file name. \DescribeMacro{\graphic} -The |\graphic|\oarg{options}\marg{name} macro places a graphic. -The name references a graphic version created with the |\newgraphic| macro. -If no graphic version with the given name exists, the macro uses the name as the file name. +The command |\graphic|\oarg{arguments}\marg{name} places a graphic. +The name references a graphic version created with the command |\newgraphic|. +If no graphic version with the given name exists, the command uses the name as the file name. The graphic is scaled to fit in the content box. If the aspect ratio of the graphic differs from that of the defined content box, the graphic is cropped. -You can change the cropping by defining relative decimal values for the options |scale| (>1), |hpos| and |vpos| (0-1). -Same as the |\text| macro, the |\graphic| macro accepts the |border| and |shadow| options described in section~\ref{subsec:borders}. +You can change the cropping by defining relative decimal values for the arguments |scale| (>1), |hpos| and |vpos| (0-1). +With the |orientation| argument you can set the Exif orientation flag (1-8). +To flip a graphic horizontally or vertically use the arguments |hflip| or |vflip|. +Same as the |\text| command, the |\graphic| command accepts the |border| and |shadow| arguments described in section~\ref{subsec:borders}. \DescribeMacro{\graphicspath} -You can use the macro |\graphicspath|\marg{dir-list} of the graphics package to specify a list of directories in which to search for graphic files. +You can use the command |\graphicspath|\marg{dir-list} of the graphics package to specify a list of directories in which to search for graphic files. \subsection{Other} \DescribeMacro{\xput} -The macro |\xput|\marg{code} is an easy way to place arbitrary content in the grid. +The command |\xput|\marg{code} is an easy way to place arbitrary content in the grid. Within the code block the dimensions |\width| and |\height| represent the size of the content area and can be used to create graphics, that fit and adapt to the available size. \par \DescribeMacro{\tikzgraphic} -The macro |\tikzgraphic|\marg{tikz code} works like the |\xput| macro, but wraps your input in a |tikzpicture|. +The command |\tikzgraphic|\marg{tikz code} works like the |\xput| command, but wraps your input in a |tikzpicture|. \subsection{Shadows and Borders}\label{subsec:borders} Text and graphic content can be placed with a border or a shadow. -You can define a border or shadow for a specific content box by using the options |border width|, |border color|, |border radius| to add a border or |shadow size|, |shadow color|, |shadow opacity|, |shadow xshift|, |shadow yshift| to add a shadow. +You can define a border or shadow for a specific content box by using the arguments |border width|, |border color|, |border radius| to add a border or |shadow size|, |shadow color|, |shadow opacity|, |shadow xshift|, |shadow yshift| to add a shadow. \par \DescribeMacro{\newborder} \DescribeMacro{\newshadow} -Define a reusable border or shadow with the |\newborder|\marg{name}\marg{options} or |\newshadow|\marg{name}\marg{options} macros. -Apply the border or shadow to |\text| or |\graphic| with the option |border| or |shadow|. +Define a reusable border or shadow with the |\newborder|\marg{name}\marg{arguments} or |\newshadow|\marg{name}\marg{arguments} commands. +Apply the border or shadow to |\text| or |\graphic| with the argument |border| or |shadow|. \par \DescribeMacro{\setborder} \DescribeMacro{\setshadow} -To set a border or shadow within a page or document scope, use the macros |\setborder|\oarg{options}\marg{name} or |\setshadow|\oarg{options}\marg{name}. +To set a border or shadow within a page or document scope, use the commands |\setborder|\oarg{arguments}\marg{name} or |\setshadow|\oarg{arguments}\marg{name}. \section{Templates}\label{sec:templates} \DescribeMacro{\newtemplate} -With the macro |\newtemplate|\marg{name}\marg{layout} you can create a reusable layout. +With the command |\newtemplate|\marg{name}\marg{layout} you can create a reusable layout. Creating a template works the same way as creating a page. In addition to graphics and text you can define placeholders. \DescribeMacro{\placeholder} -Use the macro |\placeholder|\marg{fromrow fromcell torow tocell} to define a content area that can later be filled with a text or a graphic. +Use the command |\placeholder|\marg{fromrow fromcell torow tocell} to define a content area that can later be filled with a text or a graphic. \DescribeMacro{\template} -To use a template use the macro |\template|\oarg{options}\marg{name}\marg{content}. -The available options are the same as for pages. +Use a template with the command |\template|\oarg{arguments}\marg{name}\marg{content}. +The available arguments are the same as for pages. -The macro |\template| comes with an easy way to generate templates by using a name pattern. +The command |\template| comes with an easy way to generate templates by using a name pattern. For example the template name \textit{sp} creates a template with a square and a portrait format placeholder. In this case the letter |s| specifies a square (1:1) and the letter |p| a portrait (2:3) format placeholder. Use the letter |l| to define a landscape ratio (3:2), |g| for golden ratio (5:3), |o| for golden upright ratio (3:5), |w| for wide ratio (2:1) or |f| for a flexible ratio. @@ -450,23 +454,23 @@ Within a row you can mix the fixed placeholders (|s|, |p|, |l|, |g|, |o|, |w|) o \section{Image Optimization}\label{sec:optimization} \DescribeMacro{\optimize} -With the macro |\optimize|\oarg{options} you can enable image optimization. +With the command |\optimize|\oarg{arguments} you can enable image optimization. When enabled, JPG and PNG images are croped, resized and cached. This results in fast rebuilds when changing the document. -You can set the options |density|, |quality|, |unsharp| and |downsample threshold|. -The |density| option takes a number of the pixels per inch (default |300|), the |quality| option takes numbers between 1 and 100, the |unsharp| option an ImageMagick unsharp configuration (default |2x1|) and the |downsample threshold| a decimal value greater or equal 1 (default |1.2|). -The |unsharp| option can also be applied for individual graphics. +You can set the arguments |density|, |quality|, |unsharp| and |downsample threshold|. +The |density| argument takes a number of the pixels per inch (default |300|), the |quality| argument takes numbers between 1 and 100, the |unsharp| argument an ImageMagick unsharp configuration (default |2x1|) and the |downsample threshold| a decimal value greater or equal 1 (default |1.2|). +The |unsharp| argument can also be applied for individual graphics. \par If you use image optimization and change the original graphics files, you must delete the cached versions so that the cache will update. \DescribeMacro{\import} -The |\import| macro helps you to streamline this process. +The |\import| command helps you to streamline this process. When enabled, you need an import directory in which to place the modified files. When the document is created, the files are moved to your image directory and the corresponding cached versions are automatically regenerated. The import directory is either the directory \emph{import} in your working directory. Or you can set a system wide import directory by defining the shell variable |PAGELAYOUT_IMPORT_DIRECTORY|. \par \DescribeMacro{\preflight} -Use the |\preflight| macro to proof the image resolution. +Use the |\preflight| command to proof the image resolution. If images have a final resolution less then 300 ppi you get a warning, if less then 200 ppi you get an error. With preflight enabled the maximum possible resolution is shown next to each graphic. diff --git a/macros/latex/contrib/pagelayout/doc/quickstart-1.svg b/macros/latex/contrib/pagelayout/doc/quickstart-1.svg index 5d184af7e0..e5f5312e10 100644 --- a/macros/latex/contrib/pagelayout/doc/quickstart-1.svg +++ b/macros/latex/contrib/pagelayout/doc/quickstart-1.svg @@ -1 +1 @@ -<svg width="320" height="239" viewBox="0 0 167.24 124.72" version="1.2" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg"><defs><symbol overflow="visible" id="b"><path style="stroke:none" d="M.14-4.563h3.485v.532H2.187V0h-.609v-4.031H.141Zm0 0"/></symbol><symbol overflow="visible" id="c"><path style="stroke:none" d="M3.203-2.125V0h-.562v-2.125c0-.3-.059-.523-.172-.672-.106-.144-.274-.219-.5-.219-.262 0-.465.094-.61.282-.136.187-.203.453-.203.796V0H.594v-4.75h.562v1.844a1.03 1.03 0 0 1 .407-.438c.164-.101.367-.156.609-.156.344 0 .598.117.765.344.176.23.266.574.266 1.031Zm0 0"/></symbol><symbol overflow="visible" id="d"><path style="stroke:none" d="M.969-3.406h1.437v2.969h1.11V0H.719v-.438h1.125v-2.53H.969Zm.875-1.328h.562v.703h-.562Zm0 0"/></symbol><symbol overflow="visible" id="e"><path style="stroke:none" d="M2.969-3.297v.547a1.853 1.853 0 0 0-.485-.203 1.731 1.731 0 0 0-.5-.078c-.25 0-.437.043-.562.125a.427.427 0 0 0-.188.375c0 .156.047.273.141.344.094.074.32.148.688.218l.234.047c.281.055.488.156.625.313.144.156.219.367.219.625 0 .336-.121.601-.36.796-.242.188-.574.282-1 .282-.168 0-.343-.024-.531-.063a3.437 3.437 0 0 1-.594-.156v-.578c.207.105.406.187.594.25.188.055.367.078.547.078.25 0 .441-.05.578-.156a.505.505 0 0 0 .203-.422c0-.258-.25-.442-.75-.547h-.031l-.203-.047c-.324-.062-.563-.164-.719-.312-.148-.157-.219-.36-.219-.61 0-.332.11-.586.328-.765.227-.176.547-.266.954-.266.187 0 .363.016.53.047.165.031.333.086.5.156Zm0 0"/></symbol><symbol overflow="visible" id="f"><path style="stroke:none" d="M1.875-4.39v.968h1.281v.438H1.875v1.859c0 .25.047.43.14.531.094.094.258.14.5.14h.641V0H2.47c-.43 0-.73-.082-.906-.25-.168-.164-.25-.457-.25-.875v-1.86H.405v-.437h.906v-.969Zm0 0"/></symbol><symbol overflow="visible" id="g"><path style="stroke:none" d="M3.422-1.984v.265H.984v.016c-.011.469.079.808.266 1.016.195.199.473.296.828.296.176 0 .363-.023.563-.078.195-.062.406-.148.625-.265v.562a3.72 3.72 0 0 1-.625.188c-.2.05-.391.078-.579.078-.53 0-.949-.157-1.25-.469C.52-.695.376-1.141.376-1.703c0-.55.145-.988.438-1.313.289-.32.68-.484 1.171-.484.438 0 .782.152 1.032.453.25.293.382.649.406 1.063Zm-.563-.172a1.14 1.14 0 0 0-.265-.61c-.149-.175-.356-.265-.625-.265a.879.879 0 0 0-.672.281.943.943 0 0 0-.297.594Zm0 0"/></symbol><symbol overflow="visible" id="h"><path style="stroke:none" d="m3.406-3.422-1.219 1.64L3.532 0h-.656l-1-1.375L.875 0h-.64l1.343-1.781-1.234-1.64h.625l.906 1.233.906-1.234Zm0 0"/></symbol><symbol overflow="visible" id="i"><path style="stroke:none" d="M3.25-4.75v.469h-.64c-.212 0-.356.043-.438.125-.074.086-.11.23-.11.437v.297H3.25v.438H2.062V0H1.5v-2.984H.594v-.438H1.5v-.234c0-.375.082-.649.25-.828.176-.176.445-.266.813-.266Zm0 0"/></symbol><symbol overflow="visible" id="j"><path style="stroke:none" d="M2.188-1.234c0 .25.046.445.14.578.094.125.235.187.422.187h.656V0h-.719c-.335 0-.593-.102-.78-.313-.188-.218-.282-.523-.282-.921v-3.094h-.89v-.438h1.453Zm0 0"/></symbol><symbol overflow="visible" id="k"><path style="stroke:none" d="M3.531-2.719a1.364 1.364 0 0 0-.375-.203 1.361 1.361 0 0 0-.406-.062c-.355 0-.625.109-.813.328-.18.219-.265.539-.265.953V0h-.563v-3.422h.563v.672c.094-.238.234-.422.422-.547.195-.133.43-.203.703-.203.133 0 .258.023.375.063.125.03.242.085.36.156Zm0 0"/></symbol><symbol overflow="visible" id="l"><path style="stroke:none" d="M1.14-.438v1.735H.579v-4.719h.563v.438a.961.961 0 0 1 .375-.375c.156-.094.336-.141.546-.141.407 0 .723.164.954.484.238.313.359.758.359 1.329 0 .554-.121.992-.36 1.312-.23.313-.546.469-.953.469-.21 0-.39-.043-.546-.125a.996.996 0 0 1-.375-.406Zm1.657-1.265c0-.438-.074-.766-.219-.984a.67.67 0 0 0-.61-.344.7.7 0 0 0-.624.344c-.137.218-.203.546-.203.984 0 .43.066.758.203.984a.702.702 0 0 0 .625.328c.27 0 .472-.109.61-.328.144-.219.218-.547.218-.984Zm0 0"/></symbol><symbol overflow="visible" id="m"><path style="stroke:none" d="M2.14-1.719h-.187c-.324 0-.57.059-.734.172-.168.117-.25.29-.25.516 0 .21.062.37.187.484.125.117.297.172.516.172.312 0 .555-.11.734-.328.176-.219.266-.516.266-.89v-.126Zm1.094-.234V0h-.562v-.5c-.125.2-.281.352-.469.453-.18.094-.398.14-.656.14-.344 0-.621-.097-.828-.296C.508-.398.406-.664.406-1c0-.375.125-.66.375-.86.258-.195.633-.296 1.125-.296h.766v-.094c0-.27-.074-.469-.219-.594-.137-.125-.351-.187-.64-.187-.2 0-.399.031-.594.094a2.867 2.867 0 0 0-.563.234v-.563a6.11 6.11 0 0 1 .594-.171c.188-.04.375-.063.563-.063.28 0 .519.043.718.125.196.086.36.21.485.375a.92.92 0 0 1 .171.375c.032.148.047.371.047.672Zm0 0"/></symbol><symbol overflow="visible" id="n"><path style="stroke:none" d="M3.234-.172a1.732 1.732 0 0 1-.468.188c-.157.05-.32.078-.485.078-.531 0-.949-.157-1.25-.469-.293-.32-.437-.766-.437-1.328 0-.563.144-1 .437-1.313.301-.32.719-.484 1.25-.484.164 0 .328.023.485.063.156.042.312.109.468.203v.578a1.665 1.665 0 0 0-.453-.281 1.268 1.268 0 0 0-.5-.094c-.355 0-.625.117-.812.344-.188.23-.282.558-.282.984 0 .418.094.742.282.969.195.23.468.343.812.343.196 0 .375-.023.531-.078.157-.062.297-.156.422-.281Zm0 0"/></symbol><symbol overflow="visible" id="o"><path style="stroke:none" d="M.313-2.203h3.234v.515H.312Zm0 0"/></symbol><symbol overflow="visible" id="p"><path style="stroke:none" d="M1.875-3.031a.716.716 0 0 0-.64.344c-.15.218-.22.546-.22.984 0 .43.07.758.22.984.144.219.359.328.64.328.29 0 .508-.109.656-.328.145-.226.219-.554.219-.984 0-.438-.074-.766-.219-.984a.738.738 0 0 0-.656-.344Zm0-.469c.477 0 .844.156 1.094.469.25.304.375.746.375 1.328 0 .586-.125 1.031-.375 1.344-.25.304-.617.453-1.094.453-.469 0-.828-.149-1.078-.453-.25-.313-.375-.758-.375-1.344 0-.582.125-1.024.375-1.328.25-.313.61-.469 1.078-.469Zm0 0"/></symbol><symbol overflow="visible" id="q"><path style="stroke:none" d="M2.625-2.984V-4.75h.563V0h-.563v-.438a.996.996 0 0 1-.375.407c-.156.082-.34.125-.547.125-.406 0-.73-.16-.969-.485C.492-.71.375-1.156.375-1.719c0-.55.117-.984.36-1.297a1.15 1.15 0 0 1 .968-.484 1.046 1.046 0 0 1 .922.516ZM.969-1.704c0 .438.066.766.203.985.133.219.336.328.61.328.269 0 .476-.109.624-.328.145-.226.219-.554.219-.984 0-.438-.074-.766-.219-.984a.708.708 0 0 0-.625-.344.662.662 0 0 0-.61.344c-.136.218-.202.546-.202.984Zm0 0"/></symbol><symbol overflow="visible" id="r"><path style="stroke:none" d="M1.188-1.234h1.078V0H1.187Zm0 0"/></symbol><symbol overflow="visible" id="s"><path style="stroke:none" d="M5.984-3.578h8.672V0H1.578v-3.469l2.219-2.344C6.41-8.601 8-10.316 8.562-10.953c.688-.79 1.18-1.492 1.485-2.11.3-.613.453-1.218.453-1.812 0-.914-.277-1.625-.828-2.125-.555-.5-1.34-.75-2.36-.75-.73 0-1.546.148-2.453.438-.906.28-1.851.699-2.828 1.25v-3.797a20.224 20.224 0 0 1 2.875-.813 13.977 13.977 0 0 1 2.719-.281c2.176 0 3.883.512 5.125 1.531 1.25 1.012 1.875 2.39 1.875 4.14 0 .813-.137 1.575-.406 2.282-.274.71-.735 1.496-1.39 2.36-.493.624-1.829 2.03-4.017 4.218a517.956 517.956 0 0 0-2.828 2.844Zm0 0"/></symbol><clipPath id="a"><path d="M0 0h167.238v124.719H0Zm0 0"/></clipPath><clipPath id="t"><path d="M5 121h1v3.719H5Zm0 0"/></clipPath><clipPath id="u"><path d="M164 118h3.238v2H164Zm0 0"/></clipPath><clipPath id="v"><path d="M161 121h1v3.719h-1Zm0 0"/></clipPath><clipPath id="w"><path d="M164 5h3.238v1H164Zm0 0"/></clipPath></defs><g clip-path="url(#a)"><path style="fill:none;stroke-width:.14172;stroke-linecap:square;stroke-linejoin:miter;stroke:#a6a6a6;stroke-opacity:.2;stroke-miterlimit:10" d="M0 .001h175.75M0 2.833h175.75M0 5.67h175.75M0 8.505h175.75M0 11.337h175.75M0 14.173h175.75M0 17.01h175.75M0 19.841h175.75M0 22.677h175.75M0 25.513h175.75M0 28.345h175.75M0 31.181h175.75M0 34.017h175.75M0 36.849h175.75M0 39.685h175.75M0 42.52h175.75M0 45.353h175.75M0 48.189h175.75M0 51.025h175.75M0 53.857h175.75M0 56.693h175.75M0 59.529h175.75M0 62.36h175.75M0 65.197h175.75M0 68.033h175.75M0 70.869h175.75M0 73.7h175.75M0 76.537h175.75M0 79.371h175.75M0 82.204h175.75M0 85.04h175.75M0 87.876h175.75M0 90.708h175.75M0 93.544h175.75M0 96.38h175.75M0 99.212h175.75M0 102.048h175.75M0 104.884h175.75M0 107.716h175.75M0 110.552h175.75M0 113.388h175.75M0 116.22h175.75M0 119.056h175.75M0 121.892h175.75M0 124.724h175.75M0 127.56h175.75M0 130.396h175.75M0 133.228h175.75M0 0v133.23M2.836.002v133.23M5.668.002v133.23M8.504.002v133.23M11.34.002v133.23M14.172.002v133.23M17.008.002v133.23M19.844.002v133.23M22.676.002v133.23M25.512.002v133.23M28.348.002v133.23M31.18.002v133.23M34.016.002v133.23M36.852.002v133.23M39.684.002v133.23M42.52.002v133.23M45.356.002v133.23M48.188.002v133.23M51.024.002v133.23M53.859.002v133.23M56.691.002v133.23M59.527.002v133.23M62.363.002v133.23M65.195.002v133.23M68.031.002v133.23M70.867.002v133.23M73.703.002v133.23M76.535.002v133.23M79.371.002v133.23M82.207.002v133.23M85.04.002v133.23M87.875.002v133.23M90.711.002v133.23M93.543.002v133.23M96.38.002v133.23M99.215.002v133.23M102.047.002v133.23M104.883.002v133.23M107.719.002v133.23M110.55.002v133.23M113.387.002v133.23M116.223.002v133.23M119.055.002v133.23M121.89.002v133.23M124.727.002v133.23M127.559.002v133.23M130.395.002v133.23M133.23.002v133.23M136.063.002v133.23M138.899.002v133.23M141.734.002v133.23M144.566.002v133.23M147.403.002v133.23M150.238.002v133.23M153.07.002v133.23M155.906.002v133.23M158.742.002v133.23M161.574.002v133.23M164.41.002v133.23M167.246.002v133.23M170.078.002v133.23M172.914.002v133.23M175.75.002v133.23M0 .001h175.75M0 14.173h175.75M0 28.345h175.75M0 42.521h175.75M0 56.693h175.75M0 70.869h175.75M0 85.04h175.75M0 99.212h175.75M0 113.388h175.75M0 127.56h175.75M0 0v133.23M14.172.002v133.23M28.348.002v133.23M42.52.002v133.23M56.695.002v133.23M70.867.002v133.23M85.04.002v133.23M99.215.002v133.23M113.387.002v133.23M127.559.002v133.23M141.734.002v133.23M155.906.002v133.23M170.082.002v133.23" transform="matrix(1 0 0 -1 -8.504 133.224)"/></g><use xlink:href="#b" x="19.654" y="24.625" style="fill:#000;fill-opacity:1"/><use xlink:href="#c" x="23.431" y="24.625" style="fill:#000;fill-opacity:1"/><use xlink:href="#d" x="27.208" y="24.625" style="fill:#000;fill-opacity:1"/><use xlink:href="#e" x="30.984" y="24.625" style="fill:#000;fill-opacity:1"/><use xlink:href="#f" x="38.644" y="24.625" style="fill:#000;fill-opacity:1"/><use xlink:href="#g" x="42.421" y="24.625" style="fill:#000;fill-opacity:1"/><use xlink:href="#h" x="46.198" y="24.625" style="fill:#000;fill-opacity:1"/><use xlink:href="#f" x="49.981" y="24.625" style="fill:#000;fill-opacity:1"/><use xlink:href="#i" x="57.635" y="24.625" style="fill:#000;fill-opacity:1"/><use xlink:href="#d" x="61.412" y="24.625" style="fill:#000;fill-opacity:1"/><use xlink:href="#j" x="65.195" y="24.625" style="fill:#000;fill-opacity:1"/><use xlink:href="#j" x="68.971" y="24.625" style="fill:#000;fill-opacity:1"/><use xlink:href="#e" x="72.748" y="24.625" style="fill:#000;fill-opacity:1"/><use xlink:href="#f" x="19.842" y="33.193" style="fill:#000;fill-opacity:1"/><use xlink:href="#c" x="23.619" y="33.193" style="fill:#000;fill-opacity:1"/><use xlink:href="#g" x="27.396" y="33.193" style="fill:#000;fill-opacity:1"/><use xlink:href="#i" x="34.018" y="33.193" style="fill:#000;fill-opacity:1"/><use xlink:href="#d" x="37.794" y="33.193" style="fill:#000;fill-opacity:1"/><use xlink:href="#k" x="41.571" y="33.193" style="fill:#000;fill-opacity:1"/><use xlink:href="#e" x="45.348" y="33.193" style="fill:#000;fill-opacity:1"/><use xlink:href="#f" x="49.131" y="33.193" style="fill:#000;fill-opacity:1"/><use xlink:href="#l" x="55.747" y="33.193" style="fill:#000;fill-opacity:1"/><use xlink:href="#j" x="59.524" y="33.193" style="fill:#000;fill-opacity:1"/><use xlink:href="#m" x="63.3" y="33.193" style="fill:#000;fill-opacity:1"/><use xlink:href="#n" x="67.083" y="33.193" style="fill:#000;fill-opacity:1"/><use xlink:href="#g" x="70.86" y="33.193" style="fill:#000;fill-opacity:1"/><use xlink:href="#o" x="74.637" y="33.193" style="fill:#000;fill-opacity:1"/><use xlink:href="#c" x="19.842" y="41.761" style="fill:#000;fill-opacity:1"/><use xlink:href="#p" x="23.619" y="41.761" style="fill:#000;fill-opacity:1"/><use xlink:href="#j" x="27.396" y="41.761" style="fill:#000;fill-opacity:1"/><use xlink:href="#q" x="31.172" y="41.761" style="fill:#000;fill-opacity:1"/><use xlink:href="#g" x="34.956" y="41.761" style="fill:#000;fill-opacity:1"/><use xlink:href="#k" x="38.732" y="41.761" style="fill:#000;fill-opacity:1"/><use xlink:href="#r" x="42.509" y="41.761" style="fill:#000;fill-opacity:1"/><path style="fill-rule:nonzero;fill:#b3e6fa;fill-opacity:.3;stroke-width:.28346;stroke-linecap:butt;stroke-linejoin:miter;stroke:#66cef5;stroke-opacity:.3;stroke-miterlimit:10" d="M.002 0v85.042h56.691V0Zm0 0" transform="matrix(1 0 0 -1 90.709 104.878)"/><use xlink:href="#s" x="110.523" y="72.877" style="fill:#66cef5;fill-opacity:.3"/><path style="fill:none;stroke-width:.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:#000;stroke-opacity:1;stroke-miterlimit:10" d="M-2.836 5.67h5.672" transform="matrix(1 0 0 -1 0 124.72)"/><g clip-path="url(#t)"><path style="fill:none;stroke-width:.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:#000;stroke-opacity:1;stroke-miterlimit:10" d="M5.668-2.835v5.668" transform="matrix(1 0 0 -1 0 124.72)"/></g><path style="fill:none;stroke-width:.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:#000;stroke-opacity:1;stroke-miterlimit:10" d="M-2.836 119.056h5.672M5.668 127.56v-5.668" transform="matrix(1 0 0 -1 0 124.72)"/><g clip-path="url(#u)"><path style="fill:none;stroke-width:.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:#000;stroke-opacity:1;stroke-miterlimit:10" d="M170.082 5.67h-5.672" transform="matrix(1 0 0 -1 0 124.72)"/></g><g clip-path="url(#v)"><path style="fill:none;stroke-width:.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:#000;stroke-opacity:1;stroke-miterlimit:10" d="M161.578-2.835v5.668" transform="matrix(1 0 0 -1 0 124.72)"/></g><g clip-path="url(#w)"><path style="fill:none;stroke-width:.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:#000;stroke-opacity:1;stroke-miterlimit:10" d="M170.082 119.056h-5.672" transform="matrix(1 0 0 -1 0 124.72)"/></g><path style="fill:none;stroke-width:.3985;stroke-linecap:butt;stroke-linejoin:miter;stroke:#000;stroke-opacity:1;stroke-miterlimit:10" d="M161.578 127.56v-5.668" transform="matrix(1 0 0 -1 0 124.72)"/></svg>
\ No newline at end of file +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="320" height="239" viewBox="0 0 167.24 124.72"><defs><path id="b" d="M.422-2.89h.39v2.562h1.391V0H.422Zm0 0"/><path id="c" d="M1.188-1.922a.45.45 0 0 0-.407.219q-.14.204-.14.625 0 .409.14.625a.46.46 0 0 0 .407.203q.281.001.421-.203.141-.217.141-.625 0-.42-.14-.625a.47.47 0 0 0-.423-.219m0-.297c.3 0 .53.102.687.297q.248.282.25.844-.002.55-.25.844-.235.298-.687.297-.44 0-.688-.297-.234-.294-.234-.844 0-.562.234-.844c.164-.195.395-.297.688-.297m0 0"/><path id="d" d="M2.234-1.719A.6.6 0 0 0 2-1.844a.6.6 0 0 0-.25-.047q-.345.001-.516.22c-.117.136-.171.335-.171.593V0h-.36v-2.172h.36v.422a.7.7 0 0 1 .265-.344.78.78 0 0 1 .438-.125q.139.001.25.031a.9.9 0 0 1 .218.094Zm0 0"/><path id="e" d="M2.172-1.266v.172H.625v.016q-.017.44.172.64.188.189.516.188.17 0 .359-.047.186-.06.406-.172v.36a3 3 0 0 1-.406.125 1.5 1.5 0 0 1-.36.047Q.81.063.517-.234.234-.545.234-1.078q0-.529.282-.828.28-.312.75-.313.406 0 .64.281c.164.188.254.415.266.672m-.36-.109a.62.62 0 0 0-.156-.375.5.5 0 0 0-.406-.172.6.6 0 0 0-.437.172.62.62 0 0 0-.172.39Zm0 0"/><path id="f" d="M1.313-1.953a.45.45 0 0 1 .156-.203.5.5 0 0 1 .25-.063q.263.002.375.203c.07.137.11.391.11.766V0h-.329v-1.234q-.002-.468-.062-.578a.18.18 0 0 0-.172-.11q-.16.001-.22.125-.062.111-.062.563V0h-.312v-1.234c0-.313-.024-.504-.063-.578-.03-.07-.101-.11-.203-.11a.21.21 0 0 0-.203.125q-.047.111-.047.563V0H.22v-2.172H.53v.188a.5.5 0 0 1 .156-.172.473.473 0 0 1 .469 0q.094.064.157.203m0 0"/><path id="g" d="M.61-2.156h.921v1.875h.703V0H.47v-.281h.703v-1.61H.609ZM1.171-3h.36v.438h-.36Zm0 0"/><path id="h" d="M.734-.266V.828H.375v-3h.36v.281a.55.55 0 0 1 .218-.234.7.7 0 0 1 .36-.094q.386.001.609.313.218.3.219.828-.001.533-.22.844a.72.72 0 0 1-.608.297.8.8 0 0 1-.36-.079.6.6 0 0 1-.219-.25m1.032-.812q-.001-.42-.125-.625a.43.43 0 0 0-.391-.219.44.44 0 0 0-.39.219c-.087.137-.126.344-.126.625Q.733-.67.86-.453a.45.45 0 0 0 .391.203q.263.001.39-.203.125-.217.126-.625m0 0"/><path id="i" d="M1.89-2.094v.344a2 2 0 0 0-.312-.125 1.1 1.1 0 0 0-.312-.047q-.252 0-.375.078a.27.27 0 0 0-.11.235q-.001.141.078.218c.063.055.211.102.454.141l.14.031a.7.7 0 0 1 .406.203c.094.094.141.227.141.391q0 .314-.234.5-.236.188-.641.188-.158 0-.328-.047a3 3 0 0 1-.39-.094v-.375a1.6 1.6 0 0 0 .734.203.6.6 0 0 0 .359-.094.3.3 0 0 0 .14-.265c0-.164-.163-.282-.484-.344h-.015l-.125-.031Q.7-1.046.563-1.187a.53.53 0 0 1-.141-.391q-.001-.31.203-.469.217-.17.61-.172a1.8 1.8 0 0 1 .656.125m0 0"/><path id="j" d="M.375-.828v-1.344h.36v1.344q0 .299.093.437.105.141.328.141.247.002.375-.172.14-.187.14-.516v-1.234h.36V0h-.36v-.328a.73.73 0 0 1-.265.297.7.7 0 0 1-.375.094c-.218 0-.386-.07-.5-.22Q.374-.371.375-.827m0 0"/><path id="k" d="M1.656-1.89v-1.126h.36V0h-.36v-.266a.63.63 0 0 1-.234.25.7.7 0 0 1-.344.079.75.75 0 0 1-.625-.297q-.22-.31-.219-.86c0-.351.07-.629.22-.828a.76.76 0 0 1 .624-.297q.201 0 .344.094.152.083.234.234M.61-1.079q-.001.409.125.625a.46.46 0 0 0 .407.203q.246.001.375-.203.14-.217.14-.625 0-.42-.14-.625a.41.41 0 0 0-.375-.219.45.45 0 0 0-.407.219c-.086.137-.125.344-.125.625m0 0"/><path id="l" d="M1.39-.781q-.002.235.079.36.091.126.265.124h.422V0h-.453a.64.64 0 0 1-.5-.203q-.174-.201-.172-.578V-2.75H.47v-.281h.922Zm0 0"/><path id="m" d="M1.188-2.781v.61H2v.28h-.812v1.172q0 .251.093.344c.063.063.164.094.313.094H2V0h-.437q-.41.001-.579-.156Q.827-.326.828-.72V-1.89H.25v-.28h.578v-.61Zm0 0"/><path id="n" d="M1.36-1.094h-.126c-.199 0-.355.04-.468.11q-.158.11-.157.328 0 .205.11.312a.55.55 0 0 0 .344.094q.293.001.453-.203.17-.199.172-.563v-.078Zm.687-.14V0h-.36v-.328a.7.7 0 0 1-.28.297.9.9 0 0 1-.423.094C.766.063.586 0 .454-.125a.64.64 0 0 1-.204-.5Q.249-1 .5-1.187q.248-.188.719-.188h.468v-.047q0-.263-.125-.375-.128-.124-.421-.125a1.2 1.2 0 0 0-.36.063 1.5 1.5 0 0 0-.36.14v-.36q.188-.058.376-.093.186-.047.344-.047.28.002.468.078a.85.85 0 0 1 .313.235c.039.062.07.148.094.25q.03.14.03.422m0 0"/><path id="o" d="M.86-.703h.609v.516L1.03.656h-.39l.218-.843Zm0 0"/><path id="p" d="M2.063-.11c-.106.055-.211.094-.313.126a1 1 0 0 1-.297.047Q.95.063.656-.234q-.28-.311-.281-.844 0-.545.281-.844c.196-.195.461-.297.797-.297q.155 0 .297.047.154.035.313.11v.374a.8.8 0 0 0-.297-.171.8.8 0 0 0-.313-.063q-.344 0-.531.219-.174.221-.172.625-.002.393.172.61c.125.148.3.218.531.218q.187 0 .328-.047a.8.8 0 0 0 .282-.187Zm0 0"/><path id="q" d="M2.031-1.344V0h-.36v-1.344q-.001-.293-.109-.422-.094-.14-.312-.14a.48.48 0 0 0-.39.172c-.087.117-.126.28-.126.5V0H.375v-2.172h.36v.328a.65.65 0 0 1 .25-.281.8.8 0 0 1 .39-.094q.328 0 .484.219.172.222.172.656m0 0"/><path id="r" d="M.203-1.406H2.25v.328H.203Zm0 0"/><path id="s" d="M1.656-1.11q-.001-.387-.125-.593a.41.41 0 0 0-.375-.219.45.45 0 0 0-.406.219q-.14.206-.14.594 0 .409.14.625a.46.46 0 0 0 .406.203q.247 0 .375-.203.124-.217.125-.625m.36.97q0 .481-.235.734-.22.264-.672.265Q.968.86.797.83A4 4 0 0 1 .484.75V.39C.61.454.723.493.828.517a1 1 0 0 0 .281.046q.294-.002.422-.156.124-.158.125-.5v-.25a.6.6 0 0 1-.234.282.7.7 0 0 1-.344.078.75.75 0 0 1-.625-.297Q.233-.593.234-1.11c0-.332.07-.598.22-.797a.74.74 0 0 1 .624-.313.7.7 0 0 1 .344.078c.101.055.18.141.234.266v-.281h.36Zm0 0"/><path id="t" d="M.75-.781h.688V0H.75Zm0 0"/><path id="u" d="M.281-1.11v-1.78h.39v1.953q0 .22.016.312A.26.26 0 0 0 .735-.5q.06.129.172.188a.8.8 0 0 0 .282.046.7.7 0 0 0 .28-.046.4.4 0 0 0 .188-.188.4.4 0 0 0 .047-.125c.008-.062.016-.16.016-.297V-2.89h.39v1.782q-.002.438-.062.625a.8.8 0 0 1-.188.312.9.9 0 0 1-.296.172q-.159.062-.375.063C1.05.063.926.039.813 0A.9.9 0 0 1 .53-.172a.7.7 0 0 1-.203-.312Q.281-.671.281-1.11m0 0"/><path id="v" d="M.188-2.172h.375l.625 1.828.64-1.828h.375L1.422 0H.969Zm0 0"/><path id="w" d="M1.781-1.078q0-.42-.14-.625a.43.43 0 0 0-.391-.219.44.44 0 0 0-.39.219c-.087.137-.126.344-.126.625Q.733-.67.86-.453a.45.45 0 0 0 .391.203q.263.001.39-.203.141-.217.141-.625M.734-1.891a.55.55 0 0 1 .22-.234.7.7 0 0 1 .359-.094c.257 0 .46.102.609.297q.234.3.234.828 0 .55-.234.86a.72.72 0 0 1-.61.297.8.8 0 0 1-.359-.079.6.6 0 0 1-.219-.25V0H.375v-3.016h.36Zm0 0"/><path id="x" d="M2.063-3.016v.297h-.407q-.189.002-.265.078-.08.083-.079.282v.187h.75v.281h-.75V0H.954v-1.89H.375v-.282h.578v-.156q-.001-.34.156-.516.171-.17.516-.172Zm0 0"/><path id="y" d="M2.078-.11a.8.8 0 0 1-.312.126 1.2 1.2 0 0 1-.328.047q-.55 0-.86-.391-.313-.405-.312-1.11c0-.476.101-.847.312-1.109q.31-.405.86-.406.17 0 .328.047.17.047.312.125v.39q-.142-.107-.312-.171a1 1 0 0 0-.328-.063.66.66 0 0 0-.579.297q-.187.3-.187.89 0 .599.187.891c.133.188.329.281.579.281a.9.9 0 0 0 .328-.062q.17-.06.312-.172Zm0 0"/><path id="z" d="M.031-2.89h.547L1.703-.517V-2.89h.422V0h-.547L.453-2.375V0H.031Zm0 0"/><path id="A" d="M1.656-.703q-.08.235-.218.61-.189.497-.266.609A.6.6 0 0 1 .953.75a.6.6 0 0 1-.312.078H.359V.531h.204a.34.34 0 0 0 .25-.094q.093-.093.234-.468l-.844-2.14h.375l.64 1.702.641-1.703h.375Zm0 0"/><path id="B" d="M.844-.328q.499 0 .687-.234.201-.248.203-.875-.002-.639-.203-.891-.188-.248-.687-.25H.656v2.25Zm.015-2.563c.438 0 .758.121.97.36q.31.345.312 1.094Q2.14-.7 1.828-.344 1.514.001.86 0H.266v-2.89Zm0 0"/><path id="C" d="M2.031-1.344V0h-.36v-1.344q-.001-.293-.109-.422-.094-.14-.312-.14a.48.48 0 0 0-.39.172c-.087.117-.126.28-.126.5V0H.375v-3.016h.36v1.172a.65.65 0 0 1 .25-.281.8.8 0 0 1 .39-.094q.328 0 .484.219.172.222.172.656m0 0"/><path id="D" d="M.64-1.078q-.001.423.126.64a.45.45 0 0 0 .39.204q.263 0 .39-.203.142-.219.141-.641 0-.405-.14-.61a.43.43 0 0 0-.39-.218.44.44 0 0 0-.391.218c-.086.137-.125.34-.125.61m1.047.812a.7.7 0 0 1-.25.25.7.7 0 0 1-.328.079.75.75 0 0 1-.625-.297C.336-.43.266-.707.266-1.062c0-.364.07-.645.218-.844a.74.74 0 0 1 .625-.313q.188 0 .329.094a.65.65 0 0 1 .25.234v-.265h.359V.828h-.36Zm0 0"/><path id="E" d="M.766-2.578v1.094h.468q.265 0 .407-.141c.101-.094.156-.227.156-.406a.51.51 0 0 0-.156-.39.53.53 0 0 0-.407-.157Zm-.391-.313h.86q.481.001.734.22c.164.148.25.358.25.64q-.002.439-.25.656-.253.22-.735.219H.766V0H.375Zm0 0"/><path id="F" d="M.063-2.89h.53l.5 1.468.5-1.469h.532V0h-.36v-2.547L1.25-1.03H.953L.438-2.547V0H.063Zm0 0"/><clipPath id="a"><path d="M0 0h167.238v124.719H0Zm0 0"/></clipPath><clipPath id="G"><path d="M5 121h1v3.719H5Zm0 0"/></clipPath><clipPath id="H"><path d="M164 118h3.238v2H164Zm0 0"/></clipPath><clipPath id="I"><path d="M161 121h1v3.719h-1Zm0 0"/></clipPath><clipPath id="J"><path d="M164 5h3.238v1H164Zm0 0"/></clipPath></defs><g clip-path="url(#a)"><path fill="#FFF" d="M0 121.887V2.828A2.836 2.836 0 0 1 2.836-.008H164.41a2.836 2.836 0 0 1 2.836 2.836v119.059a2.835 2.835 0 0 1-2.836 2.832H2.836A2.835 2.835 0 0 1 0 121.887m0 0"/><path fill="none" stroke="#A6A6A6" stroke-linecap="square" stroke-miterlimit="10" stroke-opacity=".2" stroke-width=".142" d="M-8.504 133.223h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75M-8.504 82.2h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.835h175.75M-8.504 51.02h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75M-8.504 39.68h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75M-8.504 28.34h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75M-8.504 8.5h175.75M-8.504 5.664h175.75M-8.504 2.828h175.75M-8.504-.004h175.75M-8.504 133.223V-.007m2.836 133.23V-.007m2.832 133.23V-.007M0 133.222V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.835 133.23V-.007m2.833 133.23V-.007m2.835 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.835 133.23V-.007m2.833 133.23V-.007m2.835 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007M-8.504 133.223h175.75M-8.504 119.05h175.75m-175.75-14.172h175.75M-8.504 90.703h175.75M-8.504 76.531h175.75M-8.504 62.355h175.75M-8.504 48.184h175.75M-8.504 34.012h175.75M-8.504 19.836h175.75M-8.504 5.664h175.75M-8.504 133.223V-.007m14.172 133.23V-.007m14.176 133.23V-.007m14.172 133.23V-.007m14.175 133.23V-.007m14.172 133.23V-.007m14.172 133.23V-.007m14.176 133.23V-.007m14.172 133.23V-.007m14.172 133.23V-.007m14.175 133.23V-.007m14.172 133.23V-.007m14.176 133.23V-.007"/></g><use xlink:href="#b" x="19.842" y="22.878"/><use xlink:href="#c" x="22.24" y="22.878"/><use xlink:href="#d" x="24.638" y="22.878"/><use xlink:href="#e" x="27.036" y="22.878"/><use xlink:href="#f" x="29.438" y="22.878"/><use xlink:href="#g" x="36.338" y="22.878"/><use xlink:href="#h" x="38.736" y="22.878"/><use xlink:href="#i" x="41.138" y="22.878"/><use xlink:href="#j" x="43.536" y="22.878"/><use xlink:href="#f" x="45.934" y="22.878"/><use xlink:href="#k" x="52.834" y="22.878"/><use xlink:href="#c" x="55.236" y="22.878"/><use xlink:href="#l" x="57.634" y="22.878"/><use xlink:href="#c" x="60.032" y="22.878"/><use xlink:href="#d" x="62.43" y="22.878"/><use xlink:href="#i" x="69.335" y="22.878"/><use xlink:href="#g" x="71.733" y="22.878"/><use xlink:href="#m" x="74.131" y="22.878"/><use xlink:href="#n" x="19.842" y="27.66"/><use xlink:href="#f" x="22.24" y="27.66"/><use xlink:href="#e" x="24.638" y="27.66"/><use xlink:href="#m" x="27.036" y="27.66"/><use xlink:href="#o" x="29.438" y="27.66"/><use xlink:href="#p" x="34.409" y="27.66"/><use xlink:href="#c" x="36.807" y="27.66"/><use xlink:href="#q" x="39.205" y="27.66"/><use xlink:href="#i" x="41.607" y="27.66"/><use xlink:href="#e" x="44.005" y="27.66"/><use xlink:href="#p" x="46.403" y="27.66"/><use xlink:href="#m" x="48.801" y="27.66"/><use xlink:href="#e" x="51.203" y="27.66"/><use xlink:href="#m" x="53.601" y="27.66"/><use xlink:href="#j" x="55.999" y="27.66"/><use xlink:href="#e" x="58.397" y="27.66"/><use xlink:href="#d" x="60.799" y="27.66"/><use xlink:href="#n" x="65.734" y="27.66"/><use xlink:href="#k" x="68.132" y="27.66"/><use xlink:href="#g" x="70.534" y="27.66"/><use xlink:href="#h" x="72.932" y="27.66"/><use xlink:href="#r" x="75.33" y="27.66"/><use xlink:href="#g" x="19.842" y="32.442"/><use xlink:href="#i" x="22.24" y="32.442"/><use xlink:href="#p" x="24.638" y="32.442"/><use xlink:href="#g" x="27.036" y="32.442"/><use xlink:href="#q" x="29.438" y="32.442"/><use xlink:href="#s" x="31.836" y="32.442"/><use xlink:href="#e" x="38.935" y="32.442"/><use xlink:href="#l" x="41.333" y="32.442"/><use xlink:href="#g" x="43.735" y="32.442"/><use xlink:href="#m" x="46.133" y="32.442"/><use xlink:href="#t" x="48.531" y="32.442"/><use xlink:href="#u" x="61.033" y="32.442"/><use xlink:href="#m" x="63.435" y="32.442"/><use xlink:href="#h" x="70.534" y="32.442"/><use xlink:href="#j" x="72.932" y="32.442"/><use xlink:href="#r" x="75.33" y="32.442"/><use xlink:href="#d" x="19.842" y="37.224"/><use xlink:href="#j" x="22.24" y="37.224"/><use xlink:href="#i" x="24.638" y="37.224"/><use xlink:href="#e" x="29.533" y="37.224"/><use xlink:href="#l" x="31.931" y="37.224"/><use xlink:href="#g" x="34.329" y="37.224"/><use xlink:href="#m" x="36.731" y="37.224"/><use xlink:href="#o" x="39.129" y="37.224"/><use xlink:href="#v" x="44.048" y="37.224"/><use xlink:href="#e" x="46.446" y="37.224"/><use xlink:href="#i" x="48.844" y="37.224"/><use xlink:href="#m" x="51.242" y="37.224"/><use xlink:href="#g" x="53.644" y="37.224"/><use xlink:href="#w" x="56.042" y="37.224"/><use xlink:href="#j" x="58.44" y="37.224"/><use xlink:href="#l" x="60.838" y="37.224"/><use xlink:href="#j" x="63.24" y="37.224"/><use xlink:href="#f" x="65.638" y="37.224"/><use xlink:href="#j" x="70.534" y="37.224"/><use xlink:href="#m" x="72.932" y="37.224"/><use xlink:href="#o" x="75.33" y="37.224"/><use xlink:href="#h" x="19.842" y="42.006"/><use xlink:href="#l" x="22.24" y="42.006"/><use xlink:href="#n" x="24.638" y="42.006"/><use xlink:href="#p" x="27.036" y="42.006"/><use xlink:href="#e" x="29.438" y="42.006"/><use xlink:href="#d" x="31.836" y="42.006"/><use xlink:href="#n" x="34.234" y="42.006"/><use xlink:href="#m" x="36.632" y="42.006"/><use xlink:href="#n" x="42.103" y="42.006"/><use xlink:href="#p" x="44.501" y="42.006"/><use xlink:href="#o" x="46.903" y="42.006"/><use xlink:href="#n" x="52.541" y="42.006"/><use xlink:href="#k" x="54.939" y="42.006"/><use xlink:href="#g" x="57.337" y="42.006"/><use xlink:href="#h" x="59.739" y="42.006"/><use xlink:href="#g" x="62.137" y="42.006"/><use xlink:href="#i" x="64.535" y="42.006"/><use xlink:href="#p" x="66.933" y="42.006"/><use xlink:href="#g" x="69.335" y="42.006"/><use xlink:href="#q" x="71.733" y="42.006"/><use xlink:href="#s" x="74.131" y="42.006"/><use xlink:href="#v" x="19.723" y="46.788"/><use xlink:href="#g" x="22.121" y="46.788"/><use xlink:href="#m" x="24.519" y="46.788"/><use xlink:href="#n" x="26.917" y="46.788"/><use xlink:href="#e" x="29.319" y="46.788"/><use xlink:href="#o" x="31.717" y="46.788"/><use xlink:href="#x" x="36.795" y="46.788"/><use xlink:href="#e" x="39.193" y="46.788"/><use xlink:href="#l" x="41.591" y="46.788"/><use xlink:href="#g" x="43.993" y="46.788"/><use xlink:href="#i" x="46.391" y="46.788"/><use xlink:href="#t" x="48.789" y="46.788"/><use xlink:href="#y" x="55.058" y="46.788"/><use xlink:href="#j" x="57.456" y="46.788"/><use xlink:href="#d" x="59.858" y="46.788"/><use xlink:href="#n" x="62.256" y="46.788"/><use xlink:href="#w" x="64.654" y="46.788"/><use xlink:href="#g" x="67.052" y="46.788"/><use xlink:href="#m" x="69.454" y="46.788"/><use xlink:href="#j" x="71.852" y="46.788"/><use xlink:href="#d" x="74.25" y="46.788"/><use xlink:href="#k" x="19.842" y="51.57"/><use xlink:href="#g" x="22.24" y="51.57"/><use xlink:href="#p" x="24.638" y="51.57"/><use xlink:href="#m" x="27.036" y="51.57"/><use xlink:href="#j" x="29.438" y="51.57"/><use xlink:href="#f" x="31.836" y="51.57"/><use xlink:href="#s" x="39.427" y="51.57"/><use xlink:href="#d" x="41.829" y="51.57"/><use xlink:href="#n" x="44.227" y="51.57"/><use xlink:href="#v" x="46.625" y="51.57"/><use xlink:href="#g" x="49.023" y="51.57"/><use xlink:href="#k" x="51.425" y="51.57"/><use xlink:href="#n" x="53.823" y="51.57"/><use xlink:href="#f" x="61.414" y="51.57"/><use xlink:href="#n" x="63.812" y="51.57"/><use xlink:href="#j" x="66.214" y="51.57"/><use xlink:href="#d" x="68.612" y="51.57"/><use xlink:href="#g" x="71.01" y="51.57"/><use xlink:href="#i" x="73.408" y="51.57"/><use xlink:href="#t" x="75.81" y="51.57"/><use xlink:href="#z" x="19.842" y="56.352"/><use xlink:href="#n" x="22.24" y="56.352"/><use xlink:href="#f" x="24.638" y="56.352"/><use xlink:href="#n" x="31.749" y="56.352"/><use xlink:href="#d" x="34.147" y="56.352"/><use xlink:href="#p" x="36.545" y="56.352"/><use xlink:href="#j" x="38.943" y="56.352"/><use xlink:href="#l" x="46.053" y="56.352"/><use xlink:href="#g" x="48.451" y="56.352"/><use xlink:href="#w" x="50.853" y="56.352"/><use xlink:href="#e" x="53.251" y="56.352"/><use xlink:href="#d" x="55.649" y="56.352"/><use xlink:href="#c" x="58.047" y="56.352"/><use xlink:href="#o" x="60.449" y="56.352"/><use xlink:href="#q" x="68.136" y="56.352"/><use xlink:href="#c" x="70.534" y="56.352"/><use xlink:href="#q" x="72.932" y="56.352"/><use xlink:href="#r" x="75.33" y="56.352"/><use xlink:href="#j" x="19.842" y="61.134"/><use xlink:href="#f" x="22.24" y="61.134"/><use xlink:href="#f" x="24.638" y="61.134"/><use xlink:href="#A" x="27.036" y="61.134"/><use xlink:href="#e" x="32.563" y="61.134"/><use xlink:href="#s" x="34.961" y="61.134"/><use xlink:href="#e" x="37.359" y="61.134"/><use xlink:href="#m" x="39.757" y="61.134"/><use xlink:href="#o" x="42.158" y="61.134"/><use xlink:href="#p" x="47.86" y="61.134"/><use xlink:href="#c" x="50.262" y="61.134"/><use xlink:href="#q" x="52.66" y="61.134"/><use xlink:href="#i" x="55.058" y="61.134"/><use xlink:href="#e" x="57.456" y="61.134"/><use xlink:href="#p" x="59.858" y="61.134"/><use xlink:href="#m" x="62.256" y="61.134"/><use xlink:href="#e" x="64.654" y="61.134"/><use xlink:href="#m" x="67.052" y="61.134"/><use xlink:href="#j" x="69.454" y="61.134"/><use xlink:href="#e" x="71.852" y="61.134"/><use xlink:href="#d" x="74.25" y="61.134"/><use xlink:href="#g" x="19.842" y="65.916"/><use xlink:href="#k" x="22.24" y="65.916"/><use xlink:href="#o" x="24.638" y="65.916"/><use xlink:href="#v" x="30.577" y="65.916"/><use xlink:href="#j" x="32.975" y="65.916"/><use xlink:href="#l" x="35.373" y="65.916"/><use xlink:href="#h" x="37.771" y="65.916"/><use xlink:href="#j" x="40.173" y="65.916"/><use xlink:href="#m" x="42.571" y="65.916"/><use xlink:href="#n" x="44.969" y="65.916"/><use xlink:href="#m" x="47.367" y="65.916"/><use xlink:href="#e" x="49.769" y="65.916"/><use xlink:href="#n" x="55.479" y="65.916"/><use xlink:href="#o" x="57.877" y="65.916"/><use xlink:href="#f" x="63.812" y="65.916"/><use xlink:href="#n" x="66.214" y="65.916"/><use xlink:href="#s" x="68.612" y="65.916"/><use xlink:href="#q" x="71.01" y="65.916"/><use xlink:href="#n" x="73.408" y="65.916"/><use xlink:href="#t" x="75.81" y="65.916"/><use xlink:href="#B" x="19.842" y="70.698"/><use xlink:href="#c" x="22.24" y="70.698"/><use xlink:href="#q" x="24.638" y="70.698"/><use xlink:href="#e" x="27.036" y="70.698"/><use xlink:href="#p" x="29.438" y="70.698"/><use xlink:href="#v" x="38.589" y="70.698"/><use xlink:href="#e" x="40.987" y="70.698"/><use xlink:href="#C" x="43.389" y="70.698"/><use xlink:href="#g" x="45.787" y="70.698"/><use xlink:href="#p" x="48.185" y="70.698"/><use xlink:href="#j" x="50.583" y="70.698"/><use xlink:href="#l" x="52.985" y="70.698"/><use xlink:href="#n" x="55.383" y="70.698"/><use xlink:href="#n" x="64.535" y="70.698"/><use xlink:href="#j" x="66.933" y="70.698"/><use xlink:href="#s" x="69.335" y="70.698"/><use xlink:href="#j" x="71.733" y="70.698"/><use xlink:href="#e" x="74.131" y="70.698"/><use xlink:href="#e" x="19.842" y="75.48"/><use xlink:href="#j" x="22.24" y="75.48"/><use xlink:href="#q" x="31.113" y="75.48"/><use xlink:href="#e" x="33.515" y="75.48"/><use xlink:href="#D" x="35.913" y="75.48"/><use xlink:href="#j" x="38.311" y="75.48"/><use xlink:href="#e" x="40.709" y="75.48"/><use xlink:href="#t" x="43.111" y="75.48"/><use xlink:href="#E" x="60.94" y="75.481"/><use xlink:href="#e" x="63.338" y="75.481"/><use xlink:href="#l" x="65.736" y="75.481"/><use xlink:href="#l" x="68.134" y="75.481"/><use xlink:href="#e" x="70.536" y="75.481"/><use xlink:href="#q" x="72.934" y="75.481"/><use xlink:href="#r" x="75.332" y="75.481"/><use xlink:href="#m" x="19.842" y="80.263"/><use xlink:href="#e" x="22.24" y="80.263"/><use xlink:href="#i" x="24.638" y="80.263"/><use xlink:href="#D" x="27.036" y="80.263"/><use xlink:href="#j" x="29.438" y="80.263"/><use xlink:href="#e" x="31.836" y="80.263"/><use xlink:href="#C" x="39.788" y="80.263"/><use xlink:href="#n" x="42.186" y="80.263"/><use xlink:href="#w" x="44.588" y="80.263"/><use xlink:href="#g" x="46.986" y="80.263"/><use xlink:href="#m" x="49.384" y="80.263"/><use xlink:href="#n" x="51.782" y="80.263"/><use xlink:href="#q" x="54.184" y="80.263"/><use xlink:href="#m" x="56.582" y="80.263"/><use xlink:href="#f" x="64.535" y="80.263"/><use xlink:href="#c" x="66.933" y="80.263"/><use xlink:href="#d" x="69.335" y="80.263"/><use xlink:href="#w" x="71.733" y="80.263"/><use xlink:href="#g" x="74.131" y="80.263"/><use xlink:href="#m" x="19.842" y="85.045"/><use xlink:href="#d" x="22.24" y="85.045"/><use xlink:href="#g" x="24.638" y="85.045"/><use xlink:href="#i" x="27.036" y="85.045"/><use xlink:href="#m" x="29.438" y="85.045"/><use xlink:href="#g" x="31.836" y="85.045"/><use xlink:href="#D" x="34.234" y="85.045"/><use xlink:href="#j" x="36.632" y="85.045"/><use xlink:href="#e" x="39.034" y="85.045"/><use xlink:href="#i" x="43.135" y="85.045"/><use xlink:href="#e" x="45.533" y="85.045"/><use xlink:href="#q" x="47.935" y="85.045"/><use xlink:href="#e" x="50.333" y="85.045"/><use xlink:href="#p" x="52.731" y="85.045"/><use xlink:href="#m" x="55.129" y="85.045"/><use xlink:href="#j" x="57.531" y="85.045"/><use xlink:href="#i" x="59.929" y="85.045"/><use xlink:href="#e" x="64.03" y="85.045"/><use xlink:href="#m" x="66.428" y="85.045"/><use xlink:href="#q" x="70.534" y="85.045"/><use xlink:href="#e" x="72.932" y="85.045"/><use xlink:href="#r" x="75.33" y="85.045"/><use xlink:href="#m" x="19.842" y="89.827"/><use xlink:href="#j" x="22.24" y="89.827"/><use xlink:href="#i" x="24.638" y="89.827"/><use xlink:href="#e" x="30.74" y="89.827"/><use xlink:href="#m" x="33.138" y="89.827"/><use xlink:href="#f" x="39.24" y="89.827"/><use xlink:href="#n" x="41.638" y="89.827"/><use xlink:href="#l" x="44.04" y="89.827"/><use xlink:href="#e" x="46.438" y="89.827"/><use xlink:href="#i" x="48.836" y="89.827"/><use xlink:href="#j" x="51.234" y="89.827"/><use xlink:href="#n" x="53.636" y="89.827"/><use xlink:href="#k" x="56.034" y="89.827"/><use xlink:href="#n" x="58.432" y="89.827"/><use xlink:href="#x" x="64.535" y="89.827"/><use xlink:href="#n" x="66.933" y="89.827"/><use xlink:href="#f" x="69.335" y="89.827"/><use xlink:href="#e" x="71.733" y="89.827"/><use xlink:href="#i" x="74.131" y="89.827"/><use xlink:href="#n" x="19.842" y="94.609"/><use xlink:href="#p" x="22.24" y="94.609"/><use xlink:href="#m" x="27.421" y="94.609"/><use xlink:href="#j" x="29.819" y="94.609"/><use xlink:href="#d" x="32.217" y="94.609"/><use xlink:href="#h" x="34.615" y="94.609"/><use xlink:href="#g" x="37.017" y="94.609"/><use xlink:href="#i" x="39.415" y="94.609"/><use xlink:href="#e" x="44.596" y="94.609"/><use xlink:href="#s" x="46.994" y="94.609"/><use xlink:href="#e" x="49.392" y="94.609"/><use xlink:href="#i" x="51.794" y="94.609"/><use xlink:href="#m" x="54.192" y="94.609"/><use xlink:href="#n" x="56.59" y="94.609"/><use xlink:href="#i" x="58.988" y="94.609"/><use xlink:href="#t" x="61.39" y="94.609"/><use xlink:href="#F" x="68.132" y="94.609"/><use xlink:href="#n" x="70.534" y="94.609"/><use xlink:href="#j" x="72.932" y="94.609"/><use xlink:href="#r" x="75.33" y="94.609"/><use xlink:href="#d" x="19.842" y="99.391"/><use xlink:href="#g" x="22.24" y="99.391"/><use xlink:href="#i" x="24.638" y="99.391"/><use xlink:href="#j" x="28.93" y="99.391"/><use xlink:href="#m" x="31.328" y="99.391"/><use xlink:href="#l" x="35.62" y="99.391"/><use xlink:href="#e" x="38.022" y="99.391"/><use xlink:href="#c" x="40.42" y="99.391"/><use xlink:href="#t" x="42.818" y="99.391"/><use xlink:href="#y" x="48.249" y="99.391"/><use xlink:href="#d" x="50.647" y="99.391"/><use xlink:href="#n" x="53.045" y="99.391"/><use xlink:href="#i" x="55.447" y="99.391"/><use xlink:href="#v" x="59.739" y="99.391"/><use xlink:href="#g" x="62.137" y="99.391"/><use xlink:href="#v" x="64.535" y="99.391"/><use xlink:href="#e" x="66.933" y="99.391"/><use xlink:href="#d" x="69.335" y="99.391"/><use xlink:href="#d" x="71.733" y="99.391"/><use xlink:href="#n" x="74.131" y="99.391"/><use xlink:href="#f" x="19.842" y="104.173"/><use xlink:href="#e" x="22.24" y="104.173"/><use xlink:href="#m" x="24.638" y="104.173"/><use xlink:href="#j" x="27.036" y="104.173"/><use xlink:href="#i" x="29.438" y="104.173"/><use xlink:href="#d" x="33.511" y="104.173"/><use xlink:href="#C" x="35.909" y="104.173"/><use xlink:href="#c" x="38.311" y="104.173"/><use xlink:href="#q" x="40.709" y="104.173"/><use xlink:href="#p" x="43.107" y="104.173"/><use xlink:href="#j" x="45.505" y="104.173"/><use xlink:href="#i" x="47.907" y="104.173"/><use xlink:href="#i" x="51.981" y="104.173"/><use xlink:href="#e" x="54.379" y="104.173"/><use xlink:href="#f" x="56.781" y="104.173"/><use xlink:href="#t" x="59.179" y="104.173"/><use xlink:href="#z" x="64.535" y="104.173"/><use xlink:href="#j" x="66.933" y="104.173"/><use xlink:href="#l" x="69.335" y="104.173"/><use xlink:href="#l" x="71.733" y="104.173"/><use xlink:href="#n" x="74.131" y="104.173"/><use xlink:href="#e" x="90.709" y="22.877"/><use xlink:href="#m" x="93.107" y="22.877"/><use xlink:href="#l" x="102.258" y="22.877"/><use xlink:href="#e" x="104.656" y="22.877"/><use xlink:href="#p" x="107.058" y="22.877"/><use xlink:href="#m" x="109.456" y="22.877"/><use xlink:href="#j" x="111.854" y="22.877"/><use xlink:href="#i" x="114.252" y="22.877"/><use xlink:href="#v" x="123.408" y="22.877"/><use xlink:href="#e" x="125.806" y="22.877"/><use xlink:href="#i" x="128.204" y="22.877"/><use xlink:href="#m" x="130.602" y="22.877"/><use xlink:href="#g" x="133.004" y="22.877"/><use xlink:href="#w" x="135.402" y="22.877"/><use xlink:href="#j" x="137.8" y="22.877"/><use xlink:href="#l" x="140.198" y="22.877"/><use xlink:href="#j" x="142.6" y="22.877"/><use xlink:href="#f" x="144.998" y="22.877"/><use xlink:href="#j" x="90.709" y="27.659"/><use xlink:href="#d" x="93.107" y="27.659"/><use xlink:href="#q" x="95.505" y="27.659"/><use xlink:href="#n" x="97.903" y="27.659"/><use xlink:href="#x" x="103.096" y="27.659"/><use xlink:href="#d" x="105.494" y="27.659"/><use xlink:href="#g" x="107.896" y="27.659"/><use xlink:href="#q" x="110.294" y="27.659"/><use xlink:href="#s" x="112.692" y="27.659"/><use xlink:href="#g" x="115.094" y="27.659"/><use xlink:href="#l" x="117.492" y="27.659"/><use xlink:href="#l" x="119.89" y="27.659"/><use xlink:href="#n" x="122.288" y="27.659"/><use xlink:href="#j" x="127.481" y="27.659"/><use xlink:href="#l" x="129.883" y="27.659"/><use xlink:href="#m" x="132.281" y="27.659"/><use xlink:href="#d" x="134.679" y="27.659"/><use xlink:href="#g" x="137.077" y="27.659"/><use xlink:href="#p" x="139.479" y="27.659"/><use xlink:href="#e" x="141.877" y="27.659"/><use xlink:href="#i" x="144.275" y="27.659"/><use xlink:href="#t" x="146.673" y="27.659"/><use xlink:href="#E" x="90.709" y="32.441"/><use xlink:href="#C" x="93.107" y="32.441"/><use xlink:href="#n" x="95.505" y="32.441"/><use xlink:href="#i" x="97.903" y="32.441"/><use xlink:href="#e" x="100.301" y="32.441"/><use xlink:href="#l" x="102.703" y="32.441"/><use xlink:href="#l" x="105.101" y="32.441"/><use xlink:href="#j" x="107.499" y="32.441"/><use xlink:href="#i" x="109.897" y="32.441"/><use xlink:href="#e" x="115.201" y="32.441"/><use xlink:href="#j" x="117.599" y="32.441"/><use xlink:href="#m" x="122.903" y="32.441"/><use xlink:href="#e" x="125.301" y="32.441"/><use xlink:href="#l" x="127.699" y="32.441"/><use xlink:href="#l" x="130.097" y="32.441"/><use xlink:href="#j" x="132.499" y="32.441"/><use xlink:href="#i" x="134.897" y="32.441"/><use xlink:href="#i" x="140.198" y="32.441"/><use xlink:href="#g" x="142.6" y="32.441"/><use xlink:href="#m" x="144.998" y="32.441"/><use xlink:href="#n" x="90.709" y="37.223"/><use xlink:href="#f" x="93.107" y="37.223"/><use xlink:href="#e" x="95.505" y="37.223"/><use xlink:href="#m" x="97.903" y="37.223"/><use xlink:href="#m" x="102.004" y="37.223"/><use xlink:href="#c" x="104.406" y="37.223"/><use xlink:href="#d" x="106.804" y="37.223"/><use xlink:href="#m" x="109.202" y="37.223"/><use xlink:href="#c" x="111.604" y="37.223"/><use xlink:href="#d" x="114.002" y="37.223"/><use xlink:href="#s" x="118.103" y="37.223"/><use xlink:href="#d" x="120.501" y="37.223"/><use xlink:href="#n" x="122.903" y="37.223"/><use xlink:href="#v" x="125.301" y="37.223"/><use xlink:href="#g" x="127.699" y="37.223"/><use xlink:href="#k" x="130.097" y="37.223"/><use xlink:href="#n" x="132.499" y="37.223"/><use xlink:href="#h" x="136.601" y="37.223"/><use xlink:href="#l" x="138.999" y="37.223"/><use xlink:href="#n" x="141.397" y="37.223"/><use xlink:href="#p" x="143.799" y="37.223"/><use xlink:href="#r" x="146.197" y="37.223"/><use xlink:href="#e" x="90.709" y="42.005"/><use xlink:href="#d" x="93.107" y="42.005"/><use xlink:href="#n" x="95.505" y="42.005"/><use xlink:href="#m" x="97.903" y="42.005"/><use xlink:href="#t" x="100.301" y="42.005"/><path fill="none" stroke="#00E500" stroke-miterlimit="10" stroke-opacity=".2" stroke-width="14.173" d="M83.625 19.836v85.043"/><path fill="none" stroke="#00E500" stroke-miterlimit="10" stroke-opacity=".8" stroke-width=".567" d="M19.844 19.836v85.043h127.558V19.836Zm0 0"/><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M-2.836 119.05h5.672"/><g clip-path="url(#G)"><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M5.668 127.555v-5.668"/></g><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M-2.836 5.664h5.672M5.668-2.84v5.668"/><g clip-path="url(#H)"><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M170.082 119.05h-5.672"/></g><g clip-path="url(#I)"><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M161.578 127.555v-5.668"/></g><g clip-path="url(#J)"><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M170.082 5.664h-5.672"/></g><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M161.578-2.84v5.668"/></svg>
\ No newline at end of file diff --git a/macros/latex/contrib/pagelayout/doc/quickstart-2.svg b/macros/latex/contrib/pagelayout/doc/quickstart-2.svg index 6f865a348a..68823636c4 100644 --- a/macros/latex/contrib/pagelayout/doc/quickstart-2.svg +++ b/macros/latex/contrib/pagelayout/doc/quickstart-2.svg @@ -1 +1 @@ -<svg width="320" height="239" viewBox="0 0 240 179.25" version="1.2" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg"><defs><symbol overflow="visible" id="a"><path style="stroke:none" d="M2.078-2.875h3.64v-10.688l-3.39.844v-2.937l3.406-.813h3.141v13.594h3.64V0H2.079zm0 0"/></symbol></defs><path style="fill:#fff;stroke-width:1.43381" d="M4.065.004h231.869a4.056 4.056 0 0 1 4.065 4.065v170.906a4.056 4.056 0 0 1-4.065 4.064H4.064A4.056 4.056 0 0 1 0 174.975V4.07A4.056 4.056 0 0 1 4.065.004Z"/><path style="fill:#a6a6a6;fill-opacity:.2;stroke-width:1.43381" d="M0 179.037v-.203h239.999v.203zm0-4.06v-.204h239.999v.204zm0-4.066v-.204h239.999v.204zm0-4.068v-.2h239.999v.2zm0-4.058v-.205h239.999v.204zm0-4.066v-.205h239.999v.205zm0-4.066v-.205h239.999v.205zm0-4.061v-.205h239.999v.205zm0-4.066v-.205h239.999v.205zm0-4.067v-.205h239.999v.205zm0-4.06v-.205h239.999v.205zm0-4.066v-.205h239.999v.205zm0-4.067v-.205h239.999v.205zm0-4.06V126h239.999v.205zm0-4.067v-.205h239.999v.205zm0-4.069v-.2h239.999v.2zm0-4.06v-.201h239.999v.2zm0-4.067v-.2h239.999v.2zm0-4.066v-.2h239.999v.2zm0-4.058v-.205h239.999v.205zm0-4.069v-.2h239.999v.2zm0-4.066v-.2h239.999v.2zm0-4.066v-.201h239.999v.2zm0-4.058v-.204h239.999v.204zm0-4.07v-.2h239.999v.2zm0-4.063v-.2h239.999v.2zm0-4.06v-.204h239.999v.204ZM0 69.3v-.204h239.999v.204zm0-4.067v-.203h239.999v.203zm0-4.06v-.204h239.999v.204zm0-4.067v-.203h239.999v.203zm0-4.066v-.204h239.999v.204zm0-4.06v-.204h239.999v.204zm0-4.067v-.203h239.999v.203zm0-4.066v-.204h239.999v.204zm0-4.06v-.204h239.999v.203zm0-4.066v-.205h239.999v.205zm0-4.066v-.205h239.999v.205zm0-4.06v-.205h239.999v.205zm0-4.067v-.205h239.999v.205zm0-4.066v-.205h239.999v.205zm0-4.06v-.206h239.999v.205zm0-4.067V8.13h239.999v.205zM0 4.27v-.205h239.999v.205zM0 .21V.003h239.999V.21z"/><path style="fill:#a6a6a6;fill-opacity:.2;stroke-width:1.43381" d="M0 179.035V0h.2v179.033zm4.065 0V0h.2v179.033zm4.06 0V0h.2v179.033zm4.065 0V0h.202v179.033zm4.066 0V0h.202v179.033zm4.06 0V0h.203v179.033zm4.067 0V0h.202v179.033zm4.066 0V0h.203v179.033zm4.061 0V0h.202v179.033zm4.066 0V0h.201v179.033zm4.067 0V0h.205v179.033zm4.06 0V0h.2v179.033zm4.066 0V0h.205v179.033zm4.067 0V0h.205v179.033zm4.06 0V0h.205v179.033zm4.067 0V0h.205v179.033zm4.066 0V0h.2v179.033zm4.06 0V0h.208v179.033h-.2Zm4.067 0V0h.2v179.033zm4.066 0V0h.2v179.033zm4.06 0V0h.201v179.033zm4.067 0V0h.2v179.033zm4.066 0V0h.2v179.033zm4.066 0V0h.201v179.033zm4.061 0V0h.2v179.033zm4.066 0V0h.201v179.033zm4.067 0V0h.2v179.033zm4.06 0V0h.204v179.033zm4.066 0V0h.201v179.033zm4.067 0V0h.2v179.033zm4.06 0V0h.201v179.033zm4.067 0V0h.203v179.033zm4.066 0V0h.2v179.033zm4.06 0V0h.201v179.033zm4.067 0V0h.2v179.033zm4.065 0V0h.202v179.033zm4.057 0V0h.205v179.033zm4.07 0V0h.202v179.033zm4.066 0V0h.202v179.033zm4.06 0V0h.203v179.033zm4.064 0V0h.205v179.033zm4.069 0V0h.205v179.033zm4.06 0V0h.201v179.033zm4.067 0V0h.205v179.033zm4.063 0V0h.205v179.033zm4.064 0V0h.205v179.033zm4.066 0V0h.205v179.033zm4.066 0V0h.201v179.033zm4.06 0V0h.202v179.033zm4.067 0V0h.205v179.033zm4.066 0V0h.201v179.033zm4.061 0V0h.2v179.033zm4.066 0V0h.201v179.033zm4.067 0V0h.2v179.033zm4.06 0V0h.2v179.033zm4.066 0V0h.201v179.033zm4.067 0V0h.2v179.033zm4.06 0V0h.208v179.033h-.2zm4.067 0V0h.2v179.033zm4.066 0V0h.2v179.033z"/><path style="fill:#000;stroke-width:1.43381" d="M7.94.004v4.163h.57V.004zm223.546 0v4.163h.572V.004ZM0 7.946v.57h4.164v-.568H0Zm235.833 0v.57H240v-.568h-4.167zM0 170.525v.57h4.164v-.572H0Zm235.833 0v.57H240v-.572h-4.168zm-227.896 4.35v4.164h.571v-4.164zm223.546 0v4.164h.572v-4.164h-.57z"/><path style="fill:#a6a6a6;fill-opacity:.2;stroke-width:1.43381" d="M0 170.91v-.203h239.999v.204zm0-20.318v-.205h239.999v.205zm0-20.326v-.205h239.999v.205zm0-20.323v-.2h239.999v.2zm0-20.325v-.201h239.999v.2zM0 69.3v-.204h239.999v.204zm0-20.32v-.204h239.999v.204zm0-20.325v-.205h239.999v.205zm0-20.32V8.13h239.999v.205z"/><path style="fill:#a6a6a6;fill-opacity:.2;stroke-width:1.43381" d="M8.125 179.035V0h.2v179.033zm20.324 0V0h.203v179.033zm20.32 0V0h.205v179.033zm20.32 0V0h.208v179.033h-.2Zm20.326 0V0h.2v179.033zm20.32 0V0h.204v179.033zm20.326 0V0h.2v179.033zm20.318 0V0h.203v179.033zm20.32 0V0h.201v179.033zm20.326 0V0h.201v179.033zm20.32 0V0h.201v179.033zm20.32 0V0h.208v179.033h-.2z"/><path style="fill:#b3e6fa;fill-opacity:.3;fill-rule:nonzero;stroke:#66ccf5;stroke-width:.28346;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:.3" d="M.002 0v45.355h68.031V0Zm0 0" transform="matrix(1.43382 0 0 -1.43382 28.552 122.026)"/><use xlink:href="#a" x="47.032" y="70.624" width="100%" height="100%" style="fill:#66ccf5;fill-opacity:.3" transform="translate(.102 .102) scale(1.43382)"/><path style="fill:none;stroke:#00e300;stroke-width:14.1734;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:.2" d="M94.96 85.04V39.685" transform="matrix(1.43382 0 0 -1.43382 .102 178.927)"/><path style="fill:none;stroke:#00e300;stroke-width:.56693;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-opacity:.8" d="M19.844 85.04V39.685h127.558V85.04zm0 0" transform="matrix(1.43382 0 0 -1.43382 .102 178.927)"/><path style="fill:none;stroke:#00e300;stroke-width:.56693;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;stroke-dasharray:2.83466,2.83466;stroke-opacity:.8" d="M19.844 85.04v19.844h127.558V85.04M19.844 39.685V19.84h127.558v19.844" transform="matrix(1.43382 0 0 -1.43382 .102 178.927)"/></svg>
\ No newline at end of file +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="320" height="239" viewBox="0 0 167.24 124.72"><defs><clipPath id="a"><path d="M0 0h167.238v124.719H0Zm0 0"/></clipPath><clipPath id="d"><path d="M5 121h1v3.719H5Zm0 0"/></clipPath><clipPath id="e"><path d="M164 118h3.238v2H164Zm0 0"/></clipPath><clipPath id="f"><path d="M161 121h1v3.719h-1Zm0 0"/></clipPath><clipPath id="g"><path d="M164 5h3.238v1H164Zm0 0"/></clipPath><path id="b" d="M2.078-2.875h3.64v-10.687l-3.39.843v-2.937l3.406-.813h3.141v13.594h3.64V0H2.079Zm0 0"/><path id="c" d="M4.781-2.875h6.953V0H1.266v-2.781L3.03-4.656q3.14-3.341 3.813-4.11.825-.949 1.187-1.687.375-.733.375-1.453-.002-1.09-.672-1.688c-.437-.406-1.07-.61-1.89-.61-.586 0-1.242.118-1.969.345q-1.078.344-2.25 1v-3.032a16 16 0 0 1 2.297-.64 10.8 10.8 0 0 1 2.172-.235c1.75 0 3.117.407 4.11 1.22q1.5 1.218 1.5 3.327a5.1 5.1 0 0 1-.329 1.828q-.33.845-1.11 1.875-.595.75-3.218 3.375zm0 0"/></defs><g clip-path="url(#a)"><path fill="#FFF" d="M0 121.887V2.828A2.836 2.836 0 0 1 2.836-.008H164.41a2.836 2.836 0 0 1 2.836 2.836v119.059a2.835 2.835 0 0 1-2.836 2.832H2.836A2.835 2.835 0 0 1 0 121.887m0 0"/><path fill="none" stroke="#A6A6A6" stroke-linecap="square" stroke-miterlimit="10" stroke-opacity=".2" stroke-width=".142" d="M-8.504 133.223h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75M-8.504 82.2h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.835h175.75M-8.504 51.02h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75M-8.504 39.68h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75M-8.504 28.34h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75M-8.504 8.5h175.75M-8.504 5.664h175.75M-8.504 2.828h175.75M-8.504-.004h175.75M-8.504 133.223V-.007m2.836 133.23V-.007m2.832 133.23V-.007M0 133.222V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.835 133.23V-.007m2.833 133.23V-.007m2.835 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.835 133.23V-.007m2.833 133.23V-.007m2.835 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007M-8.504 133.223h175.75M-8.504 119.05h175.75m-175.75-14.172h175.75M-8.504 90.703h175.75M-8.504 76.531h175.75M-8.504 62.355h175.75M-8.504 48.184h175.75M-8.504 34.012h175.75M-8.504 19.836h175.75M-8.504 5.664h175.75M-8.504 133.223V-.007m14.172 133.23V-.007m14.176 133.23V-.007m14.172 133.23V-.007m14.175 133.23V-.007m14.172 133.23V-.007m14.172 133.23V-.007m14.176 133.23V-.007m14.172 133.23V-.007m14.172 133.23V-.007m14.175 133.23V-.007m14.172 133.23V-.007m14.176 133.23V-.007"/></g><path fill="#B3E6FA" fill-opacity=".3" stroke="#66CEF5" stroke-miterlimit="10" stroke-opacity=".3" stroke-width=".283" d="M19.844 85.035V39.68h68.031v45.355Zm0 0"/><use xlink:href="#b" x="47.032" y="70.624" fill="#66CEF5" fill-opacity=".3"/><path fill="#B3E6FA" fill-opacity=".3" stroke="#66CEF5" stroke-miterlimit="10" stroke-opacity=".3" stroke-width=".283" d="M102.047 85.035V39.68h45.355v45.355Zm0 0"/><use xlink:href="#c" x="117.898" y="70.773" fill="#66CEF5" fill-opacity=".3"/><path fill="none" stroke="#00E500" stroke-miterlimit="10" stroke-opacity=".2" stroke-width="14.173" d="M94.96 39.68v45.355"/><path fill="none" stroke="#00E500" stroke-miterlimit="10" stroke-opacity=".8" stroke-width=".567" d="M19.844 39.68v45.355h127.558V39.68Zm0 0"/><path fill="none" stroke="#00E500" stroke-dasharray="2.83466 2.83466" stroke-miterlimit="10" stroke-opacity=".8" stroke-width=".567" d="M19.844 39.68V19.836h127.558V39.68M19.844 85.035v19.844h127.558V85.035"/><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M-2.836 119.05h5.672"/><g clip-path="url(#d)"><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M5.668 127.555v-5.668"/></g><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M-2.836 5.664h5.672M5.668-2.84v5.668"/><g clip-path="url(#e)"><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M170.082 119.05h-5.672"/></g><g clip-path="url(#f)"><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M161.578 127.555v-5.668"/></g><g clip-path="url(#g)"><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M170.082 5.664h-5.672"/></g><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M161.578-2.84v5.668"/></svg>
\ No newline at end of file diff --git a/macros/latex/contrib/pagelayout/doc/quickstart-3.svg b/macros/latex/contrib/pagelayout/doc/quickstart-3.svg index 15bf2ea4b6..ee995fbe40 100644 --- a/macros/latex/contrib/pagelayout/doc/quickstart-3.svg +++ b/macros/latex/contrib/pagelayout/doc/quickstart-3.svg @@ -1 +1 @@ -<svg width="320" height="239" viewBox="0 0 240 179.25" version="1.2" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg"><defs><symbol overflow="visible" id="k"><path style="stroke:none" d="M1.328-.797H3.25V0H.344v-.766l.5-.515c.57-.625.922-1.004 1.047-1.14.156-.177.265-.333.328-.47.07-.132.11-.27.11-.406a.612.612 0 0 0-.188-.469c-.125-.113-.297-.171-.516-.171-.168 0-.352.039-.547.109-.2.062-.406.152-.625.265v-.828a4.25 4.25 0 0 1 .64-.187c.208-.04.407-.063.595-.063.476 0 .851.118 1.125.344.28.219.421.527.421.922 0 .18-.03.344-.093.5a1.891 1.891 0 0 1-.297.516c-.117.136-.414.449-.89.937l-.626.625zm0 0"/></symbol><symbol overflow="visible" id="l"><path style="stroke:none" d="M.406-4.563h2.89v.641L1.75 0H.828l1.485-3.766H.405Zm0 0"/></symbol><symbol overflow="visible" id="m"><path style="stroke:none" d="M.578-.797h1V-3.75l-.937.234v-.812l.953-.234h.86v3.765h1.015V0H.579Zm0 0"/></symbol><symbol overflow="visible" id="n"><path style="stroke:none" d="M1.344-.484v1.78h-.89v-4.718h.89v.516A.994.994 0 0 1 2.25-3.5c.395 0 .695.156.906.469.219.312.328.758.328 1.328 0 .574-.109 1.016-.328 1.328-.219.313-.531.469-.937.469a.868.868 0 0 1-.485-.14 1.386 1.386 0 0 1-.39-.438zm1.25-1.235c0-.32-.059-.578-.172-.765-.106-.188-.258-.282-.453-.282-.188 0-.34.094-.453.282-.118.187-.172.445-.172.765 0 .336.054.594.172.782.113.187.265.28.453.28.195 0 .347-.093.453-.28.113-.188.172-.446.172-.782Zm0 0"/></symbol><symbol overflow="visible" id="o"><path style="stroke:none" d="M.672-3.422h1.765v2.735h1.126V0H.437v-.688h1.11v-2.046H.672zm.875-1.656h.89v1.047h-.89Zm0 0"/></symbol><clipPath id="g"><path d="M0 0h167.238v124.719H0Zm0 0"/></clipPath><clipPath id="d"><path d="M26.762 5.477h113.742v113.742H26.762Zm0 0"/></clipPath><clipPath id="c"><path d="M0 0h168v125H0z"/></clipPath><image id="b" width="952" height="952" xlink:href="data:image/png;base64,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"/><image id="e" width="952" height="952" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA7gAAAO4CAIAAAB3W80MAAAABmJLR0QA/wD/AP+gvaeTAAAKYklEQVR4nO3BgQAAAADDoPlTn+AGVQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAN4LfAAHBu5hPAAAAAElFTkSuQmCC"/><image id="j" width="614" height="614" xlink:href="data:image/jpeg;base64,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"/><mask id="i"><g filter="url(#a)"><path style="fill:#000;fill-opacity:.4;stroke:none" d="M0 0h167.24v124.72H0z"/></g></mask><mask id="f"><use xlink:href="#b" width="100%" height="100%"/></mask><filter id="a" filterUnits="objectBoundingBox" x="0" y="0" width="1" height="1"><feColorMatrix in="SourceGraphic" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0"/></filter><g clip-path="url(#d)" id="h"><use xlink:href="#e" mask="url(#f)" transform="translate(26.764 5.479) scale(.11947)" width="100%" height="100%"/></g></defs><path style="fill:#fff;stroke-width:1.43381" d="M4.065.004h231.869a4.056 4.056 0 0 1 4.065 4.065v170.906a4.056 4.056 0 0 1-4.065 4.064H4.064A4.056 4.056 0 0 1 0 174.975V4.07A4.056 4.056 0 0 1 4.065.004Z"/><path style="fill:#a6a6a6;fill-opacity:.2;stroke-width:1.43381" d="M0 179.037v-.203h239.999v.203zm0-4.06v-.204h239.999v.204zm0-4.066v-.204h239.999v.204zm0-4.068v-.2h239.999v.2zm0-4.058v-.205h239.999v.204zm0-4.066v-.205h239.999v.205zm0-4.066v-.205h239.999v.205zm0-4.061v-.205h239.999v.205zm0-4.066v-.205h239.999v.205zm0-4.067v-.205h239.999v.205zm0-4.06v-.205h239.999v.205zm0-4.066v-.205h239.999v.205zm0-4.067v-.205h239.999v.205zm0-4.06V126h239.999v.205zm0-4.067v-.205h239.999v.205zm0-4.069v-.2h239.999v.2zm0-4.06v-.201h239.999v.2zm0-4.067v-.2h239.999v.2zm0-4.066v-.2h239.999v.2zm0-4.058v-.205h239.999v.205zm0-4.069v-.2h239.999v.2zm0-4.066v-.2h239.999v.2zm0-4.066v-.201h239.999v.2zm0-4.058v-.204h239.999v.204zm0-4.07v-.2h239.999v.2zm0-4.063v-.2h239.999v.2zm0-4.06v-.204h239.999v.204ZM0 69.3v-.204h239.999v.204zm0-4.067v-.203h239.999v.203zm0-4.06v-.204h239.999v.204zm0-4.067v-.203h239.999v.203zm0-4.066v-.204h239.999v.204zm0-4.06v-.204h239.999v.204zm0-4.067v-.203h239.999v.203zm0-4.066v-.204h239.999v.204zm0-4.06v-.204h239.999v.203zm0-4.066v-.205h239.999v.205zm0-4.066v-.205h239.999v.205zm0-4.06v-.205h239.999v.205zm0-4.067v-.205h239.999v.205zm0-4.066v-.205h239.999v.205zm0-4.06v-.206h239.999v.205zm0-4.067V8.13h239.999v.205zM0 4.27v-.205h239.999v.205zM0 .21V.003h239.999V.21z"/><path style="fill:#a6a6a6;fill-opacity:.2;stroke-width:1.43381" d="M0 179.035V0h.2v179.033zm4.065 0V0h.2v179.033zm4.06 0V0h.2v179.033zm4.065 0V0h.202v179.033zm4.066 0V0h.202v179.033zm4.06 0V0h.203v179.033zm4.067 0V0h.202v179.033zm4.066 0V0h.203v179.033zm4.061 0V0h.202v179.033zm4.066 0V0h.201v179.033zm4.067 0V0h.205v179.033zm4.06 0V0h.2v179.033zm4.066 0V0h.205v179.033zm4.067 0V0h.205v179.033zm4.06 0V0h.205v179.033zm4.067 0V0h.205v179.033zm4.066 0V0h.2v179.033zm4.06 0V0h.208v179.033h-.2Zm4.067 0V0h.2v179.033zm4.066 0V0h.2v179.033zm4.06 0V0h.201v179.033zm4.067 0V0h.2v179.033zm4.066 0V0h.2v179.033zm4.066 0V0h.201v179.033zm4.061 0V0h.2v179.033zm4.066 0V0h.201v179.033zm4.067 0V0h.2v179.033zm4.06 0V0h.204v179.033zm4.066 0V0h.201v179.033zm4.067 0V0h.2v179.033zm4.06 0V0h.201v179.033zm4.067 0V0h.203v179.033zm4.066 0V0h.2v179.033zm4.06 0V0h.201v179.033zm4.067 0V0h.2v179.033zm4.065 0V0h.202v179.033zm4.057 0V0h.205v179.033zm4.07 0V0h.202v179.033zm4.066 0V0h.202v179.033zm4.06 0V0h.203v179.033zm4.064 0V0h.205v179.033zm4.069 0V0h.205v179.033zm4.06 0V0h.201v179.033zm4.067 0V0h.205v179.033zm4.063 0V0h.205v179.033zm4.064 0V0h.205v179.033zm4.066 0V0h.205v179.033zm4.066 0V0h.201v179.033zm4.06 0V0h.202v179.033zm4.067 0V0h.205v179.033zm4.066 0V0h.201v179.033zm4.061 0V0h.2v179.033zm4.066 0V0h.201v179.033zm4.067 0V0h.2v179.033zm4.06 0V0h.2v179.033zm4.066 0V0h.201v179.033zm4.067 0V0h.2v179.033zm4.06 0V0h.208v179.033h-.2zm4.067 0V0h.2v179.033zm4.066 0V0h.2v179.033z"/><path style="fill:#000;stroke-width:1.43381" d="M7.94.004v4.163h.57V.004zm223.546 0v4.163h.572V.004ZM0 7.946v.57h4.164v-.568H0Zm235.833 0v.57H240v-.568h-4.167zM0 170.525v.57h4.164v-.572H0Zm235.833 0v.57H240v-.572h-4.168zm-227.896 4.35v4.164h.571v-4.164zm223.546 0v4.164h.572v-4.164h-.57z"/><path style="fill:#a6a6a6;fill-opacity:.2;stroke-width:1.43381" d="M0 170.91v-.203h239.999v.204zm0-20.318v-.205h239.999v.205zm0-20.326v-.205h239.999v.205zm0-20.323v-.2h239.999v.2zm0-20.325v-.201h239.999v.2zM0 69.3v-.204h239.999v.204zm0-20.32v-.204h239.999v.204zm0-20.325v-.205h239.999v.205zm0-20.32V8.13h239.999v.205z"/><path style="fill:#a6a6a6;fill-opacity:.2;stroke-width:1.43381" d="M8.125 179.035V0h.2v179.033zm20.324 0V0h.203v179.033zm20.32 0V0h.205v179.033zm20.32 0V0h.208v179.033h-.2Zm20.326 0V0h.2v179.033zm20.32 0V0h.204v179.033zm20.326 0V0h.2v179.033zm20.318 0V0h.203v179.033zm20.32 0V0h.201v179.033zm20.326 0V0h.201v179.033zm20.32 0V0h.201v179.033zm20.32 0V0h.208v179.033h-.2z"/><g transform="translate(.102 .102) scale(1.43382)"><g clip-path="url(#g)"><use xlink:href="#h" mask="url(#i)" width="100%" height="100%"/></g><path style="color:#000;fill:#fff;stroke-miterlimit:10;-inkscape-stroke:none" d="M-5.67-5.668v85.039h85.041V-5.668Z" transform="matrix(1 0 0 -1 46.772 99.209)"/><use xlink:href="#j" transform="translate(46.772 25.509) scale(.12003)" width="100%" height="100%"/><path style="fill:#fff000;fill-opacity:.9;fill-rule:nonzero;stroke:none" d="M93.617 36.102h26.856V25.508H93.617Zm0 0"/><use xlink:href="#k" x="95.707" y="32.703" width="100%" height="100%" style="fill:#000;fill-opacity:.9"/><use xlink:href="#l" x="99.484" y="32.703" width="100%" height="100%" style="fill:#000;fill-opacity:.9"/><use xlink:href="#m" x="103.261" y="32.703" width="100%" height="100%" style="fill:#000;fill-opacity:.9"/><use xlink:href="#n" x="107.037" y="32.703" width="100%" height="100%" style="fill:#000;fill-opacity:.9"/><use xlink:href="#n" x="110.82" y="32.703" width="100%" height="100%" style="fill:#000;fill-opacity:.9"/><use xlink:href="#o" x="114.597" y="32.703" width="100%" height="100%" style="fill:#000;fill-opacity:.9"/></g></svg>
\ No newline at end of file +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="320" height="239" viewBox="0 0 167.24 124.72"><defs><clipPath id="h"><path d="M0 0h167.238v124.719H0Zm0 0"/></clipPath><clipPath id="e"><path d="M4.457 24.29h98.809v76.128H4.457Zm0 0"/></clipPath><clipPath id="d"><path d="M0 0h168v125H0z"/></clipPath><clipPath id="k"><path d="M20 40h67.875v45H20Zm0 0"/></clipPath><clipPath id="s"><path d="M5 121h1v3.719H5Zm0 0"/></clipPath><clipPath id="t"><path d="M164 118h3.238v2H164Zm0 0"/></clipPath><clipPath id="u"><path d="M161 121h1v3.719h-1Zm0 0"/></clipPath><clipPath id="v"><path d="M164 5h3.238v1H164Zm0 0"/></clipPath><path id="m" d="M.844-.5h1.219V0H.218v-.484L.53-.812q.544-.593.672-.735.14-.152.203-.281a.56.56 0 0 0 .078-.266.38.38 0 0 0-.125-.297.5.5 0 0 0-.328-.109q-.156.002-.343.063a2.4 2.4 0 0 0-.407.187v-.547q.219-.06.407-.11a1.7 1.7 0 0 1 .39-.046q.45 0 .719.219a.74.74 0 0 1 .266.593c0 .106-.024.211-.063.313q-.064.158-.203.328-.094.142-.563.594-.25.253-.39.406m0 0"/><path id="n" d="M.266-2.89h1.828v.406L1.109 0H.531l.938-2.39H.266Zm0 0"/><path id="o" d="M.36-.5H1v-1.875l-.594.14v-.515L1-2.89h.563V-.5h.64V0H.36Zm0 0"/><path id="p" d="M.86-.312v1.14H.296v-3h.562v.328a.7.7 0 0 1 .235-.281.6.6 0 0 1 .343-.094c.239 0 .426.102.563.297q.218.299.219.844 0 .55-.219.844-.206.298-.594.297a.55.55 0 0 1-.312-.094.9.9 0 0 1-.235-.281m.78-.782a.94.94 0 0 0-.109-.484.3.3 0 0 0-.281-.172.34.34 0 0 0-.297.172q-.094.175-.094.484 0 .33.094.5c.07.117.172.172.297.172a.3.3 0 0 0 .281-.172c.07-.113.11-.281.11-.5m0 0"/><path id="q" d="M.422-2.172h1.125v1.735h.703V0H.281v-.437h.703v-1.297H.422Zm.562-1.047h.563v.656H.984Zm0 0"/><path id="r" d="M4.781-2.875h6.953V0H1.266v-2.781L3.03-4.656q3.14-3.341 3.813-4.11.825-.949 1.187-1.687.375-.733.375-1.453-.002-1.09-.672-1.688c-.437-.406-1.07-.61-1.89-.61-.586 0-1.242.118-1.969.345q-1.078.344-2.25 1v-3.032a16 16 0 0 1 2.297-.64 10.8 10.8 0 0 1 2.172-.235c1.75 0 3.117.407 4.11 1.22q1.5 1.218 1.5 3.327a5.1 5.1 0 0 1-.329 1.828q-.33.845-1.11 1.875-.595.75-3.218 3.375zm0 0"/><image xlink:href="data:image/png;base64,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" id="b" width="827" height="637" x="0" y="0"/><image xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAzsAAAJ9CAIAAACdO/u9AAAABmJLR0QA/wD/AP+gvaeTAAAGEklEQVR4nO3BMQEAAADCoPVP7WULoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbiFSAAEnwUMrAAAAAElFTkSuQmCC" id="g" width="827" height="637" x="0" y="0"/><image xlink:href="data:image/jpeg;base64,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" id="l" width="567" height="378" x="0" y="0"/><filter id="a" width="1" height="1" x="0" y="0"><feColorMatrix color-interpolation-filters="sRGB" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0"/></filter><filter id="c" width="1" height="1" x="0" y="0"><feColorMatrix color-interpolation-filters="sRGB" values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0.2126 0.7152 0.0722 0 0"/></filter><mask id="i"><g filter="url(#a)"><path fill-opacity=".4" d="M-16.724-12.472h200.688v149.664H-16.724z"/></g></mask><mask id="f"><g filter="url(#a)"><use xlink:href="#b" filter="url(#c)" transform="matrix(.11948 0 0 .11951 4.457 24.29)"/></g></mask><g clip-path="url(#d)"><g id="j" clip-path="url(#e)" mask="url(#f)"><use xlink:href="#g" transform="matrix(.11948 0 0 .11951 4.457 24.29)"/></g></g></defs><g clip-path="url(#h)"><path fill="#FFF" d="M0 121.887V2.828A2.836 2.836 0 0 1 2.836-.008H164.41a2.836 2.836 0 0 1 2.836 2.836v119.059a2.835 2.835 0 0 1-2.836 2.832H2.836A2.835 2.835 0 0 1 0 121.887m0 0"/><path fill="none" stroke="#A6A6A6" stroke-linecap="square" stroke-miterlimit="10" stroke-opacity=".2" stroke-width=".142" d="M-8.504 133.223h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75M-8.504 82.2h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.835h175.75M-8.504 51.02h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75M-8.504 39.68h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75M-8.504 28.34h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75m-175.75-2.832h175.75m-175.75-2.836h175.75m-175.75-2.836h175.75M-8.504 8.5h175.75M-8.504 5.664h175.75M-8.504 2.828h175.75M-8.504-.004h175.75M-8.504 133.223V-.007m2.836 133.23V-.007m2.832 133.23V-.007M0 133.222V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.835 133.23V-.007m2.833 133.23V-.007m2.835 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.835 133.23V-.007m2.833 133.23V-.007m2.835 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007m2.832 133.23V-.007m2.836 133.23V-.007m2.836 133.23V-.007M-8.504 133.223h175.75M-8.504 119.05h175.75m-175.75-14.172h175.75M-8.504 90.703h175.75M-8.504 76.531h175.75M-8.504 62.355h175.75M-8.504 48.184h175.75M-8.504 34.012h175.75M-8.504 19.836h175.75M-8.504 5.664h175.75M-8.504 133.223V-.007m14.172 133.23V-.007m14.176 133.23V-.007m14.172 133.23V-.007m14.175 133.23V-.007m14.172 133.23V-.007m14.172 133.23V-.007m14.176 133.23V-.007m14.172 133.23V-.007m14.172 133.23V-.007m14.175 133.23V-.007m14.172 133.23V-.007m14.176 133.23V-.007"/><g mask="url(#i)"><use xlink:href="#j"/></g></g><path fill="none" stroke="#FFF" stroke-miterlimit="10" stroke-width="2.835" d="M18.426 86.453V38.262h70.867v48.191Zm0 0"/><g clip-path="url(#k)"><use xlink:href="#l" transform="matrix(.11998 0 0 .11998 19.842 39.68)"/></g><path fill="#FFF200" fill-opacity=".9" d="M70.82 46.406h17.055V39.68H70.82Zm0 0"/><use xlink:href="#m" x="72.15" y="44.249" fill-opacity=".9"/><use xlink:href="#n" x="74.548" y="44.249" fill-opacity=".9"/><use xlink:href="#o" x="76.946" y="44.249" fill-opacity=".9"/><use xlink:href="#p" x="79.344" y="44.249" fill-opacity=".9"/><use xlink:href="#p" x="81.746" y="44.249" fill-opacity=".9"/><use xlink:href="#q" x="84.144" y="44.249" fill-opacity=".9"/><path fill="#B3E6FA" fill-opacity=".3" stroke="#66CEF5" stroke-miterlimit="10" stroke-opacity=".3" stroke-width=".283" d="M102.047 85.035V39.68h45.355v45.355Zm0 0"/><use xlink:href="#r" x="117.898" y="70.773" fill="#66CEF5" fill-opacity=".3"/><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M-2.836 119.05h5.672"/><g clip-path="url(#s)"><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M5.668 127.555v-5.668"/></g><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M-2.836 5.664h5.672M5.668-2.84v5.668"/><g clip-path="url(#t)"><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M170.082 119.05h-5.672"/></g><g clip-path="url(#u)"><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M161.578 127.555v-5.668"/></g><g clip-path="url(#v)"><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M170.082 5.664h-5.672"/></g><path fill="none" stroke="#000" stroke-miterlimit="10" stroke-width=".399" d="M161.578-2.84v5.668"/></svg>
\ No newline at end of file diff --git a/macros/latex/contrib/pagelayout/doc/quickstart.pdf b/macros/latex/contrib/pagelayout/doc/quickstart.pdf Binary files differindex 2af22e071a..6ae93506b1 100644 --- a/macros/latex/contrib/pagelayout/doc/quickstart.pdf +++ b/macros/latex/contrib/pagelayout/doc/quickstart.pdf diff --git a/macros/latex/contrib/pagelayout/doc/quickstart.tex b/macros/latex/contrib/pagelayout/doc/quickstart.tex index 3a503dd28d..f5c22be13b 100644 --- a/macros/latex/contrib/pagelayout/doc/quickstart.tex +++ b/macros/latex/contrib/pagelayout/doc/quickstart.tex @@ -1,5 +1,5 @@ %% -%% Copyright (c) 2022-2023 by Friedemann Bartels +%% Copyright (c) 2022-2024 by Friedemann Bartels %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either @@ -12,7 +12,7 @@ %% LaTeX version 2008/05/04 or later. %% -\documentclass[draft,graphpaper,preflight,optimize={density=600}]{pagelayout} +\documentclass[draft,grid,graphpaper,preflight,optimize={density=600}]{pagelayout} \usepackage{microtype} \usepackage{fontspec} @@ -23,36 +23,49 @@ \margin=5mm \gutter=5mm \bleed=2mm +\setpagecolor{white} \begin{document} - \fontsize{6.3pt}{8.6pt}\selectfont + \fontsize{4pt}{4.8pt}\selectfont - % generic template - \template{ff}{ - \text{ - This text fills the first placeholder. + % page + \page{ + \setgrid{ + {{}{}} + } + \text[breakable]{ + Lorem ipsum dolor sit amet, consectetuer adipiscing elit. + Ut purus elit, vestibulum ut, placerat ac, adipiscing vitae, felis. + Curabitur dictum gravida mauris. + Nam arcu libero, nonummy eget, consectetuer id, vulputate a, magna. + Donec vehicula augue eu neque. + Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. + Mauris ut leo. Cras viverra metus rhoncus sem. + Nulla et lectus vestibulum urna fringilla ultrices. + Phasellus eu tellus sit amet tortor gravida placerat. } + \usetext } - % custom template - \grid + % template \newtemplate{my template}{ \setgrid{ {[2]{3!}{2!}} } \placeholder{0 0 1 1} + \placeholder{0 1 1 2} } \template{my template}{} - \nogrid - % graphics - \newborder{my border}{width=2mm, color=white, radius=5mm} - \newshadow{my shadow}{size=8} - \template[margin=7mm]{s}{ + % graphic + \nogrid + \newborder{my border}{width = 1mm, color = white, radius = 5mm} + \newshadow{my shadow}{size = 7} + \template{my template}{ \graphic[ scale=1.05, hpos=0, - vpos=0, + vpos=0.3, shadow=my shadow, border=my border, border radius=0mm diff --git a/macros/latex/contrib/pagelayout/scripts/pagelayoutapi b/macros/latex/contrib/pagelayout/scripts/pagelayoutapi index 7533cf722e..be034baaa7 100755 --- a/macros/latex/contrib/pagelayout/scripts/pagelayoutapi +++ b/macros/latex/contrib/pagelayout/scripts/pagelayoutapi @@ -1,6 +1,6 @@ #!/bin/sh # -# Copyright (c) 2022-2023 by Friedemann Bartels +# Copyright (c) 2022-2024 by Friedemann Bartels # # This file may be distributed and/or modified under the # conditions of the LaTeX Project Public License, either @@ -13,7 +13,7 @@ # LaTeX version 2008/05/04 or later. # -version=1.0.5 +version=1.1.0 _convert() { turbo=$1 @@ -181,7 +181,7 @@ makeshadow() { </filter> </defs> <rect - style='filter:url(#blur);opacity:$opacity;fill:$fill' + style='filter:url(#blur);opacity:$opacity;fill:rgb($fill)' width='$framewidth' height='$frameheight' x='$frameborder' @@ -272,7 +272,11 @@ batchoptimize() { [ ! -d cache ] && mkdir cache length=$(( $# / 15 )) - cores=$( nproc ) + if command -v nproc >/dev/null 2>&1; then + cores=$( nproc ) + else + cores=1 + fi [ $cores -gt $length ] && cores=$length while [ $length -gt 0 ]; do diff --git a/macros/latex/contrib/pagelayout/scripts/textestvis b/macros/latex/contrib/pagelayout/scripts/textestvis index 53dcedddca..8ddcde77e1 100755 --- a/macros/latex/contrib/pagelayout/scripts/textestvis +++ b/macros/latex/contrib/pagelayout/scripts/textestvis @@ -1,6 +1,6 @@ #!/bin/sh # -# Copyright (c) 2022-2023 by Friedemann Bartels +# Copyright (c) 2022-2024 by Friedemann Bartels # # This file may be distributed and/or modified under the # conditions of the LaTeX Project Public License, either @@ -13,7 +13,7 @@ # LaTeX version 2008/05/04 or later. # -version=1.0.5 +version=1.1.0 OK="$( tput setaf 2 )•$( tput sgr0 )" FAILED="$( tput setaf 1 )$( tput bold )x$( tput sgr0 )" diff --git a/macros/latex/contrib/pagelayout/tex/pagelayout.cls b/macros/latex/contrib/pagelayout/tex/pagelayout.cls index fbc4a507ff..8e7d3616ae 100644 --- a/macros/latex/contrib/pagelayout/tex/pagelayout.cls +++ b/macros/latex/contrib/pagelayout/tex/pagelayout.cls @@ -1,5 +1,5 @@ %% -%% Copyright (c) 2022-2023 by Friedemann Bartels +%% Copyright (c) 2022-2024 by Friedemann Bartels %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either @@ -13,8 +13,8 @@ %% \NeedsTeXFormat{LaTeX2e}[2020/10/01] -\ProvidesClass{pagelayout}[2023/12/21 Layout graphic rich documents] -\def\pagelayoutversion{1.0.5} +\ProvidesClass{pagelayout}[2024/01/17 Layout graphic rich documents] +\def\pagelayoutversion{1.1.0} % packages \RequirePackage{pgfopts} @@ -85,7 +85,7 @@ \newdimen\pal@topsafetymargin\newdimen\pal@bottomsafetymargin\newdimen\pal@innersafetymargin\newdimen\pal@outersafetymargin \newdimen\pal@topmargin\newdimen\pal@topmargintmp\newdimen\pal@innermargin\newdimen\pal@bottommargin\newdimen\pal@outermargin \newdimen\pal@gutter -\newdimen\pal@x\newdimen\pal@y\newdimen\pal@xx\newdimen\pal@yy\newdimen\width\newdimen\height\newdimen\x\newdimen\y +\newdimen\pal@x\newdimen\pal@y\newdimen\pal@xx\newdimen\pal@yy\newdimen\pal@yytmp\newdimen\width\newdimen\height\newdimen\x\newdimen\y \newdimen\pal@gridoffsethorizontal\newdimen\pal@gridoffsetvertical\newdimen\pal@gridoffsethorizontaln\newdimen\pal@gridoffsetverticaln \newdimen\pal@graphpaperx\newdimen\pal@graphpapery\newdimen\pal@graphpaperoffset\newdimen\pal@graphpapersnap @@ -868,13 +868,18 @@ % graphic \newif\ifpal@isvisible \newif\ifpal@calculatecrop +\newif\ifpal@trimnext +\newif\ifpal@hflip +\newif\ifpal@vflip +\newif\ifpal@graphicoptionhflip +\newif\ifpal@graphicoptionvflip \newdimen\pal@originalgraphicwidth\newdimen\pal@originalgraphicheight \newdimen\pal@cropx\newdimen\pal@cropy \newdimen\pal@cropleft\newdimen\pal@cropright \newdimen\pal@cropbottom\newdimen\pal@croptop \newdimen\pal@cropstart\newdimen\pal@cropend \newdimen\pal@snapleft\newdimen\pal@snapright -\newdimen\pal@snapbottom\newdimen\pal@snaptop +\newdimen\pal@snapbottom\newdimen\pal@snaptop\newdimen\pal@dimentmp \newdimen\pal@viewportwidth\newdimen\pal@viewportheight \newdimen\pal@frameborderwidth \newdimen\pal@frameborderradius @@ -1000,6 +1005,9 @@ /graphic, file/.store in=\pal@graphicoptionfile, scale/.store in=\pal@graphicoptionscale, + orientation/.store in=\pal@graphicoptionorientation, + hflip/.is if=pal@graphicoptionhflip, + vflip/.is if=pal@graphicoptionvflip, vpos/.store in=\pal@graphicoptionvpos, hpos/.store in=\pal@graphicoptionhpos, unsharp/.store in=\pal@graphicoptionunsharp, @@ -1259,16 +1267,31 @@ \def\newgraphic#1#2{ \expandafter\newcommand\csname pal@graphic@#1\endcsname[2][0]{% \ifnum##1=0 - \pgfkeys{pagegraphic,file={#1},scale=1,vpos=0.5,hpos=0.5,unsharp=\pal@unsharp,#2,##2} + \pgfkeys{pagegraphic,file={#1},scale=1,orientation=1,vpos=0.5,hpos=0.5,unsharp=\pal@unsharp,#2,##2} \else \ifnum##1=1 - \pgfkeys{backcoverpagegraphic,file={#1},scale=1,vpos=0.5,hpos=0.5,unsharp=\pal@unsharp,#2} + \pgfkeys{backcoverpagegraphic,file={#1},scale=1,orientation=1,vpos=0.5,hpos=0.5,unsharp=\pal@unsharp,#2} \else - \pgfkeys{graphic,file={#1},scale=1,vpos=0.5,hpos=0.5,unsharp=\pal@unsharp,#2,##2} + \pgfkeys{graphic,file={#1},scale=1,orientation=1,vpos=0.5,hpos=0.5,unsharp=\pal@unsharp,#2,##2} \fi \fi }% } +\def\togglesnapv{ + \pal@dimentmp=\pal@snaptop + \pal@snaptop=\pal@snapbottom + \pal@snapbottom=\pal@dimentmp +} +\def\togglesnaph{ + \pal@dimentmp=\pal@snapleft + \pal@snapleft=\pal@snapright + \pal@snapright=\pal@dimentmp +} +\def\togglepos{ + \xdef\pal@tmp{\pal@graphicoptionhpos} + \xdef\pal@graphicoptionhpos{\pal@graphicoptionvpos} + \xdef\pal@graphicoptionvpos{\pal@tmp} +} \newcommand\pal@putgraphic[6][]{ \pal@x=\posx{1}{#2}{1}{#3} \pal@yy=\posy{1}{#2} @@ -1298,13 +1321,156 @@ \pal@snapbleedbottom=\pal@null \begingroup - \xdef\pal@filename{#6-\pal@density-\pal@graphicoptionscale-\pal@graphicoptionhpos-\pal@graphicoptionvpos-\the\numexpr\pal@snaptop\relax-\the\numexpr\pal@snapright\relax-\the\numexpr\pal@snapbottom\relax-\the\numexpr\pal@snapleft\relax-\the\numexpr\width\relax-\the\numexpr\height\relax-\pal@downsamplethreshold-\pal@graphicoptionunsharp-\pal@quality} + \pal@hflipfalse + \pal@vflipfalse + + \ifnum\pal@graphicoptionorientation=1 + \def\pal@angle{0} + \ifpal@graphicoptionhflip + \pal@hfliptrue + \togglesnaph + \fi + \ifpal@graphicoptionvflip + \pal@vfliptrue + \togglesnapv + \fi + \pgfmathqparse{1pt-\pal@graphicoptionvpos pt} + \edef\pal@graphicoptionvpos{\pgfmathresult} + \else + \ifnum\pal@graphicoptionorientation=2 + \def\pal@angle{0} + \ifpal@graphicoptionhflip + \else + \pal@hfliptrue + \togglesnaph + \fi + \ifpal@graphicoptionvflip + \pal@vfliptrue + \togglesnapv + \fi + \pgfmathqparse{1pt-\pal@graphicoptionvpos pt} + \edef\pal@graphicoptionvpos{\pgfmathresult} + \pgfmathqparse{1pt-\pal@graphicoptionhpos pt} + \edef\pal@graphicoptionhpos{\pgfmathresult} + \else + \ifnum\pal@graphicoptionorientation=3 + \def\pal@angle{180} + \ifpal@graphicoptionhflip + \pal@hfliptrue + \else + \togglesnaph + \fi + \ifpal@graphicoptionvflip + \pal@vfliptrue + \else + \togglesnapv + \fi + \pgfmathqparse{1pt-\pal@graphicoptionhpos pt} + \edef\pal@graphicoptionhpos{\pgfmathresult} + \else + \ifnum\pal@graphicoptionorientation=4 + \def\pal@angle{180} + \ifpal@graphicoptionhflip + \togglesnaph + \else + \pal@hfliptrue + \fi + \ifpal@graphicoptionvflip + \pal@vfliptrue + \else + \togglesnapv + \fi + \else + \ifnum\pal@graphicoptionorientation=5 + \def\pal@angle{270} + \ifpal@graphicoptionhflip + \pal@hfliptrue + \else + \togglesnaph + \fi + \ifpal@graphicoptionvflip + \togglesnapv + \else + \pal@vfliptrue + \fi + \togglepos + \pgfmathqparse{1pt-\pal@graphicoptionvpos pt} + \edef\pal@graphicoptionvpos{\pgfmathresult} + \pgfmathqparse{1pt-\pal@graphicoptionhpos pt} + \edef\pal@graphicoptionhpos{\pgfmathresult} + \else + \ifnum\pal@graphicoptionorientation=6 + \def\pal@angle{270} + \ifpal@graphicoptionhflip + \pal@hfliptrue + \else + \togglesnaph + \fi + \ifpal@graphicoptionvflip + \pal@vfliptrue + \else + \togglesnapv + \fi + \togglepos + \pgfmathqparse{1pt-\pal@graphicoptionhpos pt} + \edef\pal@graphicoptionhpos{\pgfmathresult} + \else + \def\pal@angle{90} + \ifpal@graphicoptionhflip + \pal@hfliptrue + \togglesnaph + \fi + \ifnum\pal@graphicoptionorientation=7 + \ifpal@graphicoptionvflip + \else + \pal@vfliptrue + \togglesnapv + \fi + \togglepos + \else + \ifpal@graphicoptionvflip + \pal@vfliptrue + \togglesnapv + \fi + \togglepos + \pgfmathqparse{1pt-\pal@graphicoptionvpos pt} + \edef\pal@graphicoptionvpos{\pgfmathresult} + \fi + \fi + \fi + \fi + \fi + \fi + \fi + + \ifnum\pal@graphicoptionorientation<5 + \xdef\pal@filename{#6-\pal@density-\pal@graphicoptionscale-\pal@graphicoptionhpos-\pal@graphicoptionvpos-\the\numexpr\pal@snaptop\relax-\the\numexpr\pal@snapright\relax-\the\numexpr\pal@snapbottom\relax-\the\numexpr\pal@snapleft\relax-\the\numexpr\width\relax-\the\numexpr\height\relax-\pal@downsamplethreshold-\pal@graphicoptionunsharp-\pal@quality} + \else + \xdef\pal@filename{#6-\pal@density-\pal@graphicoptionscale-\pal@graphicoptionhpos-\pal@graphicoptionvpos-\the\numexpr\pal@snapleft\relax-\the\numexpr\pal@snaptop\relax-\the\numexpr\pal@snapright\relax-\the\numexpr\pal@snapbottom\relax-\the\numexpr\height\relax-\the\numexpr\width\relax-\pal@downsamplethreshold-\pal@graphicoptionunsharp-\pal@quality} + \fi + \ifpal@optimize \IfFileExists{./cache/\pal@filename/g.jpg}{ - \def\pal@nextincludegraphic{\includegraphics[width=\width]{cache/\pal@filename/g.jpg}} + \ifnum\pal@graphicoptionorientation<3 + \def\pal@nextincludegraphic{\includegraphics[width=\width]{cache/\pal@filename/g.jpg}} + \else + \ifnum\pal@graphicoptionorientation<5 + \def\pal@nextincludegraphic{\includegraphics[width=\width,angle=\pal@angle]{cache/\pal@filename/g.jpg}} + \else + \def\pal@nextincludegraphic{\includegraphics[height=\width,angle=\pal@angle]{cache/\pal@filename/g.jpg}} + \fi + \fi }{ \IfFileExists{./cache/\pal@filename/g.png}{ - \def\pal@nextincludegraphic{\includegraphics[width=\width]{cache/\pal@filename/g.png}} + \ifnum\pal@graphicoptionorientation<3 + \def\pal@nextincludegraphic{\includegraphics[width=\width]{cache/\pal@filename/g.png}} + \else + \ifnum\pal@graphicoptionorientation<5 + \def\pal@nextincludegraphic{\includegraphics[width=\width,angle=\pal@angle]{cache/\pal@filename/g.png}} + \else + \def\pal@nextincludegraphic{\includegraphics[height=\width,angle=\pal@angle]{cache/\pal@filename/g.png}} + \fi + \fi }{ \pal@calculatecroptrue } @@ -1332,10 +1498,13 @@ \pal@disablegraphicsfilecheck \ifpal@calculatecrop % graphic crop - \settowidth{\pal@originalgraphicwidth}{\includegraphics{\pal@currfilebase\pal@currfileext}} - \settoheight{\pal@originalgraphicheight}{\includegraphics{\pal@currfilebase\pal@currfileext}} - \pgfmathqparse{1pt-\pal@graphicoptionvpos pt} - \edef\pal@graphicoptionvpos{\pgfmathresult} + \ifnum\pal@graphicoptionorientation<5 + \settowidth{\pal@originalgraphicwidth}{\includegraphics{\pal@currfilebase\pal@currfileext}} + \settoheight{\pal@originalgraphicheight}{\includegraphics{\pal@currfilebase\pal@currfileext}} + \else + \settoheight{\pal@originalgraphicwidth}{\includegraphics{\pal@currfilebase\pal@currfileext}} + \settowidth{\pal@originalgraphicheight}{\includegraphics{\pal@currfilebase\pal@currfileext}} + \fi \pgfmathqparse{\pal@originalgraphicwidth/\pal@originalgraphicheight} \edef\pal@graphicratio{\pgfmathresult} \pgfmathqparse{\width/\height} @@ -1408,6 +1577,7 @@ \pal@snapoptimizedgraphic \fi + \pal@trimnextfalse \ifdefined\pal@nextincludegraphic \else \ifpal@optimize @@ -1418,19 +1588,39 @@ \isoptimizable{\pal@currfileext}{\pal@optimizegraphic{\pal@currfilebase}{\pal@currfileext}} \ifdefined\pal@optimizedext \IfFileExists{./cache/\pal@filename/g\pal@optimizedext}{ - \def\pal@nextincludegraphic{\includegraphics[width=\width]{cache/\pal@filename/g\pal@optimizedext}} + \ifnum\pal@graphicoptionorientation<3 + \def\pal@nextincludegraphic{\includegraphics[width=\width]{cache/\pal@filename/g\pal@optimizedext}} + \else + \ifnum\pal@graphicoptionorientation<5 + \def\pal@nextincludegraphic{\includegraphics[width=\width,angle=\pal@angle]{cache/\pal@filename/g\pal@optimizedext}} + \else + \def\pal@nextincludegraphic{\includegraphics[height=\width,angle=\pal@angle]{cache/\pal@filename/g\pal@optimizedext}} + \fi + \fi }{ \ifx\pal@processresult\pal@ok \ClassError{pagelayout}{Unexpected error. File not optimized}{File `cache/#6/g\pal@optimizedext' not found.\MessageBreak Try to delete the `cache' directory.\MessageBreak\MessageBreak\@ehc} \fi - \def\pal@nextincludegraphic{\includegraphics[trim={\pal@cropleft} {\pal@cropbottom} {\pal@cropright} {\pal@croptop},\pal@clip,width=\width]{\pal@currfilebase\pal@currfileext}} + \pal@trimnexttrue } \else - \def\pal@nextincludegraphic{\includegraphics[trim={\pal@cropleft} {\pal@cropbottom} {\pal@cropright} {\pal@croptop},\pal@clip,width=\width]{\pal@currfilebase\pal@currfileext}} + \pal@trimnexttrue \fi \fi \else + \pal@trimnexttrue + \fi + \fi + + \ifpal@trimnext + \ifnum\pal@graphicoptionorientation<3 \def\pal@nextincludegraphic{\includegraphics[trim={\pal@cropleft} {\pal@cropbottom} {\pal@cropright} {\pal@croptop},\pal@clip,width=\width]{\pal@currfilebase\pal@currfileext}} + \else + \ifnum\pal@graphicoptionorientation<5 + \def\pal@nextincludegraphic{\includegraphics[trim={\pal@cropleft} {\pal@cropbottom} {\pal@cropright} {\pal@croptop},\pal@clip,width=\width,angle=\pal@angle]{\pal@currfilebase\pal@currfileext}} + \else + \def\pal@nextincludegraphic{\includegraphics[trim={\pal@cropbottom} {\pal@cropright} {\pal@croptop} {\pal@cropleft},\pal@clip,height=\width,angle=\pal@angle]{\pal@currfilebase\pal@currfileext}} + \fi \fi \fi @@ -1475,7 +1665,11 @@ \ifdim\pal@defaultborderradius>0pt \pal@ismaskrequiredtrue \else - \pal@ismaskrequiredfalse + \ifnum\pal@graphicoptionorientation=1 + \pal@ismaskrequiredfalse + \else + \pal@ismaskrequiredtrue + \fi \fi \fi \else @@ -1498,9 +1692,27 @@ \fi \draw[draw opacity=0,rounded corners=\pal@defaultborderradius,path picture={ - \node at (0.5\width,0.5\height){ - \pal@nextincludegraphic - }; + \ifpal@hflip + \ifpal@vflip + \node[xscale=-1,yscale=-1] at (0.5\width,0.5\height){ + \pal@nextincludegraphic + }; + \else + \node[xscale=-1] at (0.5\width,0.5\height){ + \pal@nextincludegraphic + }; + \fi + \else + \ifpal@vflip + \node[yscale=-1] at (0.5\width,0.5\height){ + \pal@nextincludegraphic + }; + \else + \node at (0.5\width,0.5\height){ + \pal@nextincludegraphic + }; + \fi + \fi }] (0,0) rectangle ++(\width,\height);% \end{tikzpicture}% \else% @@ -1574,12 +1786,19 @@ } % pagegraphic +\newif\ifpal@pagegraphicoptionhflip +\newif\ifpal@pagegraphicoptionvflip +\newif\ifpal@backcoveroptionpagegraphichflip +\newif\ifpal@backcoveroptionpagegraphicvflip \def\pal@pagegraphic{} \pgfkeys{ /pagegraphic/.is family, /pagegraphic, file/.store in=\pal@pagegraphic, scale/.store in=\pal@pagegraphicoptionscale, + orientation/.store in=\pal@pagegraphicoptionorientation, + hflip/.is if=pal@pagegraphicoptionhflip, + vflip/.is if=pal@pagegraphicoptionvflip, vpos/.store in=\pal@pagegraphicoptionvpos, hpos/.store in=\pal@pagegraphicoptionhpos, unsharp/.store in=\pal@pagegraphicoptionunsharp, @@ -1589,6 +1808,9 @@ /backcoverpagegraphic, file/.store in=\pal@backcoveroptionpagegraphicfile, scale/.store in=\pal@backcoveroptionpagegraphicscale, + orientation/.store in=\pal@backcoveroptionpagegraphicorientation, + hflip/.is if=pal@backcoveroptionpagegraphichflip, + vflip/.is if=pal@backcoveroptionpagegraphicvflip, vpos/.store in=\pal@backcoveroptionpagegraphicvpos, hpos/.store in=\pal@backcoveroptionpagegraphichpos, unsharp/.store in=\pal@backcoveroptionpagegraphicunsharp, @@ -1601,7 +1823,7 @@ \innermargin=\pal@null \outermargin=\pal@null \setgrid{{{1}}} - \pgfkeys{graphic,scale=\pal@pagegraphicoptionscale,hpos=\pal@pagegraphicoptionhpos,vpos=\pal@pagegraphicoptionvpos,unsharp=\pal@pagegraphicoptionunsharp,border width=0pt,border radius=0pt,shadow size=0,shadow xshift=0pt,shadow yshift=0pt} + \pgfkeys{graphic,scale=\pal@pagegraphicoptionscale,orientation=\pal@pagegraphicoptionorientation,hflip=\ifpal@pagegraphicoptionhflip true\else false\fi,vflip=\ifpal@pagegraphicoptionvflip true\else false\fi,hpos=\pal@pagegraphicoptionhpos,vpos=\pal@pagegraphicoptionvpos,unsharp=\pal@pagegraphicoptionunsharp,border width=0pt,border radius=0pt,shadow size=0,shadow xshift=0pt,shadow yshift=0pt} \pal@putgraphic{0}{0}{1}{1}{\pal@pagegraphic} \endgroup } @@ -1609,7 +1831,7 @@ \ifcsname pal@graphic@#2\endcsname% \csname pal@graphic@#2\endcsname{#1} \else% - \pgfkeys{pagegraphic,file={#2},scale=1,vpos=0.5,hpos=0.5,unsharp=\pal@unsharp,#1} + \pgfkeys{pagegraphic,file={#2},scale=1,orientation=1,vpos=0.5,hpos=0.5,unsharp=\pal@unsharp,#1} \fi } \def\nopagegraphic{\setpagegraphic{}} @@ -1660,6 +1882,7 @@ colframe/.store in=\pal@defaultbordercolor, opacityframe/.store in=\pal@defaultborderopacity, breakable/.is if=pal@text@option@breakable, + % baselinesnap/.store in=\pal@text@option@baselinesnap, .unknown/.code=, library/.unknown/.code=, } @@ -1697,6 +1920,7 @@ height/.code={\originaltcbset{height=#1}\def\pal@text@option@height{#1}}, parbox/.is if=pal@text@option@parbox, breakable/.is if=pal@text@option@breakable, + baselinesnap/.store in=\pal@text@option@baselinesnap, border radius/.code={\originaltcbset{arc=#1}\ifdim\pal@null=\dimexpr#1\relax\originaltcbset{outer arc=#1}\else\originaltcbset{auto outer arc}\fi\def\pal@defaultborderradius{#1}}, arc/.forward to=/text/border radius, border width/.forward to=/text/boxrule, @@ -1711,6 +1935,7 @@ .unknown/.code={\originaltcbset{\pgfkeyscurrentname=#1}} } \newdimen\pal@tcbheight +\newcount\pal@breakabletextindex \newcommand\pal@puttext[5]{ \ifpal@isbatchmode \else @@ -1779,6 +2004,14 @@ \fi \ifpal@text@option@breakable + \global\expandafter\edef\csname pal@breakabletext@name@\the\pal@breakabletextindex\endcsname{\pal@text@option@name} + \global\expandafter\edef\csname pal@breakabletext@breakat@\pal@text@option@name\endcsname{\the\height} + \global\expandafter\edef\csname pal@breakabletext@startat@\pal@text@option@name\endcsname{\the\pal@yy} + \ifdefined\pal@text@option@baselinesnap + \global\expandafter\edef\csname pal@breakabletext@baselinesnap@\pal@text@option@name\endcsname{\pal@text@option@baselinesnap} + \fi + % \errmessage{\the\pal@yy, \the\pal@y, \the\height, \the\pageheight} + \global\advance\pal@breakabletextindex by 1 \expandafter\xdef\csname pal@textarray@\pal@text@option@name @offsetx\endcsname{\pal@text@option@leftrule} \expandafter\xdef\csname pal@textarray@\pal@text@option@name @offsety\endcsname{\pal@text@option@bottomrule} \else @@ -1797,7 +2030,8 @@ standard jigsaw, width=\width, enforce breakable, - break at=\height, + break at=\ifcsname pal@breakable@\pal@text@option@name\endcsname\csname pal@breakable@\pal@text@option@name\endcsname\else\height\fi, + % break at=\height/\height/\height/\height/\height/\height/46.633pt/\height, height fixed for=all, reset box array=\pal@text@option@name, store to box array=\pal@text@option@name, @@ -1872,6 +2106,7 @@ \fi \fi } + \newcommand\pal@putusetext[5][default]{ \ifpal@isbatchmode \else @@ -1879,6 +2114,24 @@ \pal@xx=\posx{-1}{#4}{-1}{#5} \pal@y=\posy{-1}{#4} \pal@yy=\posy{1}{#2} + \ifdim\csname pal@breakabletext@startat@#1\endcsname=\the\pal@yy + \else + \ifcsname pal@breakabletext@baselinesnap@#1\endcsname + \pal@yytmp=\dimexpr\csname pal@breakabletext@startat@#1\endcsname\relax + \ifdim\pal@yytmp>\pal@yy + \loop + \pal@yytmp=\dimexpr\pal@yytmp-\csname pal@breakabletext@baselinesnap@#1\endcsname\relax + \ifdim\pal@yytmp>\pal@yy\repeat + \else + \ifdim\dimexpr\pal@yytmp+\csname pal@breakabletext@baselinesnap@#1\endcsname\relax<\pal@yy + \loop + \pal@yytmp=\dimexpr\pal@yytmp+\csname pal@breakabletext@baselinesnap@#1\endcsname\relax + \ifdim\dimexpr\pal@yytmp+\csname pal@breakabletext@baselinesnap@#1\endcsname\relax<\pal@yy\repeat + \fi + \fi + \pal@yy=\pal@yytmp + \fi + \fi \width=\dimexpr(\pal@xx - \pal@x)\relax \height=\dimexpr(\pal@yy - \pal@y)\relax \pal@textboxwidth=\dimexpr(\pal@xx - \pal@x)\relax @@ -1887,6 +2140,7 @@ \pal@checkvisibility \ifpal@isvisible \ifcsname pal@textarray@#1@index\endcsname + \global\expandafter\edef\csname pal@breakabletext@breakat@#1\endcsname{\csname pal@breakabletext@breakat@#1\endcsname/\the\height} \global\expandafter\advance\csname pal@textarray@#1@index\endcsname by 1% \pal@y=\dimexpr\pal@yy-\pal@textboxheight\relax @@ -2078,13 +2332,14 @@ } \def\pal@drawshadow{ \pal@ifshadow{ - \xdef\pal@shadowid{shadow-\pal@defaultshadowsize-\pal@defaultshadowcolor-\pal@defaultshadowopacity-\the\numexpr\pal@frameshadowwidth\relax-\the\numexpr\pal@frameshadowheight\relax-\the\numexpr\pal@frameshadowradius\relax-\the\numexpr\pal@frameshadowborder\relax} + \convertcolorspec{named}{\pal@defaultshadowcolor}{RGB}\pal@colortmp + \xdef\pal@shadowid{shadow-\pal@defaultshadowsize-\pal@colortmp-\pal@defaultshadowopacity-\the\numexpr\pal@frameshadowwidth\relax-\the\numexpr\pal@frameshadowheight\relax-\the\numexpr\pal@frameshadowradius\relax-\the\numexpr\pal@frameshadowborder\relax} \IfFileExists{./cache/\pal@shadowid/s.pdf}{ \put(\pal@dimentonumber{\dimexpr\pal@x-5cm-\pal@frameshadowoffsetx+\pal@defaultshadowxshift\relax},\pal@dimentonumber{\dimexpr\pal@y-5cm-\pal@frameshadowoffsety-\pal@defaultshadowyshift\relax}){% \includegraphics[width=\pal@frameshadowwidth]{cache/\pal@shadowid/s.pdf} } }{ - \pal@makeshadow{\pal@shadowid} + \pal@makeshadow{\pal@shadowid}{\pal@colortmp} \IfFileExists{./cache/\pal@shadowid/s.pdf}{ \put(\pal@dimentonumber{\dimexpr\pal@x-5cm-\pal@frameshadowoffsetx+\pal@defaultshadowxshift\relax},\pal@dimentonumber{\dimexpr\pal@y-5cm-\pal@frameshadowoffsety-\pal@defaultshadowyshift\relax}){% \includegraphics[width=\pal@frameshadowwidth]{cache/\pal@shadowid/s.pdf} @@ -2550,11 +2805,11 @@ \ifx\pal@pagecolor\pal@emptystring \else \begingroup - \margin=\pal@null - \topmargin=\pal@null - \bottommargin=\pal@null - \innermargin=\pal@null - \outermargin=\pal@null + \margin=-1pt + \topmargin=-1pt + \bottommargin=-1pt + \innermargin=\ifpal@fanfold\pal@null\else-1pt\fi + \outermargin=-1pt \setgrid{{{1}}} \ifx\pal@pagecolormodel\pal@emptystring \else @@ -2596,6 +2851,7 @@ \global\let\pal@defaultshadowxshift\pal@defaultshadowxshift \global\let\pal@defaultshadowyshift\pal@defaultshadowyshift \global\let\pal@pagegraphicoptionscale\pal@pagegraphicoptionscale + \global\let\pal@pagegraphicoptionorientation\pal@pagegraphicoptionorientation \global\let\pal@pagegraphicoptionvpos\pal@pagegraphicoptionvpos \global\let\pal@pagegraphicoptionhpos\pal@pagegraphicoptionhpos \global\let\pal@pagegraphicoptionunsharp\pal@pagegraphicoptionunsharp @@ -2782,6 +3038,17 @@ \else \def\pal@pagegraphic{\pal@backcoveroptionpagegraphicfile} \def\pal@pagegraphicoptionscale{\pal@backcoveroptionpagegraphicscale} + \def\pal@pagegraphicoptionorientation{\pal@backcoveroptionpagegraphicorientation} + \ifpal@backcoveroptionpagegraphichflip + \pal@pagegraphicoptionhfliptrue + \else + \pal@pagegraphicoptionhflipfalse + \fi + \ifpal@backcoveroptionpagegraphicvflip + \pal@pagegraphicoptionvfliptrue + \else + \pal@pagegraphicoptionvflipfalse + \fi \def\pal@pagegraphicoptionvpos{\pal@backcoveroptionpagegraphicvpos} \def\pal@pagegraphicoptionhpos{\pal@backcoveroptionpagegraphichpos} \def\pal@pagegraphicoptionunsharp{\pal@backcoveroptionpagegraphicunsharp} @@ -2970,6 +3237,9 @@ \ifdefined\pal@pagegraphicoptionscale \let\pal@backcoveroptionpagegraphicscale\pal@pagegraphicoptionscale \fi + \ifdefined\pal@pagegraphicoptionorientation + \let\pal@backcoveroptionpagegraphicorientation\pal@pagegraphicoptionorientation + \fi \ifdefined\pal@pagegraphicoptionhpos \let\pal@backcoveroptionpagegraphichpos\pal@pagegraphicoptionhpos \fi @@ -3299,7 +3569,7 @@ \ifnum\pal@contentcounter=\pal@placeholdercounter \def\pal@currentplaceholdertype{graphic} \def\pal@currentplaceholderoptions{} - \pgfkeys{graphic,file={#2},scale=1,vpos=0.5,hpos=0.5,unsharp=\pal@unsharp,#1} + \pgfkeys{graphic,file={#2},scale=1,orientation=1,vpos=0.5,hpos=0.5,unsharp=\pal@unsharp,#1} \ifcsname pal@graphic@#2\endcsname% \csname pal@graphic@#2\endcsname[2]{#1}% \fi @@ -3402,7 +3672,7 @@ \csname pal@graphic@##2\endcsname[2]{##1} \else \ifpal@template\else - \pgfkeys{graphic,file={##2},scale=1,vpos=0.5,hpos=0.5,unsharp=\pal@unsharp,##1} + \pgfkeys{graphic,file={##2},scale=1,orientation=1,vpos=0.5,hpos=0.5,unsharp=\pal@unsharp,##1} \fi \fi \fi @@ -3546,6 +3816,12 @@ \fi } \AtEndDocument{ + \ifnum\pal@breakabletextindex>0 + \loop + \advance\pal@breakabletextindex by -1 + \immediate\write\@auxout{\gdef\string\pal@breakable@\csname pal@breakabletext@name@\the\pal@breakabletextindex\endcsname{\csname pal@breakabletext@breakat@\csname pal@breakabletext@name@\the\pal@breakabletextindex\endcsname\endcsname}} + \ifnum\pal@breakabletextindex>0\repeat + \fi \ifpal@beginleft \ifpal@leftpage \pal@hasoddnumberofpagestrue @@ -3646,9 +3922,17 @@ \pal@errmsg@magicknotinstalled{Ppi not calculated} \else \ifdim\pal@originalgraphicwidth<\pal@originalgraphicheight - \pgfmathqparse{(\pal@originalgraphicwidth - \pal@cropleft - \pal@cropright) / \pal@originalgraphicwidth * \pal@graphicsize pt / \the\width * 72.27pt} + \ifnum\pal@graphicoptionorientation<5 + \pgfmathqparse{(\pal@originalgraphicwidth - \pal@cropleft - \pal@cropright) / \pal@originalgraphicwidth * \pal@graphicsize pt / \the\width * 72.27pt} + \else + \pgfmathqparse{(\pal@originalgraphicheight - \pal@croptop - \pal@cropbottom) / \pal@originalgraphicheight * \pal@graphicsize pt / \the\height * 72.27pt} + \fi \else - \pgfmathqparse{(\pal@originalgraphicheight - \pal@croptop - \pal@cropbottom) / \pal@originalgraphicheight * \pal@graphicsize pt / \the\height * 72.27pt} + \ifnum\pal@graphicoptionorientation<5 + \pgfmathqparse{(\pal@originalgraphicheight - \pal@croptop - \pal@cropbottom) / \pal@originalgraphicheight * \pal@graphicsize pt / \the\height * 72.27pt} + \else + \pgfmathqparse{(\pal@originalgraphicwidth - \pal@cropleft - \pal@cropright) / \pal@originalgraphicwidth * \pal@graphicsize pt / \the\width * 72.27pt} + \fi \fi \pgfmathint{\pgfmathresult} @@ -3659,7 +3943,11 @@ \immediate\closein\pal@scriptresult } \newcommand\pal@optimizegraphic[2]{ - \immediate\openin\pal@scriptresult={|pagelayoutapi optimize\% "#1#2" \% "\pal@filename" \%\pal@optimizedext\%\the\numexpr\pal@originalgraphicwidth\%\the\numexpr\pal@originalgraphicheight\%\the\numexpr\pal@cropleft\%\the\numexpr\pal@cropright\%\the\numexpr\pal@croptop\%\the\numexpr\pal@cropbottom\%\the\numexpr\pal@density\%\the\numexpr\width\%\the\numexpr\height\%\pal@downsamplethreshold\%\pal@graphicoptionunsharp\%\pal@quality} + \ifnum\pal@graphicoptionorientation<5 + \immediate\openin\pal@scriptresult={|pagelayoutapi optimize\% "#1#2" \% "\pal@filename" \%\pal@optimizedext\%\the\numexpr\pal@originalgraphicwidth\%\the\numexpr\pal@originalgraphicheight\%\the\numexpr\pal@cropleft\%\the\numexpr\pal@cropright\%\the\numexpr\pal@croptop\%\the\numexpr\pal@cropbottom\%\the\numexpr\pal@density\%\the\numexpr\width\%\the\numexpr\height\%\pal@downsamplethreshold\%\pal@graphicoptionunsharp\%\pal@quality} + \else + \immediate\openin\pal@scriptresult={|pagelayoutapi optimize\% "#1#2" \% "\pal@filename" \%\pal@optimizedext\%\the\numexpr\pal@originalgraphicheight\%\the\numexpr\pal@originalgraphicwidth\%\the\numexpr\pal@cropbottom\%\the\numexpr\pal@croptop\%\the\numexpr\pal@cropleft\%\the\numexpr\pal@cropright\%\the\numexpr\pal@density\%\the\numexpr\height\%\the\numexpr\width\%\pal@downsamplethreshold\%\pal@graphicoptionunsharp\%\pal@quality} + \fi \ifeof\pal@scriptresult \pal@errmsg@shellaccessforbidden{File not optimized} \else @@ -3676,8 +3964,8 @@ \fi \immediate\closein\pal@scriptresult } -\newcommand\pal@makeshadow[1]{ - \immediate\openin\pal@scriptresult={|pagelayoutapi makeshadow\%#1\%\pal@defaultshadowsize\%\pal@defaultshadowopacity\%\pal@defaultshadowcolor\%\the\pal@frameshadowwidth\%\the\pal@frameshadowheight\%\the\pal@frameshadowframewidth\%\the\pal@frameshadowframeheight\%\the\pal@frameshadowborder\%\the\pal@frameshadowradius} +\newcommand\pal@makeshadow[2]{ + \immediate\openin\pal@scriptresult={|pagelayoutapi makeshadow\%#1\%\pal@defaultshadowsize\%\pal@defaultshadowopacity\%#2\%\the\pal@frameshadowwidth\%\the\pal@frameshadowheight\%\the\pal@frameshadowframewidth\%\the\pal@frameshadowframeheight\%\the\pal@frameshadowborder\%\the\pal@frameshadowradius} \ifeof\pal@scriptresult \edef\pal@processresult{\pal@err@shellaccessforbidden} \pal@errmsg@shellaccessforbidden{Shadow not created} @@ -3724,7 +4012,11 @@ \immediate\closein\pal@scriptresult } \newcommand\pal@addtobatchlist[2]{ - \global\edef\pal@batchlist{\pal@batchlist\% "#1#2" \% "\pal@filename" \%\pal@optimizedext\%\the\numexpr\pal@originalgraphicwidth\%\the\numexpr\pal@originalgraphicheight\%\the\numexpr\pal@cropleft\%\the\numexpr\pal@cropright\%\the\numexpr\pal@croptop\%\the\numexpr\pal@cropbottom\%\the\numexpr\pal@density\%\the\numexpr\width\%\the\numexpr\height\%\pal@downsamplethreshold\%\pal@graphicoptionunsharp\%\pal@quality} + \ifnum\pal@graphicoptionorientation<5 + \global\edef\pal@batchlist{\pal@batchlist\% "#1#2" \% "\pal@filename" \%\pal@optimizedext\%\the\numexpr\pal@originalgraphicwidth\%\the\numexpr\pal@originalgraphicheight\%\the\numexpr\pal@cropleft\%\the\numexpr\pal@cropright\%\the\numexpr\pal@croptop\%\the\numexpr\pal@cropbottom\%\the\numexpr\pal@density\%\the\numexpr\width\%\the\numexpr\height\%\pal@downsamplethreshold\%\pal@graphicoptionunsharp\%\pal@quality} + \else + \global\edef\pal@batchlist{\pal@batchlist\% "#1#2" \% "\pal@filename" \%\pal@optimizedext\%\the\numexpr\pal@originalgraphicheight\%\the\numexpr\pal@originalgraphicwidth\%\the\numexpr\pal@cropbottom\%\the\numexpr\pal@croptop\%\the\numexpr\pal@cropleft\%\the\numexpr\pal@cropright\%\the\numexpr\pal@density\%\the\numexpr\height\%\the\numexpr\width\%\pal@downsamplethreshold\%\pal@graphicoptionunsharp\%\pal@quality} + \fi } \newcommand\pal@batchoptimize{ \immediate\openin\pal@scriptresult={|pagelayoutapi batchoptimize\pal@batchlist} diff --git a/macros/latex/contrib/preview/preview.dtx b/macros/latex/contrib/preview/preview.dtx index c68ea26425..f8b72e0522 100644 --- a/macros/latex/contrib/preview/preview.dtx +++ b/macros/latex/contrib/preview/preview.dtx @@ -3,7 +3,7 @@ %% Developed as part of AUCTeX <URL:https://www.gnu.org/software/auctex/>. % % Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, -% 2010, 2017-2023 Free Software Foundation +% 2010, 2017-2024 Free Software Foundation % % This program is free software; you can redistribute it and/or modify % it under the terms of the GNU General Public License as published by @@ -437,8 +437,8 @@ %<*style> %<*!active> \NeedsTeXFormat{LaTeX2e} -\def\pr@version{13.2} -\def\pr@date{2023/01/17} +\def\pr@version{13.3} +\def\pr@date{2024/01/17} \ProvidesPackage{preview}[\pr@date\space \pr@version\space (AUCTeX/preview-latex)] % \end{macrocode} % \end{macro} diff --git a/macros/latex/contrib/preview/preview.pdf b/macros/latex/contrib/preview/preview.pdf Binary files differindex 294804eae8..4728d12e42 100644 --- a/macros/latex/contrib/preview/preview.pdf +++ b/macros/latex/contrib/preview/preview.pdf diff --git a/macros/latex/contrib/pythonimmediate/README b/macros/latex/contrib/pythonimmediate/README index 43c413e62c..9a6d7b9e1a 100644 --- a/macros/latex/contrib/pythonimmediate/README +++ b/macros/latex/contrib/pythonimmediate/README @@ -7,7 +7,7 @@ Report bugs at https://github.com/user202729/pythonimmediate-tex ======== -Copyright 2022-2023 user202729 +Copyright 2022-2024 user202729 This work may be distributed and/or modified under the conditions of the LaTeX Project Public License (LPPL), either version 1.3c of this license or diff --git a/macros/latex/contrib/pythonimmediate/pythonimmediate.pdf b/macros/latex/contrib/pythonimmediate/pythonimmediate.pdf Binary files differindex 5b8bf34442..cfcc852434 100644 --- a/macros/latex/contrib/pythonimmediate/pythonimmediate.pdf +++ b/macros/latex/contrib/pythonimmediate/pythonimmediate.pdf diff --git a/macros/latex/contrib/pythonimmediate/pythonimmediate.sty b/macros/latex/contrib/pythonimmediate/pythonimmediate.sty index 4556973831..1e632aba96 100644 --- a/macros/latex/contrib/pythonimmediate/pythonimmediate.sty +++ b/macros/latex/contrib/pythonimmediate/pythonimmediate.sty @@ -1,5 +1,5 @@ % File: pythonimmediate.sty -% Copyright 2022-2023 user202729 +% Copyright 2022-2024 user202729 % % This work may be distributed and/or modified under the conditions of the % LaTeX Project Public License (LPPL), either version 1.3c of this license or @@ -12,9 +12,10 @@ % % The Current Maintainer of this work is user202729. -\ProvidesExplPackage{pythonimmediate}{2023/03/07}{0.4.0}{Library to run Python code} +\ProvidesExplPackage{pythonimmediate}{2024/01/18}{0.5.0}{Library to run Python code} \RequirePackage{saveenv} +\PassOptionsToPackage{abspath}{currfile} % try to enable abspath if possible (i.e. if package isn't loaded) but otherwise don't give option-clash error \RequirePackage{currfile} \RequirePackage{l3keys2e} \RequirePackage{precattl} @@ -110,11 +111,14 @@ \bool_if:NTF \_pythonimmediate_child_process { \newwrite \_pythonimmediate_write_file - %\immediate\openout \_pythonimmediate_write_file=symlink-to-stderr.txt~ - % tried this method, it seems to work except that it's buffered when stderr is redirected to a file... - \immediate\openout \_pythonimmediate_write_file=|"\_pythonimmediate_python_executable \space \_pythonimmediate_python_flags \space -m ~ pythonimmediate.copy_to_stderr"~ - - + \sys_if_engine_luatex:TF { + % use Lua to write to stderr + \directlua{ (require "pythonimmediate_helper")() } + } { + %\immediate\openout \_pythonimmediate_write_file=symlink-to-stderr.txt~ + % tried this method, it seems to work except that it's buffered when stderr is redirected to a file... + \immediate\openout \_pythonimmediate_write_file=|"\_pythonimmediate_python_executable \space \_pythonimmediate_python_flags \space -m ~ pythonimmediate.copy_to_stderr"~ + } } { \sys_if_engine_luatex:TF { diff --git a/macros/latex/contrib/pythonimmediate/pythonimmediate.tex b/macros/latex/contrib/pythonimmediate/pythonimmediate.tex index 539a770fc2..9e6b0c1d8b 100644 --- a/macros/latex/contrib/pythonimmediate/pythonimmediate.tex +++ b/macros/latex/contrib/pythonimmediate/pythonimmediate.tex @@ -1,4 +1,4 @@ -\ProvidesFile{pythonimmediate.tex}[2023/03/07 0.4.0 Library to run Python code] +\ProvidesFile{pythonimmediate.tex}[2024/01/18 0.5.0 Library to run Python code] \RequirePackage{fvextra} \documentclass{l3doc} \usepackage{tikz} @@ -6,7 +6,8 @@ \usetikzlibrary{arrows.meta} \EnableCrossrefs \CodelineIndex -\fvset{breaklines=true,gobble=0,tabsize=4,frame=single,numbers=left,numbersep=3pt} +\fvset{breaklines=true,breakanywhere,gobble=0,tabsize=4,frame=single,numbers=left,numbersep=3pt} +\usepackage{cleveref} \AtBeginDocument{\DeleteShortVerb\"} % https://tex.stackexchange.com/a/650966/250119 \MakeOuterQuote{"} @@ -17,6 +18,7 @@ \begin{document} +\hfuzz=15pt % hack to make quotes inside |...| straight \edef\temp{\def\noexpand|{\noexpand\Verb\string|}}\temp @@ -53,7 +55,7 @@ In addition to the \LaTeX\ package, you need the Python \pkg{pythonimmediate-tex installation instruction can be found at \url{https://pypi.org/project/pythonimmediate-tex/}. Note that not all \TeX\ package versions are compatible with all Python package versions. -This \TeX\ package is compatible with Python package version |0.4.0|. +This \TeX\ package is compatible with Python package version |0.6.0|. Remember to enable unrestricted\footnote{ There's little point in supporting restricted mode, since it's possible to execute arbitrary shell commands in Python anyway. @@ -73,39 +75,43 @@ Instruction: \begin{itemize} \item Download the following files and place it in the root folder of Overleaf: \begin{itemize} - \item \file{saveenv.sty} - \item \file{precattl.sty} \item \file{pythonimmediate.sty} \item \file{pythonimmediate_helper.lua} - \item \file{pythonimmediate-tex-0.4.0.zip} + \item \file{pythonimmediate-tex-0.6.0.zip} \end{itemize} - The |0.4.0| part should be replaced with the desired version + The |0.6.0| part should be replaced with the desired version of the Python package. The |.sty| files can be downloaded from CTAN at - \url{https://ctan.org/pkg/saveenv}, - \url{https://ctan.org/pkg/precattl}, - \url{https://ctan.org/pkg/pythonimmediate} - respectively. + \url{https://ctan.org/pkg/pythonimmediate}. The |.zip| file containing Python source code can be downloaded from PyPI: \url{https://pypi.org/project/pythonimmediate-tex/\#files}. + Remark: Currently the \LaTeX\ package version 0.4.0 is included in \TeX\ Live 2023, you would need to download \LaTeX\ version 0.5.0 from CTAN. + + \item In older \TeX\ Live versions (2022 or less), you will in addition need to download the following files: + \begin{itemize} + \item \file{saveenv.sty} (from \url{https://ctan.org/pkg/saveenv}), + \item \file{precattl.sty} (from \url{https://ctan.org/pkg/precattl}). + \end{itemize} + Also place in the root folder of Overleaf. + \item Write the following in the preamble: \begin{verbatim} \usepackage[abspath]{currfile} -\usepackage[python-executable={PYTHONPATH=pythonimmediate-tex-0.4.0.zip/pythonimmediate-tex-0.4.0/ python3},args={--mode=unnamed-pipe}]{pythonimmediate} +\usepackage[python-executable={PYTHONPATH=pythonimmediate-tex-0.6.0.zip/pythonimmediate-tex-0.6.0/ python3},args={--mode=unnamed-pipe}]{pythonimmediate} \end{verbatim} -As above, replace both occurrences of |0.4.0| with the downloaded version specified in the zip file above. +As above, replace both occurrences of |0.6.0| with the downloaded version specified in the zip file above. -Refer to \ref{troubleshoot-source-file-not-found} for explanation of the |abspath| option. +Refer to \cref{troubleshoot-source-file-not-found} for explanation of the |abspath| option. \end{itemize} For some unknown reason in the default mode on Overleaf (|\nonstopmode|), when there's an error the log file might be truncated, so in that case consider writing |\errorstopmode|. -Refer to \ref{troubleshoot-Python-error} to read the error traceback in case of Python error. +Refer to \cref{troubleshoot-Python-error} to read the error traceback in case of Python error. Some construct inside the |pycode| block might make the code editor on Overleaf report an error, even though the code is valid. Refer to \url{https://www.overleaf.com/learn/how-to/Code_Check#Code_Check_Limitations}. @@ -131,7 +137,7 @@ The documentation is also available at The name/path to the Python executable. Default to |python3|. Can also be used to provide environment variables to the Python process. -An example how to do that is explained in \ref{installation-on-overleaf}. +An example how to do that is explained in \cref{installation-on-overleaf}. \DescribeOption{python-flags=} Flags to be passed to the Python interpreter. For example pass |-O| to disable assertions. @@ -202,7 +208,7 @@ Execute some Python code provided as an argument (the argument will be interpret The command is not expandable -- roughly speaking, you can only use this at "top level". -Any output (as described in \ref{print-to-TeX}) will be typesetted. +Any output (as described in \cref{print-to-TeX}) will be typesetted. The difference between |\py| and |\pyc| is that the argument of |\py| should be a Python expression (suitable for passing into |eval()| Python function) while the argument of |\pyc| should be a Python @@ -217,7 +223,7 @@ Therefore, \end{itemize} \DescribeMacro{\pycq} -Same as above, but output (\ref{print-to-TeX}) will not be typesetted. +Same as above, but output (\cref{print-to-TeX}) will not be typesetted. \DescribeMacro{\pyfile} Given an argument being the file name, execute that file. @@ -240,7 +246,7 @@ pythonimmediate.print("123") Special note: white spaces at the end of lines are preserved. -Any output (as described in \ref{print-to-TeX}) will be typesetted. +Any output (as described in \cref{print-to-TeX}) will be typesetted. \DescribeEnv{pycodeq} Same as above, but output will not be typesetted. @@ -366,7 +372,7 @@ $f(x)=1$, $f_i(x)=2$, $f_{ij}(x)=3$ \DescribePython{.get_arg_estr()} \DescribePython{.get_optional_arg_estr()} Similar to some functions above, except that the argument is fully expanded and "escapes" of common characters are handled correctly, -similar to how |\py| command (\ref{py-command}) reads its arguments. +similar to how |\py| command (\cref{py-command}) reads its arguments. \DescribePython{.execute()} Takes a string and execute it immediately. (so that any |.execute()| will be executed before any |.print_TeX()|) @@ -398,6 +404,11 @@ and as the second line throws an error, the Python traceback will point to that \section{Troubleshooting} +\subsection{"Incompatible TeX package version" error message}\label{troubleshoot-incompatible-version} +Exactly what it means. You can upgrade both the Python package and the TeX package to the latest version. + +Alternatively, you can also \emph{downgrade} whichever package that is newer. For instance, Python package version 0.5.0 (download from \url{https://pypi.org/project/pythonimmediate-tex/0.5.0/#files}) is compatible with \LaTeX\ package version 0.4.0. + \subsection{"Source file not found!" error message}\label{troubleshoot-source-file-not-found} In order to obtain the exact code with trailing spaces and produce error traceback diff --git a/macros/latex/contrib/pythonimmediate/pythonimmediate_helper.lua b/macros/latex/contrib/pythonimmediate/pythonimmediate_helper.lua index 8590233242..f5c54c1239 100644 --- a/macros/latex/contrib/pythonimmediate/pythonimmediate_helper.lua +++ b/macros/latex/contrib/pythonimmediate/pythonimmediate_helper.lua @@ -1,20 +1,125 @@ return function(cmd) - local process = io.popen(cmd, "w") + -- as mentioned in the .sty file this allows explicit flush after each write + -- it's not easy to eliminate having to spawn 2 Python processes even with Lua https://stackoverflow.com/questions/8716527/interactive-popen-lua-call + + + -- if this is a child process, should write to stderr, in which case cmd will be nil + local send_content + if cmd==nil then + send_content=function(str) + io.stderr:write(str.."\n") + io.stderr:flush() + end + else + process = io.popen(cmd, "w") + send_content=function(str) + process:write(str.."\n") + process:flush() + end + end local function_table=lua.get_functions_table() -- https://tex.stackexchange.com/questions/632408/how-can-i-exclude-tex-macros-when-counting-a-strings-characters-in-lua/632464?noredirect=1#comment1623008_632464 this only work in Lua 5.3 or assume it's allocated sequentially local send_content_index=#function_table+1 function_table[send_content_index]=function() - process:write(token.scan_string()) - process:write("\n") - process:flush() - end - - local close_index=#function_table+1 - function_table[close_index]=function() - process:close() - end - - tex.print([[\protected \luadef \_pythonimmediate_send_content:e ]] .. send_content_index .. [[\protected \luadef \_pythonimmediate_close_write: ]] .. close_index .. [[\relax]]) - end + send_content(token.scan_string()) + end + + local close_index=#function_table+1 + function_table[close_index]=function() + process:close() + end + + local bgroup=token.create(0x7b, 1) + local egroup=token.create(0x7d, 2) + + token.put_next( + bgroup, + token.create("ifodd"), + token.create(0x31, 12), + token.create("fi"), + egroup + ) + local frozen_relax_tok=token.scan_toks(false, true)[1].tok + local null_cs_tok=0x20000000 -- \csname\endcsname + + local cmdname_to_type={ + left_brace="1", + right_brace="2", + math_shift="3", + tab_mark ="4", + mac_param ="6", + sup_mark ="7", + sub_mark ="8", + spacer ="A", + letter ="B", + other_char="C", + } + local function serialize(tl) + local result={} + for _, v in ipairs(tl) do + local s -- serialized result of v + local function handle_character(cat, index, char) + if index<32 then + s="^"..cat..utf8.char(index+64) + else + s=cat..char + end + end + if v.csname~=nil then + if v.active then + handle_character("D", utf8.codepoint(v.csname), v.csname) + elseif v.tok==frozen_relax_tok then + s="R" + elseif v.tok==null_cs_tok then + s="\\ " + else + local c=v.csname + s="" + for i=1, #c do + if c:byte(i)<33 then s=s.."*" end + end + s="\\" + for i=1, #c do + if c:byte(i)<33 then + s=s.." "..string.char(c:byte(i)+64) + else + s=s..c:sub(i,i) + end + end + s=s.." " + end + else + assert(cmdname_to_type[v.cmdname]~=nil) + handle_character(cmdname_to_type[v.cmdname], v.mode, utf8.char(v.mode)) + end + result[#result+1]=s + end + return table.concat(result) + end + + local serialize_index=#function_table+1 + function_table[serialize_index]=function() + local result_token=token.get_next() + assert(result_token.csname~=nil and not result_token.active) + local tl=token.scan_toks() + --token.set_macro(-2, result_token.csname, table.concat(result)) + tex.sprint{token.create "def", result_token, bgroup} + tex.sprint(-2, serialize(tl)) + tex.sprint(egroup) + end + + local send_balanced_index=#function_table+1 + function_table[send_balanced_index]=function() + local tl=token.scan_toks() + send_content(serialize(tl)) + end + + tex.print( + [[\protected \luadef \_pythonimmediate_send_content:e ]] .. send_content_index .. + [[\protected \luadef \_pythonimmediate_close_write: ]] .. close_index .. + [[\protected \luadef \_pythonimmediate_tlserialize_nodot_unchecked:Nn ]] .. serialize_index .. + [[\protected \luadef \_pythonimmediate_send_balanced_tl:n ]] .. send_balanced_index .. + [[\relax]]) +end diff --git a/macros/latex/contrib/runcode/README b/macros/latex/contrib/runcode/README index 6075685680..4216dbceea 100644 --- a/macros/latex/contrib/runcode/README +++ b/macros/latex/contrib/runcode/README @@ -1,4 +1,4 @@ -LaTeX Package: runcode 2023/09/08 v2.2 +LaTeX Package: runcode 2024/01/12 v2.3 ---------------------------------------- The runcode package enables the execution of source code (e.g., R, Julia, Matlab, shell, Python, etc.) and embed the results in the pdf file diff --git a/macros/latex/contrib/runcode/runcode.pdf b/macros/latex/contrib/runcode/runcode.pdf Binary files differindex 0a2d35f5e0..9d91e7e7c9 100644 --- a/macros/latex/contrib/runcode/runcode.pdf +++ b/macros/latex/contrib/runcode/runcode.pdf diff --git a/macros/latex/contrib/runcode/runcode.sty b/macros/latex/contrib/runcode/runcode.sty index 06c3d346e0..0e1f8014d3 100644 --- a/macros/latex/contrib/runcode/runcode.sty +++ b/macros/latex/contrib/runcode/runcode.sty @@ -4,7 +4,7 @@ % % This package is based on an ongoing work by Haim Bar and HaiYing Wang, and comments and questions are welcome! -\ProvidesPackage{runcode}[2023/09/08 runcode v2.2] +\ProvidesPackage{runcode}[2024/01/12 runcode v2.3] \def \langs {} @@ -424,10 +424,9 @@ \newcommand{\runcmd}[2] {python3 -c 'from talk2stat.talk2stat import client; client("./","#1",#2)'} -% R -% It will be used as a template for other languages -\newcommand{\LANG}{R} -\newcommand{\LANGcmd}{R} +% a generic LANG - it will be used as a template for other languages +\newcommand{\LANG}{LANG} +\newcommand{\LANGcmd}{LANGcmd} \expandafter\NewDocumentCommand\csname run\LANG\endcsname {O{} m m O{}} @@ -451,6 +450,7 @@ {\inln{\runcmd{\LANGcmd}{"\tmpname.txt"}}{#2}[#3][#4]} } {\inln{#1}{#2}[#3][#4]} + \unskip\unskip\unskip } \expandafter\NewDocumentCommand\csname run\LANG Chunk\endcsname @@ -459,46 +459,59 @@ {\csname run\LANG IncOut\endcsname[#1]{\generated/#2-#3.txt}[#4][#2-#3][#6]} } +% R +\NewDocumentCommand{\runR}{O{} m m O{}} +{{\renewcommand{\LANGcmd}{R}\runLANG[#1]{#2}{#3}[#4]}} + +\NewDocumentCommand{\runRIncOut}{O{} m O{} O{} O{vbox}} +{{\renewcommand{\LANGcmd}{R}\runLANGIncOut[#1]{#2}[#3][#4][#5]}} + +\NewDocumentCommand{\inlnR}{O{} m O{} O{inline}} +{{\renewcommand{\LANGcmd}{R}\inlnLANG[#1]{#2}[#3][#4]}} + +\NewDocumentCommand{\runRChunk}{O{} m m O{} O{} O{vbox}} +{{\renewcommand{\LANGcmd}{R}\runLANGChunk[#1]{#2}{#3}[#4][#5][#6]}} + % Julia \NewDocumentCommand{\runJulia}{O{} m m O{}} -{\renewcommand{\LANGcmd}{julia} \runR[#1]{#2}{#3}[#4]} +{{\renewcommand{\LANGcmd}{julia}\runLANG[#1]{#2}{#3}[#4]}} \NewDocumentCommand{\runJuliaIncOut}{O{} m O{} O{} O{vbox}} -{\renewcommand{\LANGcmd}{julia} \runRIncOut[#1]{#2}[#3][#4][#5]} +{{\renewcommand{\LANGcmd}{julia}\runLANGIncOut[#1]{#2}[#3][#4][#5]}} \NewDocumentCommand{\inlnJulia}{O{} m O{} O{inline}} -{\renewcommand{\LANGcmd}{julia} \inlnR[#1]{#2}[#3][#4]} +{{\renewcommand{\LANGcmd}{julia}\inlnLANG[#1]{#2}[#3][#4]}} \NewDocumentCommand{\runJuliaChunk}{O{} m m O{} O{} O{vbox}} -{\renewcommand{\LANGcmd}{julia} \runRChunk[#1]{#2}{#3}[#4][#5][#6]} +{{\renewcommand{\LANGcmd}{julia}\runLANGChunk[#1]{#2}{#3}[#4][#5][#6]}} % Matlab \NewDocumentCommand{\runMatLab}{O{} m m O{}} -{\renewcommand{\LANGcmd}{matlab} \runR[#1]{#2}{#3}[#4]} +{{\renewcommand{\LANGcmd}{matlab}\runLANG[#1]{#2}{#3}[#4]}} \NewDocumentCommand{\runMatLabIncOut}{O{} m O{} O{} O{vbox}} -{\renewcommand{\LANGcmd}{matlab} \runRIncOut[#1]{#2}[#3][#4][#5]} +{{\renewcommand{\LANGcmd}{matlab}\runLANGIncOut[#1]{#2}[#3][#4][#5]}} \NewDocumentCommand{\inlnMatLab}{O{} m O{} O{inline}} -{\renewcommand{\LANGcmd}{matlab} \inlnR[#1]{#2}[#3][#4]} +{{\renewcommand{\LANGcmd}{matlab}\inlnLANG[#1]{#2}[#3][#4]}} \NewDocumentCommand{\runMatLabChunk}{O{} m m O{} O{} O{vbox}} -{\renewcommand{\LANGcmd}{matlab} \runRChunk[#1]{#2}{#3}[#4][#5][#6]} +{{\renewcommand{\LANGcmd}{matlab}\runLANGChunk[#1]{#2}{#3}[#4][#5][#6]}} % Python \NewDocumentCommand{\runPython}{O{} m m O{}} -{\renewcommand{\LANGcmd}{python} \runR[#1]{#2}{#3}[#4]} +{{\renewcommand{\LANGcmd}{python}\runLANG[#1]{#2}{#3}[#4]}} \NewDocumentCommand{\runPythonIncOut}{O{} m O{} O{} O{vbox}} -{\renewcommand{\LANGcmd}{python} \runRIncOut[#1]{#2}[#3][#4][#5]} +{{\renewcommand{\LANGcmd}{python}\runLANGIncOut[#1]{#2}[#3][#4][#5]}} \NewDocumentCommand{\inlnPython}{O{} m O{} O{inline}} -{\renewcommand{\LANGcmd}{python} \inlnR[#1]{#2}[#3][#4]} +{{\renewcommand{\LANGcmd}{python}\inlnLANG[#1]{#2}[#3][#4]}} \NewDocumentCommand{\runPythonChunk}{O{} m m O{} O{} O{vbox}} -{\renewcommand{\LANGcmd}{python} \runRChunk[#1]{#2}{#3}[#4][#5][#6]} +{{\renewcommand{\LANGcmd}{python}\runLANGChunk[#1]{#2}{#3}[#4][#5][#6]}} %%%%%%%% diff --git a/macros/latex/contrib/runcode/runcode.tex b/macros/latex/contrib/runcode/runcode.tex index 23f833bdf5..fb1fd2530e 100644 --- a/macros/latex/contrib/runcode/runcode.tex +++ b/macros/latex/contrib/runcode/runcode.tex @@ -1,4 +1,4 @@ -% LaTeX Package: runcode 2023/09/08 v2.2 +% LaTeX Package: runcode 2024/01/12 v2.3 % % Copyright (C) 2020-2023 by Haim Bar and HaiYing Wang % @@ -49,7 +49,7 @@ package’s github repository, at \url{https://github.com/Ossifragus/runcode}. \end{abstract} \section{Installation} -\label{sec:org6031edc} +\label{sec:orgbc0a4bf} You can simply put the runcode.sty file in the \LaTeX{} project folder. The server mode requires the @@ -65,9 +65,9 @@ compiling a \LaTeX{} document. \section{Usage} -\label{sec:org46d9194} +\label{sec:org6167b11} \subsection{Load the package:} -\label{sec:orgdf4d2a5} +\label{sec:orgc46beda} \begin{minted}[]{latex} \usepackage[options]{runcode} \end{minted} @@ -139,7 +139,7 @@ be customized with \texttt{\textbackslash{}tcbset}, \end{minted} \subsection{Basic commands:} -\label{sec:org1eb4192} +\label{sec:org9029154} \begin{itemize} \item \texttt{\textbackslash{}runExtCode\{Arg1\}\{Arg2\}\{Arg3\}[Arg4]} runs an external code. @@ -223,7 +223,7 @@ default \texttt{label==} and \texttt{===end}. \subsection{Extended commands:} -\label{sec:org2e715a7} +\label{sec:orgf48d3c2} \begin{itemize} \item \texttt{\textbackslash{}runCodeIncOut\{Arg1\}\{Arg2\}[Arg3][Arg4][Arg5]} runs an external code and embeds the output. This is a combination of \texttt{\textbackslash{}runExtCode} and \texttt{\textbackslash{}includeOutput}. @@ -240,7 +240,7 @@ functionality is the same as that of \texttt{Arg3} of \texttt{\textbackslash{}in \end{itemize} \subsection{Language specific shortcuts:} -\label{sec:org04ff6f1} +\label{sec:org506ce7a} Replace \texttt{LANG} with \texttt{Julia}, \texttt{MatLab}, \texttt{Python}, or \texttt{R}, for the \href{https://julialang.org/}{Julia}, \href{https://www.mathworks.com/products/matlab.html}{MatLab}, \href{https://www.python.org/}{Python}, \href{https://www.r-project.org/}{R} language, respectively, for the following commands. @@ -305,8 +305,11 @@ installed via \texttt{pip3 install dill}. \section{Revisions} -\label{sec:orgae938b1} +\label{sec:orgb2671cf} \begin{itemize} +\item v2.3, January 12, 2024: two bug fixes (1. removed an extra space after +\texttt{\textbackslash{}inlnX}; 2. when an underscore appeared inside R code, the tex file would +compile with an error). \item v2.2, September 8, 2023: add \texttt{\textbackslash{}showChunk} basic command and \texttt{\textbackslash{}runLANGChunk} commands for multiple languages. \item v2.1, June 30, 2023: detokenize code which is passed to \texttt{\textbackslash{}inln}. This is @@ -341,7 +344,7 @@ code files, zero bytes in output files.) \end{itemize} \section{Contributing} -\label{sec:org9eb0902} +\label{sec:org3c84ea7} We welcome your contributions to this package by opening issues on GitHub and/or making a pull request. We also appreciate more example documents written using \texttt{runcode}. diff --git a/macros/latex/contrib/unicode-math-input/README b/macros/latex/contrib/unicode-math-input/README index 5533cf6261..c4682e9852 100644 --- a/macros/latex/contrib/unicode-math-input/README +++ b/macros/latex/contrib/unicode-math-input/README @@ -8,7 +8,7 @@ Report bugs at https://github.com/user202729/TeXlib ======== -Copyright 2022-2023 user202729 +Copyright 2022-2024 user202729 This work may be distributed and/or modified under the conditions of the LaTeX Project Public License (LPPL), either version 1.3c of this license or diff --git a/macros/latex/contrib/unicode-math-input/unicode-math-input-script.py b/macros/latex/contrib/unicode-math-input/unicode-math-input-script.py index a3dbbb4625..34fd90ff5b 100644..100755 --- a/macros/latex/contrib/unicode-math-input/unicode-math-input-script.py +++ b/macros/latex/contrib/unicode-math-input/unicode-math-input-script.py @@ -1,6 +1,46 @@ #!/bin/python3 -# This file is not used while TeX is running. It's for generating unicode-math-input-table.tex file only. -# This requires pythonimmediate (not sure which version is compatible but commit 63f94476a5cb11e33db1215a9bf7c17657d9773d on Python 3.10.10 is) +""" +This file is not used while TeX is running. It's for generating unicode-math-input-table.tex file only. +This requires pythonimmediate (not sure which version is compatible but +commit 020068db8a966c138b5b0b93695c0fefdef03d0a on Python 3.11.3 is) + +To generate: run:: + python3 unicode-math-input-script.py > unicode-math-input-table.tex + +How does it work? + +The mapping is determined from multiple sources: + +* The unicode-math package itself, which defines a "command → Unicode character" mapping. + This does not always work because different TeX packages may name the command differently. + +* Synonym table, obtained by looking at STIX's command definition + +* TeX's glyph → unicode mapping (used to facilitate copy-paste in PDF), + e.g. /usr/share/texmf-dist/tex/generic/pdftex/glyphtounicode.tex + This should be good, but is currently not used. Furthermore, not all TeX commands are implemented by + getting a single character from a font... + +How does the Unicode mapping work? + +First there's the `pdftex.map` file, then there's umsa.cmap for msam10.tfm/afm/pfm/pfb/mf (metafont source file) + +/usr/share/texmf-dist/fonts/source/public/amsfonts/symbols/msam10.mf + /usr/share/texmf-dist/fonts/source/public/amsfonts/symbols/asymbols.mf + +/usr/share/texmf-dist/fonts/afm/public/amsfonts/symbols/msam10.afm +→ plaintext-looking file may work + +/usr/share/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm +/usr/share/texmf-dist/fonts/type1/public/amsfonts/symbols/msam10.pfm +/usr/share/texmf-dist/fonts/type1/public/amsfonts/symbols/msam10.pfb + +The glyphtounicode.tex may be a bit problematic... + https://tex.stackexchange.com/questions/66300/how-to-fix-missing-or-incorrect-mappings-from-glyphtounicode-tex + +See also: section 3.2 How to find a table of correspondences? in https://tex.stackexchange.com/a/628285/250119 + +""" from __future__ import annotations @@ -8,7 +48,8 @@ from pythonimmediate.engine import ChildProcessEngine from pythonimmediate.engine import default_engine from pythonimmediate import* import pythonimmediate -from collections import defaultdict +from collections import defaultdict, Counter +from itertools import groupby import os import json import subprocess @@ -25,11 +66,8 @@ print(r'% This file is automatically generated from unicode-math-input-script.py # ======== start a luatex engine -engine=ChildProcessEngine("luatex", env={**os.environ, "hash_extra": "0"}) # https://tex.stackexchange.com/questions/574607/tex-hashtokens-incomplete -default_engine.set_engine(engine) - -Catcode.active("a").meaning_str() +default_engine.set_engine(ChildProcessEngine("luatex", env={**os.environ, "hash_extra": "0"})) """ @@ -93,10 +131,108 @@ for line in lines: assert match unicode_char=chr(int(match[1], 16)) csname=match[2] - #unicode_math_table_.append(Item(unicode_char=unicode_char, csname=csname)) + #unicode_math_table_.append(Item(unicode_char=unicode_char, csname)) unicode_math_table_[unicode_char].append(csname) unicode_math_table={unicode_char: tuple(csnames) for unicode_char, csnames in unicode_math_table_.items()} +# ======== extract unicode-math synonyms + +def control_sequences()->list[str]: + return (lua_try_eval(r""" + do + local s={} + for k, v in pairs(tex.hashtokens()) do + if v:find("^[A-Za-z]+$") then + s[v]=0 + end + end + local t={} + for v, _ in pairs(s) do table.insert(t, v) end + return table.concat(t, "\x00") + end + """) or "").split("\x00") + +extra_synonyms_list: list[list[str]] = [ + ["adots", "iddots"], + ["unicodecdots", "cdots"], # https://github.com/wspr/unicode-math/issues/571 + ["unicodeellipsis", "ldots"], + #["llbracket", "lBrack"], + #["rrbracket", "rBrack"], + ] + + + + +c=control_sequences() +m={x: T[x].meaning_str() for x in c} + +pattern=re.compile(r'\\protected macro:->\\([A-Za-z]+) ?') + +extra_synonyms_list += [[c, match[1]] for c, m in m.items() + if (match:=pattern.fullmatch(m)) + ] + +def same_meaning_control_sequences(meaning: dict[str, str])->list[list[str]]: + return [ + l + for m, l0 in groupby(sorted(c, key=lambda x: meaning[x]), lambda x: meaning[x]) + if m!="undefined" + for l in [[*l0]] + if len(l)>=2 + ] + +extra_synonyms_list += same_meaning_control_sequences(m) + +# ======== extract amsmath&stix synonyms + + +m_values=[] +for preamble in [ +r""" +\documentclass{article} +\usepackage{amsmath} +\usepackage{amssymb} +\usepackage{amsfonts} +\begin{document} +""", +r""" +\documentclass{article} +\usepackage{stix} +\begin{document} +""" +]: + with ChildProcessEngine("luatex", env={**os.environ, "hash_extra": "0"}) as e, default_engine.set_engine(e): + execute(preamble) + c=control_sequences() + m={x: T[x].meaning_str() for x in c} + extra_synonyms_list += same_meaning_control_sequences(m) + m_values.append(m) +[amsmath_meaning, stix_meaning]=m_values +# ======== build extra_synonyms table + +while True: + tmp=Counter([x for l in extra_synonyms_list for x in l]) + [(item, frequency)]=tmp.most_common(1) + if frequency==1: break + assert frequency>1 + extra_synonyms_list=[ + # the group that contain item + [*{x for l in extra_synonyms_list if item in l for x in l}] + ] + [ + # remaining groups + l for l in extra_synonyms_list if item not in l] + + +extra_synonyms_list=sorted([sorted(l) for l in {frozenset( + item for item in l + if item not in ("dotsc", "dotsm", "dotsb", "dots") # some simple filtering -- we will just use \cdots and \ldots + ) for l in extra_synonyms_list} if len(l)>1]) # deduplicate + +tmp=Counter(sum(extra_synonyms_list, [])) +assert tmp.most_common()[0][1]==1, tmp + +extra_synonyms = {v: u for u in extra_synonyms_list for v in u} + # ======== check how much of the table is valid on unicode-math/luatex def getdelcode(x: str)->tuple[int, int, int, int]: @@ -289,11 +425,11 @@ math_alphabet_redundant_greek = { r"\Zeta" : "Z", } -extra_synonyms = {v: u for u in - [ - ["adots", "iddots"] - ] - for v in u} + +ASCII_symbol_synonym = { + "minus": "-", + "mid": "|", + } ## @@ -306,18 +442,27 @@ for i in range(ord("!"), ord("~")+1): if fullch in remaining_chars: remaining_chars.remove(fullch) print(r'\__umi_define_char{' + fullch + r'}{\char'+str(i)+' }') -defined_csnames = {x for l in unicode_math_table.values() for x in l} +defined_csnames = {x for l in unicode_math_table.values() for x in l} | {*stix_meaning} | {*amsmath_meaning} pdf_engine=ChildProcessEngine("pdftex") -execute(r""" +with default_engine.set_engine(pdf_engine): execute(r""" \documentclass{article} \usepackage{amsmath} \usepackage{amssymb} \usepackage{amsfonts} \usepackage{mathrsfs} \begin{document} -""", engine=pdf_engine) +""") + +def remove_not(a: str)->Optional[str]: + global defined_csnames + if a in (r"\ni", r"\nu"): return None + if a.startswith(r"\not") and a.removeprefix(r"\not") in defined_csnames: + return '\\' + a.removeprefix(r"\not") + elif a.startswith(r"\n") and a.removeprefix(r"\n") in defined_csnames: + return '\\' + a.removeprefix(r"\n") + else: return None for unicode_char, csnames_ in unicode_math_table.items(): csnames = [*csnames_] @@ -374,16 +519,18 @@ for unicode_char, csnames_ in unicode_math_table.items(): for csname in [*csnames]: if csname in extra_synonyms: csnames+=extra_synonyms[csname] - csnames=[*set(csnames)] + csnames=[*{csname: None for csname in csnames}] items1=[] for csname in csnames: if not is_delimiter: - assert "delimiter" not in T[csname].meaning_str(engine=pdf_engine), (unicode_char, csname) + with default_engine.set_engine(pdf_engine): + assert "delimiter" not in T[csname].meaning_str(), (unicode_char, csname) # that is the symbol is not a delimiter in pdf_engine either (check is not particularly reliable but okay) for prefix, replacement in math_alphabet_translate.items(): if csname.startswith(prefix): + assert csname not in ASCII_symbol_synonym cs = math_alphabet_csname_translation[csname.removeprefix(prefix)] def wrap_in_alphabet_selector(cs: str)->str: if replacement is None: return cs @@ -398,30 +545,39 @@ for unicode_char, csnames_ in unicode_math_table.items(): break else: items1.append("\\" + csname) + if csname in ASCII_symbol_synonym: items1+=ASCII_symbol_synonym[csname] + + assert items1 + if is_delimiter and len(items1)>1: + print("Warning: Synonym for delimiter not supported?", unicode_char, delimiter, items1, file=sys.stderr) + del items1[1:] if len(items1)==1: a = items1[0] - if a.startswith(r"\not") and a.removeprefix(r"\not") in defined_csnames: - assert not is_delimiter - b='\\' + a.removeprefix(r"\not") - print(f"\\__umi_define_char{{{optional_space}{unicode_char}}}{{\__umi_alternatives_not{a}{b}}}") - a.removeprefix(r"\not") - elif a.startswith(r"\n") and a.removeprefix(r"\n") in defined_csnames: + b = remove_not(a) + if b is not None: assert not is_delimiter - b='\\' + a.removeprefix(r"\n") print(f"\\__umi_define_char{{{optional_space}{unicode_char}}}{{\__umi_alternatives_not{a}{b}}}") - a.removeprefix(r"\n") else: if is_delimiter: print(f"\\__umi_define_char_maybe_delimiter{{{optional_space}{unicode_char}}}{{{a}}}") else: print(f"\\__umi_define_char{{{optional_space}{unicode_char}}}{{{a}}}") - else: - assert not is_delimiter, (unicode_char, delimiter) - assert len(items1)==2, items1 + elif len(items1)==2: assert re.fullmatch(r'\\[a-zA-Z]+', items1[0]), items1 - assert re.fullmatch(r'\\[a-zA-Z]+', items1[1]), items1 - print(f"\\__umi_define_char{{{optional_space}{unicode_char}}}{{\\__umi_alternatives{items1[0]}{items1[1]}}}") + assert re.fullmatch(r'\\[a-zA-Z]+|[^a-zA-Z]', items1[1]), items1 + b=remove_not(items1[0]) + if b is not None: + d=remove_not(items1[1]) + assert d is not None, items1 + print(f"\\__umi_define_char{{{optional_space}{unicode_char}}}{{\\__umi_alternatives_not_two{items1[0]}{items1[1]}{b}{d}}}") + else: + print(f"\\__umi_define_char{{{optional_space}{unicode_char}}}{{\\__umi_alternatives{items1[0]}{items1[1]}}}") + else: + assert len(items1)>=3, items1 + assert all(remove_not(x) is None for x in items1), items1 + assert all(re.fullmatch(r'\\[a-zA-Z]+', c) for c in items1), items1 + print(f"\\__umi_define_char{{{optional_space}{unicode_char}}}{{\\__umi_alternatives_m{{{''.join(items1)}}}}}") ## @@ -431,94 +587,12 @@ sys.exit() # ======== part below are draft. -T.longdivisionsign.meaning_str() - - - -T.mathexclam.meaning_str() - -T.symoperators.meaning_str() - -T.perp.meaning_str() - -umathcode[" ̅"[1]] - -BalancedTokenList(r'\the\Udelcode `̅').expand_o().int() - -x = BalancedTokenList(r'\the\Udelcode `!').expand_o().int() -print(hex(x)) - -hex(BalancedTokenList(r'\the\delcode `!').expand_o().int()) - - - - - -if 0: - - data = TokenList([r"\directlua", TokenList.fstr( - r""" - for k, v in pairs(tex.hashtokens()) do - tex.print(-2, v .. "\0") - end - """ - )]).expand_x().str() - control_sequences = data.split("\x00") - assert control_sequences[-1]=="" - del control_sequences[-1] - - -Path("/tmp/control_sequences.json").write_text(json.dumps(control_sequences)) # type: ignore -control_sequences = json.loads(Path("/tmp/control_sequences.json").read_text()) # type: ignore - - -Path("/tmp/control_sequences_unicode_math.json").write_text(json.dumps(control_sequences)) -control_sequences = json.loads(Path("/tmp/control_sequences_unicode_math.json").read_text()) -assert "mitrho" in control_sequences - -if 0: - # try some other random things - - control_sequences = data.split("\x00") - assert control_sequences[-1]=="" - del control_sequences[-1] - - - - BalancedTokenList(r'\the\Umathcode `′').expand_o().int() == 0x1000000 - - -control_sequences - -BalancedTokenList(r'\the\mathcode`⨁').expand_o().int() - -Catcode.active("⨁").meaning_str(engine=engine) - -Catcode.active("′").meaning_str(engine=engine) - -T.bigoplus_sym.meaning_str() - -T.bigoplusop.meaning_str() - -T.bigoplus.meaning_str() - - - -T.rho.meaning_str() - -T.mitrho.meaning_str() - -T.bigoplus.meaning_str() - -engine._stdout_lines[-100:] + [bytes(engine._stdout_buffer)] - - - -T.mscrA.meaning_str() - - +default_engine.set_engine(ChildProcessEngine("luatex", env={**os.environ, "hash_extra": "0"}, autorestart=True)) +execute(r'\documentclass{article}\usepackage{unicode-math}\begin{document}') +execute(r'\documentclass{article}\usepackage{amsmath,amssymb,amsfonts}\begin{document}') +execute(r'\documentclass{article}\usepackage{amsmath}\usepackage{amssymb}\usepackage{amsfonts}\usepackage{tikz}') @functools.lru_cache(maxsize=None) @@ -586,6 +660,3 @@ BalancedTokenList(r"\def\aa{bb}").execute(engine=test_engine) BalancedTokenList(r"\csname\noexpand\aa\endcsname").expand_o(engine=test_engine) # give error BalancedTokenList(r"\csname\string\aa\endcsname").expand_o(engine=test_engine) # \[\aa] as expected -T.iddots.meaning_str(engine=engine) - -T.adots.meaning_str(engine=engine) diff --git a/macros/latex/contrib/unicode-math-input/unicode-math-input-table.tex b/macros/latex/contrib/unicode-math-input/unicode-math-input-table.tex index 7ab364cedd..f72a488c86 100644 --- a/macros/latex/contrib/unicode-math-input/unicode-math-input-table.tex +++ b/macros/latex/contrib/unicode-math-input/unicode-math-input-table.tex @@ -96,12 +96,12 @@ \__umi_define_char{£}{\mathsterling} \__umi_define_char{¥}{\mathyen} \__umi_define_char{§}{\mathsection} -\__umi_define_char{¬}{\neg} +\__umi_define_char{¬}{\__umi_alternatives\neg\lnot} \__umi_define_char{±}{\pm} \__umi_define_char{¶}{\mathparagraph} -\__umi_define_char{·}{\cdotp} +\__umi_define_char{·}{\__umi_alternatives\cdotp\centerdot} \__umi_define_char{×}{\times} -\__umi_define_char{ð}{\matheth} +\__umi_define_char{ð}{\__umi_alternatives\matheth\eth} \__umi_define_char{÷}{\div} \__umi_define_char{Ƶ}{\Zbar} \__umi_define_char{Α}{\__umi_alternatives_iisafe\Alpha A} @@ -156,22 +156,22 @@ \__umi_define_char{ϑ}{\vartheta} \__umi_define_char{ϕ}{\phi} \__umi_define_char{ϖ}{\varpi} -\__umi_define_char{Ϝ}{\upDigamma} -\__umi_define_char{ϝ}{\updigamma} +\__umi_define_char{Ϝ}{\__umi_alternatives\upDigamma\Digamma} +\__umi_define_char{ϝ}{\__umi_alternatives\updigamma\digamma} \__umi_define_char{ϰ}{\varkappa} \__umi_define_char{ϱ}{\varrho} \__umi_define_char{ϴ}{\varTheta} \__umi_define_char{ϵ}{\epsilon} -\__umi_define_char{϶}{\upbackepsilon} +\__umi_define_char{϶}{\__umi_alternatives\upbackepsilon\backepsilon} \__umi_define_char{‐}{\mathhyphen} \__umi_define_char{―}{\horizbar} \__umi_define_char_maybe_delimiter{‖}{\Vert} \__umi_define_char{‗}{\twolowline} \__umi_define_char{†}{\dagger} \__umi_define_char{‡}{\ddagger} -\__umi_define_char{•}{\smblkcircle} +\__umi_define_char{•}{\__umi_alternatives_m{\smblkcircle\bullet\vysmblkcircle}} \__umi_define_char{‥}{\enleadertwodots} -\__umi_define_char{…}{\unicodeellipsis} +\__umi_define_char{…}{\__umi_alternatives\unicodeellipsis\ldots} \__umi_define_char{‸}{\caretinsert} \__umi_define_char{‼}{\Exclam} \__umi_define_char{⁀}{\tieconcat} @@ -191,7 +191,7 @@ \__umi_define_char{ℌ}{\umiMathfrak{H}} \__umi_define_char{ℍ}{\umiMathbb{H}} \__umi_define_char{ℎ}{\Planckconst} -\__umi_define_char{ℏ}{\hslash} +\__umi_define_char{ℏ}{\__umi_alternatives\hslash\hbar} \__umi_define_char{ℐ}{\umiMathscr{I}} \__umi_define_char{ℑ}{\Im} \__umi_define_char{ℒ}{\umiMathscr{L}} @@ -236,9 +236,9 @@ \__umi_define_char{ⅉ}{\umiMathbbit{j}} \__umi_define_char{⅊}{\PropertyLine} \__umi_define_char{⅋}{\upand} -\__umi_define_char{←}{\leftarrow} +\__umi_define_char{←}{\__umi_alternatives\leftarrow\gets} \__umi_define_char_maybe_delimiter{↑}{\uparrow} -\__umi_define_char{→}{\rightarrow} +\__umi_define_char{→}{\__umi_alternatives\rightarrow\to} \__umi_define_char_maybe_delimiter{↓}{\downarrow} \__umi_define_char{↔}{\leftrightarrow} \__umi_define_char_maybe_delimiter{↕}{\updownarrow} @@ -246,7 +246,7 @@ \__umi_define_char{↗}{\nearrow} \__umi_define_char{↘}{\searrow} \__umi_define_char{↙}{\swarrow} -\__umi_define_char{↚}{\__umi_alternatives_not\nleftarrow\leftarrow} +\__umi_define_char{↚}{\__umi_alternatives_not_two\nleftarrow\ngets\leftarrow\gets} \__umi_define_char{↛}{\__umi_alternatives_not\nrightarrow\rightarrow} \__umi_define_char{↜}{\leftwavearrow} \__umi_define_char{↝}{\rightwavearrow} @@ -313,7 +313,7 @@ \__umi_define_char{⇚}{\Lleftarrow} \__umi_define_char{⇛}{\Rrightarrow} \__umi_define_char{⇜}{\leftsquigarrow} -\__umi_define_char{⇝}{\rightsquigarrow} +\__umi_define_char{⇝}{\__umi_alternatives\rightsquigarrow\leadsto} \__umi_define_char_maybe_delimiter{⇞}{\nHuparrow} \__umi_define_char_maybe_delimiter{⇟}{\nHdownarrow} \__umi_define_char{⇠}{\leftdasharrow} @@ -344,39 +344,39 @@ \__umi_define_char{∂}{\partial} \__umi_define_char{∃}{\exists} \__umi_define_char{∄}{\__umi_alternatives_not\nexists\exists} -\__umi_define_char{∅}{\varnothing} +\__umi_define_char{∅}{\__umi_alternatives\varnothing\emptyset} \__umi_define_char{∆}{\increment} \__umi_define_char{∇}{\nabla} \__umi_define_char{∈}{\in} \__umi_define_char{∉}{\__umi_alternatives_not\notin\in} \__umi_define_char{∊}{\smallin} -\__umi_define_char{∋}{\ni} +\__umi_define_char{∋}{\__umi_alternatives\ni\owns} \__umi_define_char{∌}{\__umi_alternatives_not\nni\ni} \__umi_define_char{∍}{\smallni} \__umi_define_char{∎}{\QED} \__umi_define_char{∏}{\prod} \__umi_define_char{∐}{\coprod} \__umi_define_char{∑}{\sum} -\__umi_define_char{−}{\minus} +\__umi_define_char{−}{\__umi_alternatives\minus-} \__umi_define_char{∓}{\mp} \__umi_define_char{∔}{\dotplus} \__umi_define_char_maybe_delimiter{∕}{\divslash} \__umi_define_char{∖}{\smallsetminus} \__umi_define_char{∗}{\ast} -\__umi_define_char{∘}{\vysmwhtcircle} -\__umi_define_char{∙}{\vysmblkcircle} +\__umi_define_char{∘}{\__umi_alternatives_m{\vysmwhtcircle\circ\smwhtcircle}} +\__umi_define_char{∙}{\__umi_alternatives_m{\vysmblkcircle\bullet\smblkcircle}} \__umi_define_char{∝}{\propto} \__umi_define_char{∞}{\infty} \__umi_define_char{∟}{\rightangle} \__umi_define_char{∠}{\angle} \__umi_define_char{∡}{\measuredangle} \__umi_define_char{∢}{\sphericalangle} -\__umi_define_char{∣}{\mid} +\__umi_define_char{∣}{\__umi_alternatives\mid|} \__umi_define_char{∤}{\__umi_alternatives_not\nmid\mid} \__umi_define_char{∥}{\parallel} \__umi_define_char{∦}{\__umi_alternatives_not\nparallel\parallel} -\__umi_define_char{∧}{\wedge} -\__umi_define_char{∨}{\vee} +\__umi_define_char{∧}{\__umi_alternatives\wedge\land} +\__umi_define_char{∨}{\__umi_alternatives\vee\lor} \__umi_define_char{∩}{\cap} \__umi_define_char{∪}{\cup} \__umi_define_char{∫}{\int} @@ -404,7 +404,7 @@ \__umi_define_char{≁}{\__umi_alternatives_not\nsim\sim} \__umi_define_char{≂}{\eqsim} \__umi_define_char{≃}{\__umi_alternatives\simeq\sime} -\__umi_define_char{≄}{\__umi_alternatives\nsimeq\nsime} +\__umi_define_char{≄}{\__umi_alternatives_not_two\nsime\nsimeq\sime\simeq} \__umi_define_char{≅}{\cong} \__umi_define_char{≆}{\simneqq} \__umi_define_char{≇}{\__umi_alternatives_not\ncong\cong} @@ -417,7 +417,7 @@ \__umi_define_char{≎}{\Bumpeq} \__umi_define_char{≏}{\bumpeq} \__umi_define_char{≐}{\doteq} -\__umi_define_char{≑}{\Doteq} +\__umi_define_char{≑}{\__umi_alternatives\Doteq\doteqdot} \__umi_define_char{≒}{\fallingdotseq} \__umi_define_char{≓}{\risingdotseq} \__umi_define_char{≔}{\coloneq} @@ -432,12 +432,12 @@ \__umi_define_char{≝}{\eqdef} \__umi_define_char{≞}{\measeq} \__umi_define_char{≟}{\questeq} -\__umi_define_char{≠}{\ne} +\__umi_define_char{≠}{\__umi_alternatives\ne\neq} \__umi_define_char{≡}{\equiv} \__umi_define_char{≢}{\__umi_alternatives_not\nequiv\equiv} \__umi_define_char{≣}{\Equiv} -\__umi_define_char{≤}{\leq} -\__umi_define_char{≥}{\geq} +\__umi_define_char{≤}{\__umi_alternatives\leq\le} +\__umi_define_char{≥}{\__umi_alternatives\geq\ge} \__umi_define_char{≦}{\leqq} \__umi_define_char{≧}{\geqq} \__umi_define_char{≨}{\lneqq} @@ -448,8 +448,8 @@ \__umi_define_char{≭}{\__umi_alternatives_not\nasymp\asymp} \__umi_define_char{≮}{\__umi_alternatives_not\nless\less} \__umi_define_char{≯}{\ngtr} -\__umi_define_char{≰}{\__umi_alternatives_not\nleq\leq} -\__umi_define_char{≱}{\__umi_alternatives_not\ngeq\geq} +\__umi_define_char{≰}{\__umi_alternatives_not_two\nleq\nle\leq\le} +\__umi_define_char{≱}{\__umi_alternatives_not_two\ngeq\nge\geq\ge} \__umi_define_char{≲}{\lesssim} \__umi_define_char{≳}{\gtrsim} \__umi_define_char{≴}{\__umi_alternatives_not\nlesssim\lesssim} @@ -532,7 +532,7 @@ \__umi_define_char{⋁}{\bigvee} \__umi_define_char{⋂}{\bigcap} \__umi_define_char{⋃}{\bigcup} -\__umi_define_char{⋄}{\smwhtdiamond} +\__umi_define_char{⋄}{\__umi_alternatives\smwhtdiamond\diamond} \__umi_define_char{⋅}{\cdot} \__umi_define_char{⋆}{\star} \__umi_define_char{⋇}{\divideontimes} @@ -546,14 +546,14 @@ \__umi_define_char{⋏}{\curlywedge} \__umi_define_char{⋐}{\Subset} \__umi_define_char{⋑}{\Supset} -\__umi_define_char{⋒}{\Cap} -\__umi_define_char{⋓}{\Cup} +\__umi_define_char{⋒}{\__umi_alternatives\Cap\doublecap} +\__umi_define_char{⋓}{\__umi_alternatives\Cup\doublecup} \__umi_define_char{⋔}{\pitchfork} \__umi_define_char{⋕}{\equalparallel} \__umi_define_char{⋖}{\lessdot} \__umi_define_char{⋗}{\gtrdot} -\__umi_define_char{⋘}{\lll} -\__umi_define_char{⋙}{\ggg} +\__umi_define_char{⋘}{\__umi_alternatives\lll\llless} +\__umi_define_char{⋙}{\__umi_alternatives\ggg\gggtr} \__umi_define_char{⋚}{\lesseqgtr} \__umi_define_char{⋛}{\gtreqless} \__umi_define_char{⋜}{\eqless} @@ -575,8 +575,8 @@ \__umi_define_char{⋬}{\__umi_alternatives_not\ntrianglelefteq\trianglelefteq} \__umi_define_char{⋭}{\__umi_alternatives_not\ntrianglerighteq\trianglerighteq} \__umi_define_char{⋮}{\vdots} -\__umi_define_char{⋯}{\unicodecdots} -\__umi_define_char{⋰}{\__umi_alternatives\iddots\adots} +\__umi_define_char{⋯}{\__umi_alternatives\unicodecdots\cdots} +\__umi_define_char{⋰}{\__umi_alternatives\adots\iddots} \__umi_define_char{⋱}{\ddots} \__umi_define_char{⋲}{\disin} \__umi_define_char{⋳}{\varisins} @@ -673,8 +673,8 @@ \__umi_define_char{░}{\blockqtrshaded} \__umi_define_char{▒}{\blockhalfshaded} \__umi_define_char{▓}{\blockthreeqtrshaded} -\__umi_define_char{■}{\mdlgblksquare} -\__umi_define_char{□}{\mdlgwhtsquare} +\__umi_define_char{■}{\__umi_alternatives\mdlgblksquare\blacksquare} +\__umi_define_char{□}{\__umi_alternatives_m{\mdlgwhtsquare\Box\square}} \__umi_define_char{▢}{\squoval} \__umi_define_char{▣}{\blackinwhitesquare} \__umi_define_char{▤}{\squarehfill} @@ -692,7 +692,7 @@ \__umi_define_char{▰}{\parallelogramblack} \__umi_define_char{▱}{\parallelogram} \__umi_define_char{▲}{\bigblacktriangleup} -\__umi_define_char{△}{\bigtriangleup} +\__umi_define_char{△}{\__umi_alternatives_m{\bigtriangleup\triangle\varbigtriangleup}} \__umi_define_char{▴}{\blacktriangle} \__umi_define_char{▵}{\vartriangle} \__umi_define_char{▶}{\blacktriangleright} @@ -702,7 +702,7 @@ \__umi_define_char{►}{\blackpointerright} \__umi_define_char{▻}{\whitepointerright} \__umi_define_char{▼}{\bigblacktriangledown} -\__umi_define_char{▽}{\bigtriangledown} +\__umi_define_char{▽}{\__umi_alternatives\bigtriangledown\varbigtriangledown} \__umi_define_char{▾}{\blacktriangledown} \__umi_define_char{▿}{\triangledown} \__umi_define_char{◀}{\blacktriangleleft} @@ -715,8 +715,8 @@ \__umi_define_char{◇}{\mdlgwhtdiamond} \__umi_define_char{◈}{\blackinwhitediamond} \__umi_define_char{◉}{\fisheye} -\__umi_define_char{◊}{\mdlgwhtlozenge} -\__umi_define_char{○}{\mdlgwhtcircle} +\__umi_define_char{◊}{\__umi_alternatives_m{\mdlgwhtlozenge\Diamond\lozenge}} +\__umi_define_char{○}{\__umi_alternatives\mdlgwhtcircle\bigcirc} \__umi_define_char{◌}{\dottedcircle} \__umi_define_char{◍}{\circlevertfill} \__umi_define_char{◎}{\bullseye} @@ -743,7 +743,7 @@ \__umi_define_char{◣}{\llblacktriangle} \__umi_define_char{◤}{\ulblacktriangle} \__umi_define_char{◥}{\urblacktriangle} -\__umi_define_char{◦}{\smwhtcircle} +\__umi_define_char{◦}{\__umi_alternatives_m{\smwhtcircle\circ\vysmwhtcircle}} \__umi_define_char{◧}{\squareleftblack} \__umi_define_char{◨}{\squarerightblack} \__umi_define_char{◩}{\squareulblack} @@ -889,9 +889,9 @@ \__umi_define_char{⤋}{\Ddownarrow} \__umi_define_char{⤌}{\leftbkarrow} \__umi_define_char{⤍}{\rightbkarrow} -\__umi_define_char{⤎}{\leftdbkarrow} -\__umi_define_char{⤏}{\dbkarrow} -\__umi_define_char{⤐}{\drbkarrow} +\__umi_define_char{⤎}{\__umi_alternatives\leftdbkarrow\dashleftarrow} +\__umi_define_char{⤏}{\__umi_alternatives_m{\dbkarrow\dasharrow\dashrightarrow\dbkarow}} +\__umi_define_char{⤐}{\__umi_alternatives\drbkarrow\drbkarow} \__umi_define_char{⤑}{\rightdotarrow} \__umi_define_char{⤒}{\baruparrow} \__umi_define_char{⤓}{\downarrowbar} @@ -912,8 +912,8 @@ \__umi_define_char{⤢}{\neswarrow} \__umi_define_char{⤣}{\hknwarrow} \__umi_define_char{⤤}{\hknearrow} -\__umi_define_char{⤥}{\hksearrow} -\__umi_define_char{⤦}{\hkswarrow} +\__umi_define_char{⤥}{\__umi_alternatives\hksearrow\hksearow} +\__umi_define_char{⤦}{\__umi_alternatives\hkswarrow\hkswarow} \__umi_define_char{⤧}{\tona} \__umi_define_char{⤨}{\toea} \__umi_define_char{⤩}{\tosa} @@ -1351,7 +1351,7 @@ \__umi_define_char{⫙}{\forkv} \__umi_define_char{⫚}{\topfork} \__umi_define_char{⫛}{\mlcp} -\__umi_define_char{⫝̸}{\forks} +\__umi_define_char{⫝̸}{\__umi_alternatives\forks\nforksnot} \__umi_define_char{⫝}{\forksnot} \__umi_define_char{⫞}{\shortlefttack} \__umi_define_char{⫟}{\shortdowntack} diff --git a/macros/latex/contrib/unicode-math-input/unicode-math-input.pdf b/macros/latex/contrib/unicode-math-input/unicode-math-input.pdf Binary files differindex 80d94c1908..2bfddf791b 100644 --- a/macros/latex/contrib/unicode-math-input/unicode-math-input.pdf +++ b/macros/latex/contrib/unicode-math-input/unicode-math-input.pdf diff --git a/macros/latex/contrib/unicode-math-input/unicode-math-input.sty b/macros/latex/contrib/unicode-math-input/unicode-math-input.sty index dcb72f6a30..b9696c3a32 100644 --- a/macros/latex/contrib/unicode-math-input/unicode-math-input.sty +++ b/macros/latex/contrib/unicode-math-input/unicode-math-input.sty @@ -1,5 +1,5 @@ % File: unicode-math-input.sty -% Copyright 2022-2023 user202729 +% Copyright 2022-2024 user202729 % % This work may be distributed and/or modified under the conditions of the % LaTeX Project Public License (LPPL), either version 1.3c of this license or @@ -14,7 +14,7 @@ \RequirePackage{expl3} \RequirePackage{iftex} -\ProvidesExplPackage{unicode-math-input}{2023-05-12}{0.0.0}{Allow entering Unicode symbols in math formulas} +\ProvidesExplPackage{unicode-math-input}{2024-01-18}{0.1.0}{Allow entering Unicode symbols in math formulas} \makeatletter \AtBeginDocument{ @@ -38,7 +38,17 @@ \cs_new_protected:Npn \umiMathbf {\__umi_check_math_alphabet \mathbf \umiMathbf } \cs_new_protected:Npn \umiMathit {\__umi_check_math_alphabet \mathit \umiMathit } \cs_new_protected:Npn \umiMathbfit {\__umi_check_math_alphabet \bm \umiMathbfit } -\cs_new_protected:Npn \umiMathscr {\__umi_check_math_alphabet \mathscr \umiMathscr } +\cs_new_protected:Npn \umiMathscr { + \ifdefined \mathscr + \expandafter \mathscr + \else + \ifdefined \mathcal + \expandafter \expandafter \expandafter \mathcal + \else + \msg_error:nnnn {unicode-math-input} {define-math-alphabet} {\mathscr/\mathcal} {\umiMathscr} + \fi + \fi +} \cs_new_protected:Npn \umiMathbfscr {\__umi_check_math_alphabet \mathbfscr \umiMathbfscr } \cs_new_protected:Npn \umiMathfrak {\__umi_check_math_alphabet \mathfrak \umiMathfrak } \cs_new_protected:Npn \umiMathbb {\__umi_check_math_alphabet \mathbb \umiMathbb } @@ -79,11 +89,23 @@ \ifdefined #2 #2 \else - \msg_error:nnn {unicode-math-input} {undefined-cs} {#1#2} + \__umi_raise_error {#1#2} \fi \fi } +\cs_new_protected:Npn \__umi_alternatives_m #1 { + \tl_map_inline:nn {#1} { + \ifdefined ##1 + ##1 + \tl_map_break:n {\use_none:nn} + \fi + } + \__umi_raise_error {#1} +} + +\cs_new_protected:Npn \__umi_raise_error { \msg_error:nnn {unicode-math-input} {undefined-cs} } + % #1 is control sequence, #2 is anything (must not peek ahead!) \cs_new_protected:Npn \__umi_alternatives_iisafe #1 #2 { \ifdefined #1 @@ -107,6 +129,16 @@ \fi } +\cs_new_protected:Npn \__umi_alternatives_not_two #1 #2 #3 #4{ + \ifdefined #1 #1 \else + \ifdefined #2 #2 \else + \ifdefined #3 \not#3 \else + \ifdefined #4 \not#4 \else + \msg_error:nnn {unicode-math-input} {undefined-cs} {#1#2#3#4} + \fi \fi \fi \fi +} + + % ======== \__umi_require_math \msg_new:nnn {unicode-math-input} {not-math-mode} { This~symbol~can~only~be~used~in~math~mode! @@ -213,8 +245,8 @@ } - \cs_new_eq:NN \umiDefineMathChar \__umi_define_char_single - \cs_new_protected:Npn \umiDefineMathDelimiter #1 #2 { + \cs_new_eq:NN \umiDeclareMathChar \__umi_define_char_single + \cs_new_protected:Npn \umiDeclareMathDelimiter #1 #2 { \cs_new_protected:Npn \__umi_check_delimiter_defined_not_delimiter ##1 ##2 { \msg_error:nnnn {unicode-math-input} {not-delimiter} {##1} {##2} } @@ -278,16 +310,23 @@ \cs_new_eq:NN \__umi_define_char_maybe_delimiter \__umi_define_char - \cs_new_protected:Npn \umiDefineMathChar #1 #2{ + \cs_new_protected:Npn \umiDeclareMathChar #1 #2{ \ifnum \str_count:n{#1}=1 \__umi_define_char_single #1 {#2} \else \cs_gset_protected:cpx {u8:\detokenize{#1}} {\unexpanded{\__umi_require_math #2}} \fi } - \cs_new_eq:NN \umiDefineMathDelimiter \umiDefineMathChar + \cs_new_eq:NN \umiDeclareMathDelimiter \umiDeclareMathChar } + +\cs_new_eq:NN \umiDefineMathChar \umiDeclareMathChar +\cs_new_eq:NN \umiDefineMathDelimiter \umiDeclareMathDelimiter % backwards compatibility + +\cs_new_protected:Npn \umiDeclareMathCharCopy { \__umi_internal_error } +\cs_new_protected:Npn \umiDeclareMathDelimiterCopy { \__umi_internal_error } + \__umi_if_engine_unicode { \tl_build_begin:N \__umi_delimiter_list } {} @@ -451,8 +490,9 @@ \expandafter \__umi_continue_script_aux \exp:w\exp_end_continue_f:w \char_generate:nn {\expandafter \__umi_gobble_the_character \meaning #1} {13} } { - \cs_gset_eq:NN \__umi_script \__umi_put_script_normal - ^{\l_tmpa_tl} #1 + % is not the case, finished (put back the #1) + \__umi_script_collect_done + \__umi_script_cat{\l_tmpa_tl} #1 } } @@ -492,12 +532,13 @@ } \def \__umi_brace_error {\__umi_internal_error \l_tmpa_tl} + \def \__umi_brace_nobrace {\l_tmpa_tl} \def \__umi_brace_two #1 #2 {\l_tmpa_tl {#1 #2}} \def \__umi_brace_three #1 #2 #3 {\l_tmpa_tl {#1 #2 #3}} \def \__umi_brace_four #1 #2 #3 #4 {\l_tmpa_tl {#1 #2 #3 #4}} \int_step_inline:nnn {"00} {"7F} { - \expandafter\let\csname __umi_brace_handle_ \char_generate:nn {#1} {12} \endcsname \relax + \expandafter\let\csname __umi_brace_handle_ \char_generate:nn {#1} {12} \endcsname \__umi_brace_nobrace } \int_step_inline:nnn {"80} {"BF} { \expandafter\let\csname __umi_brace_handle_ \char_generate:nn {#1} {12} \endcsname \__umi_brace_error diff --git a/macros/latex/contrib/unicode-math-input/unicode-math-input.tex b/macros/latex/contrib/unicode-math-input/unicode-math-input.tex index 7b385c34cc..61fe577ced 100644 --- a/macros/latex/contrib/unicode-math-input/unicode-math-input.tex +++ b/macros/latex/contrib/unicode-math-input/unicode-math-input.tex @@ -1,5 +1,6 @@ %! TEX program = lualatex -\ProvidesFile{unicode-math-input.tex} [2023/05/12 v0.0.0 ] +\ProvidesFile{unicode-math-input.tex} [2024/01/18 v0.1.0 ] +\PassOptionsToPackage{hyphens}{url} \RequirePackage{fvextra} \documentclass{l3doc} \usepackage[svgnames]{xcolor} @@ -15,7 +16,12 @@ \tracinglostchars=3 \newcommand\csref[1]{\texttt{\hyperref[doc/function//#1]{\textbackslash #1}}} \newcommand\varref[1]{\texttt{\hyperref[doc/function//#1]{#1}}} +\usepackage{precattl} \begin{document} +\precattlExec{ +\NewDocumentEnvironment{option}{v}{\begin{variable}{#1\cO\}\iffalse}\fi Package option.\par}{\end{variable}} +} + \hfuzz=1pt \GetFileInfo{\jobname.tex} @@ -45,6 +51,15 @@ they does not cover a lot of characters and/or does not handle several issues we We compare the situation with several existing packages: \begin{itemize} + \item \pkg{commonunicode}: + \begin{itemize} + \item defines all characters to be active, which means it breaks usage of |α| in \pkg{fancyvrb}'s |Verbatim| environment for example. + \item changes the behavior of e.g. |½| in text mode in PDF\LaTeX. + \item does not always select best option, for example |∄| always get mapped to |\not\exists| even though the outcome is worse than |\nexists|. + \item fakes several symbols such as |≝| even when there's better option e.g. |\eqdef|, + \item uses |\ensuremath| extensively, which means no error message when it's used in text mode, + \item not as good symbol coverage. + \end{itemize} \item \pkg{unixode}: \begin{itemize} \item defines |′| to be |\prime| which is big and not usable, it should be |^{\prime}| @@ -177,6 +192,13 @@ We need to get the following things correct: corresponding Unicode character (|π|) will also change. This will incur a small loss in efficiency however. (modulo the issue with |\Udelcode| mentioned above) + + \item The character |⋯| is mapped to |\cdots| and |…| is mapped to |\ldots|. Note that |\dots| behaves + the same as |\ldots| without \pkg{amsmath} package loaded, but with it it smartly detect which variant to use + depends on the following character, for example |$\dots +$| prints $\dots +$ but |$\dots ,$| prints $\dots ,$. + + There's another discrepancy with the spacing around these 2 characters, + see \url{https://github.com/wspr/unicode-math/issues/571}. \end{itemize} There are some issues however: @@ -227,6 +249,8 @@ Because by default the \pkg{unicode-math} package will already allow entering Un For example you can |\renewcommand\umiMathbf[1]{\mathbf{#1}}| which is the default behavior. + Or you can execute, for example, |\renewcommand\umiMathscr[1]{\mathcal{#1}}| to use the calligraphic instead of the script alphabet for script characters. + More usefully, you may want to |\renewcommand\umiMathbf{\bm}| to make entered characters such as $𝐚$ appear bold italic in the output, remember to load package \pkg{bm} if you want to do so (which is |unicode-math| behavior with |[bold-style=ISO]| package option). @@ -240,27 +264,27 @@ Because by default the \pkg{unicode-math} package will already allow entering Un |\let\umiFrac\tfrac| (or more clearly, |\renewcommand\umiFrac[2]{\tfrac{#1}{#2}}|) to customize the appearance of Unicode characters like |½|. - If you want to customize the appearance of individual symbols, consider using \csref{umiDefineMathChar}. + If you want to customize the appearance of individual symbols, consider using \csref{umiDeclareMathChar}. \end{function} -\begin{function}{\umiDefineMathChar} +\begin{function}{\umiDeclareMathChar} \begin{syntax} - |\umiDefineMathChar {α} {\alpha}| + |\umiDeclareMathChar {α} {\alpha}| \end{syntax} - Does what it says. + Does what it says. Will override existing definitions, if any. Note that the Unicode character must be braced. - (You may choose to call \csref{umiPatchCmdUnicodeArg}| \umiDefineMathChar| + (You may choose to call \csref{umiPatchCmdUnicodeArg}| \umiDeclareMathChar| beforehand so bracing is not necessary, but this is not really recommended) This might or might not destroy the existing text-mode definition. For now, - one way to preserve it is |\umiDefineMathChar {²} {\TextOrMath{\texttwosuperior}{^2}}|. + one way to preserve it is |\umiDeclareMathChar {²} {\TextOrMath{\texttwosuperior}{^2}}|. \end{function} -\begin{function}{\umiDefineMathDelimiter} +\begin{function}{\umiDeclareMathDelimiter} \begin{syntax} - |\umiDefineMathDelimiter {⟨} \langle| + |\umiDeclareMathDelimiter {⟨} \langle| \end{syntax} You must use this in order to use the Unicode character with |\left|, |\big|, |\bigl| etc. (because of the internal detail being that in Xe\LaTeX\ and Lua\LaTeX, @@ -269,9 +293,14 @@ Because by default the \pkg{unicode-math} package will already allow entering Un In that case the second argument must be a single token. - Unfortunately, the command does not always work. + Unfortunately, the command does not always work -- it must detect the second argument to be a delimiter, but + if the detection fails it may not work. \end{function} +\emph{Note}: There's no need to provide |\umiDeclareMathAlphabet|, |\umiDeclareMathAccent| or |\umiDeclareMathRadical|, for |\umiDeclareMathChar| suffices. +It's not supported to define \emph{control sequences}, for that the typical |\RenewDocumentCommand| +or |\RenewCommandCopy| suffices. + \begin{function}{\umiRefreshDelimiterList} \begin{syntax} |\umiRefreshDelimiterList| @@ -282,17 +311,15 @@ Because by default the \pkg{unicode-math} package will already allow entering Un This command will check all the normal delimiter Unicode characters. In PDF\LaTeX\ this command does nothing. - Another way is to use \csref{umiDefineMathDelimiter} to manually refresh individual Unicode characters, + Another way is to use \csref{umiDeclareMathDelimiter} to manually refresh individual Unicode characters, this is also useful if you define an Unicode character that is not "normally" a delimiter. \end{function} -\begin{variable}{ignore-refresh-delimiter-list} - Package option. - +\begin{option}{ignore-refresh-delimiter-list} \csref{umiRefreshDelimiterList} will be run |\AtBeginDocument|. Pass this to disable it running. Only needed if there's some package clash or if there's spurious warning on "not determined to be a delimiter" etc. -\end{variable} +\end{option} \begin{function}{\umiPatchCmdUnicodeArg,\umiUnpatchCmdUnicodeArg} \begin{syntax} @@ -336,12 +363,14 @@ Because by default the \pkg{unicode-math} package will already allow entering Un The command being patched must take exactly one argument. This is useful because some \TeX\ primitives such as |^| or |\mathopen| - requires either a single "character" or a group braced with |{...}| / |\bgroup...\egroup|. + requires either a single "character" or a group braced with |{...}| / |\bgroup...\egroup| -- + in particular, |\Big|'s original definition is such that |\Bigl| being defined + as |\mathopen \Big| can work, and we must ensure it still work after the patch. \end{function} -\begin{variable}{ignore-patch-delimiter-commands} - Package option. Pass this to avoid patching |\Big| etc. with the command above (only needed if there's some package clash). -\end{variable} +\begin{option}{ignore-patch-delimiter-commands} + Pass this to avoid patching |\Big| etc. with the command above (only needed if there's some package clash). +\end{option} \begin{function}{\umiBraceNext} \begin{syntax} @@ -362,11 +391,11 @@ Because by default the \pkg{unicode-math} package will already allow entering Un then |\big⟨| will eventually execute |\oldbig{⟨}| which is the desired behavior (that |\oldbig| expects one braced argument). \end{function} -\begin{variable}{ignore-patch-prime} +\begin{option}{ignore-patch-prime} Do not patch the default definition of |'| in math mode. By default it's patched to allow |G'²| and |G²'| to work. Only use this when there's some package clash. -\end{variable} +\end{option} \begin{function}{\umiPatchPrime,\umiUnpatchPrime} \begin{syntax} @@ -384,6 +413,50 @@ then |\big⟨| will eventually execute |\oldbig{⟨}| which is the desired behav This package should have tested with various \TeX\ distribution versions on Overleaf. +\section{Advanced remarks} + +As mentioned before, by design this package defines the Unicode character in math mode to do whatever the corresponding +\LaTeX\ command does \emph{at the time of use}, so if you redefine the meaning of |\alpha|, then the Unicode character |α| +will change as well. + +The other "standard" way to define commands in \LaTeX\ is to assign the mathcode to the character/control sequence directly, +using |\DeclareMathSymbol| etc. which is used to define almost all the standard control sequences. +For efficiency reasons or other reasons, you may want to \emph{copy} the definition of an existing control sequence +(this way the definition of the Unicode character is not changed when the control sequence changes), +you can do that by: + +\begin{function}{\umiDeclareMathCharCopy} + \begin{syntax} + |\umiDeclareMathCharCopy {±} \pm| + \end{syntax} + Does what it says. + + The second argument must be a single control sequence. +\end{function} + +\begin{function}{\umiDeclareMathDelimiterCopy} + \begin{syntax} + |\umiDeclareMathDelimiterCopy {‖} \Vert| + \end{syntax} + Does what it says. Refer to \csref{umiDeclareMathDelimiter} for difference between this command and \csref{umiDeclareMathCharCopy}. +\end{function} + +In case you want to explicitly specify a font/slot pair for an Unicode character, you can use |\DeclareMathSymbol| etc. +directly, then use one of the commands above to copy it to the Unicode character. + +Useful resources: + +\begin{sloppypar} + \hbadness=10000 +\begin{itemize} + \item \url{https://tex.stackexchange.com/questions/98781/create-a-font-table-for-all-available-characters-for-a-particular-font} + \item \url{https://tex.stackexchange.com/questions/380775/font-table-for-opentype-truetype-fonts} + \item \url{https://ctan.org/pkg/fonttable} (need double quotes if font name has spaces: \url{https://tex.stackexchange.com/a/506246/250119}) + \item Although there's always |texdoc encguide| for the default (non-Unicode) encodings. +\end{itemize} +\end{sloppypar} + + \PrintChanges \PrintIndex \Finale |