diff options
author | Karl Berry <karl@freefriends.org> | 2018-07-10 21:05:49 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2018-07-10 21:05:49 +0000 |
commit | 4bbc008e81df7ec54a401548c1403201a26488b2 (patch) | |
tree | be0f1d72b6b0b5cca3a6678afb73ef5adb319a9a | |
parent | a0465167a48139ce48ff14c95343b7afeaa88dee (diff) |
tagpdf (10jul18)
git-svn-id: svn://tug.org/texlive/trunk@48178 c570f23f-e606-0410-a88d-b1316a301751
21 files changed, 1616 insertions, 56 deletions
diff --git a/Master/texmf-dist/doc/latex/tagpdf/README.md b/Master/texmf-dist/doc/latex/tagpdf/README.md index f223cdfc5bc..3801de04b0c 100644 --- a/Master/texmf-dist/doc/latex/tagpdf/README.md +++ b/Master/texmf-dist/doc/latex/tagpdf/README.md @@ -1,28 +1,35 @@ -# tagpdf - -A package to experiment with tagging and other requirements of accessible pdfs with pdflatex and lualatex +#tagpdf — A package to create tagged pdf +Packageversion: 0.2 +Packagedate: 2018/07/09 +Author: Ulrike Fischer +## License +The tagpdf package may be modified and distributed under the terms and conditions of the +[LaTeX Project Public License](https://www.latex-project.org/lppl/), version 1.3c or greater. -## Structure -- source - - examples - - texmf (the code of the package) - - - tagpdf.tex, pdf, bib (the documentation) - -- testfiles contains tests for the l3build system. - -## Rules for contribuations +## Contents -Comments, feedback, examples are welcome. +- Readme (this file) +- tagpdf.sty (the sty) +- tagpdf-roles-code.sty (internal code) +- tagpdf-mc-code-shared.sty (internal code) +- tagpdf-mc-code-generic.sty (internal code) +- tagpdf-mc-code-lua.sty (internal code) +- tagpdf-stuct-code.sty (internal code) +- tagpdf-tree-code.sty (internal code) +- tagpdf-user.sty (user commands) +- tagpdf-pdftex.def (pdftex specific code) +- tagpdf-luatex.def (luatex specific code) +- tagpdf.lua (lua code for luatex) +- tagpdf.tex, tagpdf.pdf, tagpdf.bib (the docu) +- various examples (part of the documentation) -Use the issue tracker, sent me a mail or make a pull-request. +## Installation -## Licence +Put the styles, the .def and the lua-files where it can be found. -The tagpdf package may be modified and distributed under the terms and conditions of the -[LaTeX Project Public License](https://www.latex-project.org/lppl/), version 1.3c or greater. - +## Issues, comments, etc +https://github.com/u-fischer/tagpdf diff --git a/Master/texmf-dist/doc/latex/tagpdf/ex-patch-list-luatex.pdf b/Master/texmf-dist/doc/latex/tagpdf/ex-patch-list-luatex.pdf Binary files differnew file mode 100644 index 00000000000..f0a7fb7f33d --- /dev/null +++ b/Master/texmf-dist/doc/latex/tagpdf/ex-patch-list-luatex.pdf diff --git a/Master/texmf-dist/doc/latex/tagpdf/ex-patch-list.pdf b/Master/texmf-dist/doc/latex/tagpdf/ex-patch-list.pdf Binary files differnew file mode 100644 index 00000000000..0cb89142bd0 --- /dev/null +++ b/Master/texmf-dist/doc/latex/tagpdf/ex-patch-list.pdf diff --git a/Master/texmf-dist/doc/latex/tagpdf/ex-patch-list.tex b/Master/texmf-dist/doc/latex/tagpdf/ex-patch-list.tex new file mode 100644 index 00000000000..6cf5edd8a9b --- /dev/null +++ b/Master/texmf-dist/doc/latex/tagpdf/ex-patch-list.tex @@ -0,0 +1,95 @@ +% !Mode:: "TeX:DE:UTF-8:Main" + +%This example shows how one can patch lists command +%it is based on enumitem + +%It uses a command to end \item (\meti). It is perhaps possible to hide this command +% inside \item/end{list}, but with nested list it is not so easy. + +% Pay attention to casing. Li/LI, Lbody/Lbody are different. +%no page break involved. So the example works in lua and generic mode + +\documentclass{scrbook} +\usepackage[english]{babel} +\usepackage{tagpdf} + +\tagpdfifpdftexT + { + \usepackage[T1]{fontenc} + } + +\tagpdfifluatexT + { + \usepackage{fontspec} + \usepackage{luacode} + } + + +\tagpdfsetup{tabsorder=structure, + activate-all, + uncompress + } + +\usepackage{lipsum}%\textheight3cm + +\usepackage{enumitem,xpatch} + +\makeatletter + +\newcommand\uftag@enit@format@preset[1]{% + \tagstructbegin{tag=LI}% + \tagstructbegin{tag=Lbl}% + \tagmcbegin{tag=Lbl}% + #1% + \tagmcend + \tagstructend %end Lbl + \tagstructbegin{tag=LBody}} + +\newcommand\meti{% end of \item + \tagstructend %end of LBody + \tagstructend %end of LI +} + +\xpatchcmd\enit@preset{\@firstofone}{\uftag@enit@format@preset}{}{\fail} + +\setlist{ + before*=\tagstructbegin{tag=L}, + after*={\tagstructend}} + +% keys that overwrite \enit@format must be patched, eg like the follow +% the font key should be patched in a similar way +\enitkv@key{enumitem}{format}{% + \def\enit@format{% + \tagstructbegin{tag=LI}% + \tagstructbegin{tag=Lbl}% + \tagmcbegin{tag=Lbl}% + #1\tagmcend}} +\makeatother +% marking of the text inside the list can not be handled automatically -- one doesn't know the type +% we use simple P here +\newcommand\TAGP{\tagstructbegin{tag=P}\tagmcbegin{tag=P}} +\newcommand\PGAT{\tagmcend\tagstructend} + +\begin{document} +%I don't want to handle pagestyles, so set everything to empty: +\pagestyle{empty}\renewcommand\chapterpagestyle{empty} + +\tagstructbegin{tag=Document} + +\begin{itemize} +\item \TAGP Ducks say quack\PGAT\meti +\item \TAGP Marmots say something Parmotlike\PGAT\meti +\end{itemize} + +\begin{enumerate} +\item \TAGP The highest pass is the Col de l'Iseran.\PGAT\meti +\item \TAGP The second highest pass is the Passo dello Stelvio.\PGAT\meti +\end{enumerate} + +\begin{description} +\item[ducks] \TAGP yellow\PGAT\meti +\item[marmots] \TAGP brown\PGAT\meti +\end{description} + +\tagstructend %Document +\end{document}
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/tagpdf/ex-patch-sectioning-koma-luamode.pdf b/Master/texmf-dist/doc/latex/tagpdf/ex-patch-sectioning-koma-luamode.pdf Binary files differnew file mode 100644 index 00000000000..238fdba9da5 --- /dev/null +++ b/Master/texmf-dist/doc/latex/tagpdf/ex-patch-sectioning-koma-luamode.pdf diff --git a/Master/texmf-dist/doc/latex/tagpdf/ex-patch-sectioning-koma.pdf b/Master/texmf-dist/doc/latex/tagpdf/ex-patch-sectioning-koma.pdf new file mode 100644 index 00000000000..495b2eb4aef --- /dev/null +++ b/Master/texmf-dist/doc/latex/tagpdf/ex-patch-sectioning-koma.pdf @@ -0,0 +1,1280 @@ +%PDF-1.5 +% +24 0 obj +<< +/Length 5640 +>> +stream +/H1 <</MCID 0 >> BDC +BT +/F29 20.6625 Tf 59.528 690.672 Td [(Contents)]TJ +ET +EMC +/Lbl <</MCID 1 >> BDC +BT +/F26 10.9091 Tf 59.528 653.751 Td [(1)]TJ +ET +EMC +/P <</MCID 2 >> BDC +BT +/F26 10.9091 Tf 75.798 653.751 Td [(c)28(hapter)]TJ +ET +EMC +/Reference <</MCID 3 >> BDC +BT +/F26 10.9091 Tf 470.797 653.751 Td [(3)]TJ +ET +EMC +/P <</MCID 4 >> BDC +BT +/F26 10.9091 Tf 59.528 629.354 Td [(c)28(hapter)]TJ +ET +EMC +/Reference <</MCID 5 >> BDC +BT +/F26 10.9091 Tf 470.797 629.354 Td [(5)]TJ +ET +EMC +/Lbl <</MCID 6 >> BDC +BT +/F26 10.9091 Tf 75.798 615.805 Td [(1.1)]TJ +ET +EMC +/P <</MCID 7 >> BDC +BT +/F26 10.9091 Tf 100.747 615.805 Td [(section)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 138.478 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 146.947 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 155.416 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 163.885 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 172.355 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 180.824 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 189.293 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 197.762 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 206.231 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 214.701 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 223.17 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 231.639 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 240.108 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 248.578 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 257.047 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 265.516 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 273.985 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 282.454 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 290.924 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 299.393 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 307.862 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 316.331 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 324.801 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 333.27 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 341.739 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 350.208 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 358.677 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 367.147 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 375.616 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 384.085 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 392.554 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 401.023 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 409.493 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 417.962 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 426.431 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 434.9 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 443.37 615.805 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 451.839 615.805 Td [(.)]TJ +ET +EMC +/Reference <</MCID 8 >> BDC +BT +/F26 10.9091 Tf 470.797 615.805 Td [(5)]TJ +ET +EMC +/Lbl <</MCID 9 >> BDC +BT +/F26 10.9091 Tf 100.747 602.256 Td [(1.1.1)]TJ +ET +EMC +/P <</MCID 10 >> BDC +BT +/F26 10.9091 Tf 135.458 602.256 Td [(subsection)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 189.293 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 197.762 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 206.231 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 214.701 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 223.17 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 231.639 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 240.108 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 248.578 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 257.047 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 265.516 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 273.985 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 282.454 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 290.924 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 299.393 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 307.862 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 316.331 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 324.801 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 333.27 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 341.739 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 350.208 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 358.677 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 367.147 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 375.616 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 384.085 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 392.554 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 401.023 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 409.493 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 417.962 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 426.431 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 434.9 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 443.37 602.256 Td [(.)]TJ +ET +EMC +/Artifact BMC +BT +/F26 10.9091 Tf 451.839 602.256 Td [(.)]TJ +ET +EMC +/Reference <</MCID 11 >> BDC +BT +/F26 10.9091 Tf 470.797 602.256 Td [(5)]TJ +ET +EMC + +endstream +endobj +6 0 obj +<< +/Type /Page +/Contents 24 0 R +/Resources 23 0 R +/MediaBox [0 0 595.276 841.89] +/StructParents 0/Tabs/S +/Parent 27 0 R +>> +endobj +23 0 obj +<< +/Font << /F29 25 0 R /F26 26 0 R >> +/ProcSet [ /PDF /Text ] +>> +endobj +30 0 obj +<< +/Length 0 +>> +stream + +endstream +endobj +29 0 obj +<< +/Type /Page +/Contents 30 0 R +/Resources 28 0 R +/MediaBox [0 0 595.276 841.89] +/StructParents 1/Tabs/S +/Parent 27 0 R +>> +endobj +28 0 obj +<< +/ProcSet [ /PDF ] +>> +endobj +34 0 obj +<< +/Length 86 +>> +stream +/H1 <</MCID 0 >> BDC +BT +/F29 20.6625 Tf 59.528 690.672 Td [(1)-585(chapter)]TJ +ET +EMC + +endstream +endobj +32 0 obj +<< +/Type /Page +/Contents 34 0 R +/Resources 33 0 R +/MediaBox [0 0 595.276 841.89] +/StructParents 2/Tabs/S +/Parent 27 0 R +>> +endobj +33 0 obj +<< +/Font << /F29 25 0 R >> +/ProcSet [ /PDF /Text ] +>> +endobj +37 0 obj +<< +/Length 0 +>> +stream + +endstream +endobj +36 0 obj +<< +/Type /Page +/Contents 37 0 R +/Resources 35 0 R +/MediaBox [0 0 595.276 841.89] +/StructParents 3/Tabs/S +/Parent 27 0 R +>> +endobj +35 0 obj +<< +/ProcSet [ /PDF ] +>> +endobj +45 0 obj +<< +/Length 458 +>> +stream +/H1 <</MCID 0 >> BDC +BT +/F29 20.6625 Tf 59.528 690.672 Td [(chapter)]TJ +ET +EMC +/H2 <</MCID 1 >> BDC +BT +/F38 14.3462 Tf 59.528 649.367 Td [(1.1)-574(section)]TJ +ET +EMC +/H3 <</MCID 2 >> BDC +BT +/F39 11.9552 Tf 59.528 624.619 Td [(1.1.1)-562(subsection)]TJ +ET +EMC +/H4 <</MCID 3 >> BDC +BT +/F28 10.9091 Tf 59.528 604.026 Td [(subsubsection)]TJ +ET +EMC +/P <</MCID 4 >> BDC +BT +/F26 10.9091 Tf 59.528 583.433 Td [(a)-331(paragraph)]TJ 10.847 -13.549 Td [(x)]TJ +ET +EMC + +endstream +endobj +39 0 obj +<< +/Type /Page +/Contents 45 0 R +/Resources 44 0 R +/MediaBox [0 0 595.276 841.89] +/StructParents 4/Tabs/S +/Parent 27 0 R +>> +endobj +44 0 obj +<< +/Font << /F29 25 0 R /F38 46 0 R /F39 47 0 R /F28 48 0 R /F26 26 0 R >> +/ProcSet [ /PDF /Text ] +>> +endobj +2 0 obj +<< /Nums [0 [ 5 0 R 9 0 R 10 0 R 11 0 R 13 0 R 14 0 R 16 0 R 17 0 R 18 0 R 20 0 R 21 0 R 22 0 R ] +1 [ ] +2 [ 31 0 R ] +3 [ ] +4 [ 38 0 R 40 0 R 41 0 R 42 0 R 43 0 R ] +] >> +endobj +3 0 obj +<<>> +endobj +4 0 obj +<< /Type /StructElem /S /Document /P 1 0 R /K [5 0 R 7 0 R 31 0 R 38 0 R 40 0 R 41 0 R 42 0 R 43 0 R]>> +endobj +5 0 obj +<< /Type /StructElem /S /H1 /P 4 0 R /K <</Type /MCR /Pg 6 0 R /MCID 0>>>> +endobj +7 0 obj +<< /Type /StructElem /S /TOC /P 4 0 R /K [8 0 R 12 0 R 15 0 R 19 0 R]>> +endobj +8 0 obj +<< /Type /StructElem /S /TOCI /P 7 0 R /K [9 0 R 10 0 R 11 0 R]>> +endobj +9 0 obj +<< /Type /StructElem /S /Lbl /P 8 0 R /K <</Type /MCR /Pg 6 0 R /MCID 1>>>> +endobj +10 0 obj +<< /Type /StructElem /S /P /P 8 0 R /K <</Type /MCR /Pg 6 0 R /MCID 2>>>> +endobj +11 0 obj +<< /Type /StructElem /S /Reference /P 8 0 R /K <</Type /MCR /Pg 6 0 R /MCID 3>>>> +endobj +12 0 obj +<< /Type /StructElem /S /TOCI /P 7 0 R /K [13 0 R 14 0 R]>> +endobj +13 0 obj +<< /Type /StructElem /S /P /P 12 0 R /K <</Type /MCR /Pg 6 0 R /MCID 4>>>> +endobj +14 0 obj +<< /Type /StructElem /S /Reference /P 12 0 R /K <</Type /MCR /Pg 6 0 R /MCID 5>>>> +endobj +15 0 obj +<< /Type /StructElem /S /TOCI /P 7 0 R /K [16 0 R 17 0 R 18 0 R]>> +endobj +16 0 obj +<< /Type /StructElem /S /Lbl /P 15 0 R /K <</Type /MCR /Pg 6 0 R /MCID 6>>>> +endobj +17 0 obj +<< /Type /StructElem /S /P /P 15 0 R /K <</Type /MCR /Pg 6 0 R /MCID 7>>>> +endobj +18 0 obj +<< /Type /StructElem /S /Reference /P 15 0 R /K <</Type /MCR /Pg 6 0 R /MCID 8>>>> +endobj +19 0 obj +<< /Type /StructElem /S /TOCI /P 7 0 R /K [20 0 R 21 0 R 22 0 R]>> +endobj +20 0 obj +<< /Type /StructElem /S /Lbl /P 19 0 R /K <</Type /MCR /Pg 6 0 R /MCID 9>>>> +endobj +21 0 obj +<< /Type /StructElem /S /P /P 19 0 R /K <</Type /MCR /Pg 6 0 R /MCID 10>>>> +endobj +22 0 obj +<< /Type /StructElem /S /Reference /P 19 0 R /K <</Type /MCR /Pg 6 0 R /MCID 11>>>> +endobj +31 0 obj +<< /Type /StructElem /S /H1 /P 4 0 R /K <</Type /MCR /Pg 32 0 R /MCID 0>>>> +endobj +38 0 obj +<< /Type /StructElem /S /H1 /P 4 0 R /K <</Type /MCR /Pg 39 0 R /MCID 0>>>> +endobj +40 0 obj +<< /Type /StructElem /S /H2 /P 4 0 R /K <</Type /MCR /Pg 39 0 R /MCID 1>>>> +endobj +41 0 obj +<< /Type /StructElem /S /H3 /P 4 0 R /K <</Type /MCR /Pg 39 0 R /MCID 2>>>> +endobj +42 0 obj +<< /Type /StructElem /S /H4 /P 4 0 R /K <</Type /MCR /Pg 39 0 R /MCID 3>>>> +endobj +43 0 obj +<< /Type /StructElem /S /P /P 4 0 R /K <</Type /MCR /Pg 39 0 R /MCID 4>>>> +endobj +1 0 obj +<< /Type /StructTreeRoot /K 4 0 R /ParentTree 2 0 R /RoleMap 3 0 R>> +endobj +50 0 obj +[565 489.6 565 502.5 336.6 550.8 565 259 289.6 534.4 259 871 565 550.8 565 565 374.3 422.3 397.8 565] +endobj +51 0 obj +[312.4 562.4 562.4 562.4 562.4 562.4 562.4 562.4 562.4 562.4 562.4 562.4 312.4 312.4 874.8 874.8 874.8 531.1 749.8 742.9 746.3 718.6 808.8 671.1 639.9 749.8 786.8 305.5 527.6 774.1 608.6 974.3 786.8 830.8 715.1 830.8 724.4 624.8 768.3 764.9 742.9 1055.3 742.9 742.9 687.3 339 562.4 339 687.3 874.8 312.4 539.2 578.6 499.9 578.6 510.9 343.7 562.4 578.6 266.1 297.4 547.3 266.1 891 578.6 562.4 578.6 578.6 383 431.1 406.1 578.6] +endobj +52 0 obj +[319.1 574.4 574.4 574.4 574.4 574.4 574.4 574.4 574.4 574.4 574.4 574.4 319.1 319.1 893.5 893.5 893.5 542.5 765.8 767.2 766.5 733.9 830.3 681.6 649.7 765.8 820.1 320.4 543.1 799.1 617.8 1011.6 820.1 840.5 734.6 840.5 740 638.2 776.7 793.6 767.2 1086.3 767.2 767.2 702 348.3 574.4 348.3 702 893.5 319.1 550.7 590.8 510.6 590.8 523.9 351 574.4 590.8 271.7 303.7 558.9 271.7 909.9 590.8 574.4 590.8 590.8 391.2 440.4 414.8] +endobj +53 0 obj +[276.4 497.2 497.2 497.2 497.2 497.2 497.2 497.2 497.2 497.2 497.2 497.2 276.4 276.4 773.2 773.2 773.2 469.6 773.2 745.3 704 718 759.2 676.4 648.8 780 745.3 358.9 510.8 772.9 621.2 910.9 745.3 773.2 676.4 773.2 731.6 552.4 718 745.3 745.3 1021.3 745.3 745.3 607.6 276.4 497.2 276.4 607.6 773.2 276.4 497.2 552.4 442 552.4 442 304 497.2 552.4 276.4 304 524.8 276.4 828.4 552.4 497.2 552.4 524.8 386.8 392.3 386.8 552.4 524.8 718 524.8] +endobj +54 0 obj +[584.9 584.9 584.9 584.9 584.9 584.9 584.9 584.9 584.9 325 325 909.9 909.9 909.9 552.4 779.9 781.2 780.6 747.4 845.5 706.8 674.3 779.9 822.5 326.3 553.1 813.7 641.8 1017.4 822.5 868.6 748.1 868.6 759.9 649.9 803.6 801.8 781.2 1106.2 781.2 781.2 714.9 343.9 584.9 343.9 714.9 909.9 325 562.8 605.7 519.9 605.7 522.6 357.5 584.9 605.7 280.8 313.3 573.2 280.8 930.7 605.7 584.9 605.7 605.7 400.3 448.4 422.4] +endobj +55 0 obj +<< +/Length1 721 +/Length2 14150 +/Length3 0 +/Length 14871 +>> +stream +%!FontType1-1.0: SFRM1095 0.3 +%%CreationDate: Wed Sep 12 2001 +% Copyright (c) 2001 Vladimir Volovich <vvv@vsu.ru>. +% See the file COPYING (GNU General Public License) for license conditions. +% Converted from METAFONT EC/TC and LH fonts: +% ecrm1095, tcrm1095, larm1095, lbrm1095, lcrm1095, rxrm1095. +11 dict begin +/FontInfo 6 dict dup begin +/version (0.3) def +/FullName (Computer Modern Roman) def +/FamilyName (Computer Modern) def +/ItalicAngle 0 def +/isFixedPitch false def +/Weight (Medium) def +end readonly def +/FontName /HHSFZO+SFRM1095 def +/Encoding StandardEncoding def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] def +/FontBBox{-188 -320 1445 942}readonly def +currentdict end +currentfile eexec +oc;j~EЪ+`U+1;[ihd_Twρb=I"aě!]#g~Q^VmcNtقP*4Jq=G1`ސnG)]'Ze+hb?%_hpY5(9Թ-H$-:ynK")cff,vrG+@) +`{/}*D@Vٴ:Ix`(]-.a1ŗ/O)@0p<n-fe̸=yrB<S'Z챒ZyDX㣢}'MZc|-5,fש39٦4y5+:
g}`)H@ R/{x}PzH2LK$Q "jGϜd;'w-+=0"e<a{6 +oK^"]npY\NCE,pJ˪ڻWGBdSQis;叮՝dɷziR?X<nJgD +AwkR+-]&9Ze"J{|+<+r3K0Dw(
yVRfۢOű8EFxx~lϧA&۫+|~n0+=K9ʧ) +C*j +ʢضʸ +Fo?apt#`J68%`o +1=31#QtP#Y?>IѹB@=TLX+2*"V&uNQXKfHt*NxsH*J1Kl<OFxgt#Lڟl&!^cnԘ,ҷe4I>a C^B +R];{ܻb9|4A_cؤ1t-b0q+E0Lf1XwcU?3B0Y>҉m'D&G;GwV![ŘҭckdmuV~w^Wc Pesoph>5T&^WUۉ) +ǗNhSHWd<]"}[w"L9 !0G7!l_gג.V͇b>*[ +V8hn^$w8"."~ bG!eIxJu[Q[HШQ&Kp5d %f +`R^g
)alCY
5ÌG̖) #|FrHY\ISާ)dPbXOPʶ|b¢D,<qULQzJXW!wShn BdcP0Y>҉m'eHUDџ6D{zr#}q]`ќd!ea"\9E9D*R1[6gw}ϰ@8 +* +sZd<"sXAyt`ve +e|r5|7* +}V!PFq:b?`29Ҿ
. Ac BxwQz6䴊Y(Ub`ؓȇ·svJ[ +v~ +u@5/V_-/^^dHZZVXGBѢX +%z"QųoŹDEZYGqlP:!eVX~[l$3jY XU}6y~^yOOy,Io\o7WQ]f?:uEYRD|IMJ5wt(ڕL)HkԉqXI[0u8l@V62N$*,!94&LҾ!"7o$?i[Y>9iue!H(ds,3'1[͞L̈<!^Phx&^@ݥ
{~!<ن`:y&_a5TX2zzH+3ږA8G?O?Ml + +F?5gH3Qɼe'i7&9Y+BI'o,l686h?c)CTrH!7a=1awscpDHaKҏR6<}[/Uذ3qЀBJɌ2W"`6G1/CPuY<$W86%,H9qyH3pWz"#\tK6=k +?m? +EK=ie~hACVS'BZ",-C`{F)Ђ_I$Lb{apys̠\[447?TMd~$%, ogASi%GAn@ sy]pq!ldKnr? \":.Zt&uqxN*ZjRT*dr 5߆/F`꾢)-Iѯ;a7hE?bV~B4Uװg>6j3e 7a0U +ˁ1纷pN8Y!7_3)o^Z@]_?U'
p̬{uA"o%\g7xZ3gVU?8"_a&wl
(ؑiɍ$k":n2Xm*QՎI5W0Q/\# ҡu93ZDQx$ +ajKr6JcZ|{y7W >aDS36 +X0}!3He
65+o +.+>ǗsP%gwe7|T rXL$b& +r>xz:\i:Va kzC~S~Sƾ~)گ]1Kֿ +dL`|VcH)>}z4Ssh c*b
aŢF+r\7wV{8RlGёPw=K'Ǒw
+إn;u˾#SoҦd-.nLp%N<ifj, +(CZ߮C>"sd~_{I<i_!J/7x飠5xuu`s_z9JnG$k2'& TS!i41Bۨ}:"k}ߩf&'u"23C{ ~)Ū3zF!+J8 +wSZS;Ve
JJjgx}Z' +bGI3OW rNAc,[@ҋN7Ф<,<}o@rW\fv=ҊA =bSk FCry.Gܭٌ`](x-NW2k!BhVW@?,[- ^`{p ۡ9PP,&I6`f㩹uKoǴ9Kyb_mô5+?sV +0C
5;{%+&ve
N%3]MRhYDT{]N=.\o!jX]V>M9ZɃS!DcSYl1W]f +KD{6sH^S Ub˾]/b|]hcpR)3qK0!a)dM`®Ss"HzSLg>Yt +g5g
i"; Zuk=V~ӂ-+
qlhUMe$uqP須4<kū[{+S{SJ)E..qZJj&@Ll4L-0ٳV<5rbY) [p[,eŴNhye,ɤK2TC?-=dCs:hT~gXݵknXwh&{i^9z^I54#O&eI&fdMIo8/~]R(+ԼAcU#KQگ(]'*O௷RpR~$b.@%xaYRR=D7LDA=Ad#Sާ-%ݐS0op"Q¼s%9Vxz3w(_/롘ydqEHDd()lF}/QC4|*]Zo,^oJ˷<g7{|T`=!zE?Ź@E(Ax|,& +탲ܯ&x:O;#dxUn]#\H>dC|u*X=WZL{%flJ~rvH +(iGYhvO0Wcߨ|BM##
L+G,bD=45.UDq')[~&)
`(5?ձJ:A
`e dWcĖK@Uـ;lbd`+CI)B&"&1d1iKk݁5Nn<=dp~+أ +¶&"]qU!vj+MooTiu* +%</B˙UהrV@ik7
7=R{fb!cBx/Jj'>NWTs96z?(&Bt<$===pɏzSüF 2֜/ \8[CEFͿFfGPbv<JYᨉ6tLԆ +Acl!{v\n@!)%o2qXb% +i@ڈT>dL읽ex6dZhp"K {E{f詊TikIʵE9鮫}OJȊ*Q[0 x0d,#]9|(79n.<
m`'c7;B$JB7hC1VuR Vp`ITP{NvEdMOrPNx/V%Rޑep2=@sXDo݀:d؛k,$NIuڿ\tI$)qkz~7LVOo&Kqp_[QbFln8[aڤ[$8qY9
{ EUV.ysGߑ3mCp0WxYdcTVEoez.nw$3 +8QVd'3`9HvJ7)o &a +t42MUO(} 3^Z*3sZ#l{i[yLn08/2qLȕԱ]EB[ɳkZo8
Rۊ +j=p^*^)*ڬmP:7SYc2g%'&%ޥ1?2@jE3tl!9 +U9>cLM?#{zf7|Iw諎C.V/~e%YOY# +:)
Jrv5W(#эϋ] ;s"cm@Iˏ'+>*?nB29QγP(M|_Ib.NIVĻ?~$~L<Q"BQ]9Ax)4I!I {lۯ?^XL{Opa
K*X~%dC|0!+zM8KuR)Tuz},'˺vp;"˔ᤉiÒs.2
gpX=Zx4ZVǺ-OFy3N]I> 0ll2}vWGj?ܮfxϻ~\N]tR)UQHD{Asl33l'`o7V +8 +Yoe${S·$`gW~_99kuOW"i = l}yz}Q}xihʢBainXUAʐ\eNVЀ._
e/'#ي~"!=Re +!GQMy
jzg&}eHa]Д":gDZ3.qw"wSF˷:THY 6"6}'>OK=O7YIGVEc'!FW%zERfʎ\)o:|>**S+g0U͂Dž\O#pEs@x%Т\?[ߴ$ȣ'j6Em J kclzuNX۟)zuEoǜ%v{
9-5;I疲^jtb.0J;FxR#a@j` +9J5~@Km* #ذ>.by*y<B,\GJN,lVZ$/6G~n0FH4^Jժ=&炕lm14*ݻrqEύkX7smxfACǑ|)q:-㫔z +)џ
-*#~~WnwKNNZ6yh!%`V9Pf +9
NQiF3ǝqdSgx~p#-xNS +ִ݈gVL
)m&V-y[8G:%`wl*gZi2;XJ
tZjkI3H +DpXاfZR
l8s먴up{M+ Tky
SB
vRu3 +endstream +endobj +56 0 obj +<< +/Type /FontDescriptor +/FontName /HHSFZO+SFRM1095 +/Flags 4 +/FontBBox [-188 -320 1445 942] +/Ascent 689 +/CapHeight 689 +/Descent -194 +/ItalicAngle 0 +/StemV 50 +/XHeight 430 +/CharSet (/a/b/c/e/five/g/h/i/n/o/one/p/period/r/s/t/three/u/x) +/FontFile 55 0 R +>> +endobj +57 0 obj +<< +/Length1 738 +/Length2 12419 +/Length3 0 +/Length 13157 +>> +stream +%!FontType1-1.0: SFSX1095 0.3 +%%CreationDate: Wed Sep 12 2001 +% Copyright (c) 2001 Vladimir Volovich <vvv@vsu.ru>. +% See the file COPYING (GNU General Public License) for license conditions. +% Converted from METAFONT EC/TC and LH fonts: +% ecsx1095, tcsx1095, lasx1095, lbsx1095, lcsx1095, rxsx1095. +11 dict begin +/FontInfo 6 dict dup begin +/version (0.3) def +/FullName (Computer Modern Sans Serif Bold Extended) def +/FamilyName (Computer Modern) def +/ItalicAngle 0 def +/isFixedPitch false def +/Weight (Bold) def +end readonly def +/FontName /FKLUEV+SFSX1095 def +/Encoding StandardEncoding def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] def +/FontBBox{-229 -332 1765 914}readonly def +currentdict end +currentfile eexec +oc;j~EЪ+`U+1;[ihd_Twρb=I"aě!]#g~Q^VmcNtقP*4Jq=G1`ސnG)]'Ze+hb?%_hpY5(9>(&sـ1
7_lu~N 7cG2~VhwdO_Fh-J&(jrqQ<
+V\@RxL +6}f *|s5 +پQp~!֘Iqyd!L"0L|8(;uԒb +2%nS`sg|wvq+,Yʞ
t\3}h cs*aV\% y9Hw EOdW&!677߫A/RFj߬inM«L'{rUzo@eA>!7o7b!j'N&(_N~<-k!~;dqS]%
:A871oGE||43 +JUcc'z`/j;p/4?=d9 +$rXudư +{|`t}c72f,WFǦ$|`.2DsVRf[fg|jiCTjk}θn_{?Kp9ô0yzf9gC]OI[+̚Gѣ*$3W t]*Te$"N6 +.iUX,o$[*EF՝Uj1n6͐Cb<']aEۧ~$fTM#<-G,+t+*xzm=B`Zkz1T0 t*>@3+iRM3+w˼83`o} ;rJ6wQύN0t6p{9ȑ]WeO]ln%VD1y r^`es%]UTfrFr ʛ'|qvYCOIx1Z5!q~dgFX#h,_1bx J-Ȟo +[ 1HsǞ#H-ѸEa"b(k"=oθ%s'g3>G}4g#gReL=>K-W"n` jzȘ֦\)CmLWY$VPodo{篛{'0
rwTz[cmJQY xV &\:,L*w
;B,ĠQ +6[uk\zs'Y`1
A=%ܾV9n`xl^!sb<PhGZclo}M4:jݴAq35:c˱ɧ᭮g1ؠ
't{hOy3))<tq9N҆c"a3l*Թ(O,0Wz_Gj'|}Lh8.K}x>Ս2\$+6I%m;gj)|\h%Uϙ7xtW>U.b + pw;&1Pa9M<NimG0ԡݰC٩ͅޖЖ1\Ay$ȉYRBщn>.DUh M4#RHdzNo| 얾|zFpSVixD|a>WrMKEe?$iERhF<83l= jphfZ;?uEB?M2`
3Q<7ru6CbXDG#\<H\8B9))Q^e\.T>%7U1Wf<'[h4x6UKe-Plw/Nz̫.1즓X{^a){5uPy|FЀ͞mS9N5SCCx5|`S<S1BXO(Ъy[>ThD!U]K)!!ʕ;qn] ߐ2 +==vN~dG{R iб a@cqCO~wa*969vN歹dLϯ\se"\8ǨzYpe,rI +3ykNOXpD*g ȤQFX'Xl7l%%LN#eH!{0G
R= {o 14!@םx4F,4|yZTYX%_V +I؇X\Ѣ,{"PoX/`\3~KZ@W̢=O4mG3UǀQbyh$?:+YJ~0^,g?=G +j'd?v^a+YIZ_UxWWgYj#% >Z kBT5Dm +uܶuP.,Gk캳T
@&F]g +P-qrKT#/~Az=/Le ~ޫ;Zl]u!b=V߂-u/ba +7Ney{@R!h:
Xr$ճw0x0k3nj4B^,ybl-JRk2yPzmQ~6V +OlY6_[V%FKD' +3mnCG +sάͩ5 +͏hj`מ3feيx]_i?h)8ܨ{̮?@F+<hbGӋ\6#w +xH +Qxy4hดOrPkJjuƛLB!̀r$ɲhUe\::'%T*sE`_Xe~}KcNmM9{r.˜Uu8n}IAF<P8jʠk/WgI_feu+oaSJ33ȌpI1R}L]"9+ttU+ +#ڿn^Aa7ȉu$/,*4HºJ~P0d.ݓ`uݩO@8
Ӛ?L/؆[prTuST;6%ˌ(If +է +HdUνA?G!ɭ_0E)Y(܊AhO5f`J_<9FE*j
0)o~PMGT/!t=]U-ZWJ7kw.՜byraЮ\=OLEeo<UW3;B{GVE$ŘN}zu@gWugқYD>5O<郁f$d\</͵A TBoe%O|<(.OHn!:ҢvxSD(T{^NgҖA`]U]81z;|iSP~q2y(d_ď7/]9hji#\ ,RuGQS{l4=2.4\aZ}XiU3_b(ݽ P\eh]U1*iI,N6-3_O>&(2wPVˠj\;|=(P+2\ +hI,JTY +)>GRQs䙿|2pq#5BI#OCU +8Ծ=Mm!>[h?ۘs`dž[ +TCG}P].K%NL3;M$7YSB/؇%2x$7PAA[%hE4%rBbTv&Z +va<':t́FRԸn/'-+n{*vx +X{blɮhK +<dL
+ Hq8mNT?^G_OdSXLJ1_%e$CҊgBɶ"v& +nOvՃeM~Y +|gA8LmIr<*,?e'5Rsk2:yn'k- pOOX/p9,3ljsst
mxri6'rq,<j-'OoIt'aHdzNi +ZC^s&0lV1śMpSVP(=譾|dT([T{~>\R C[$iJ+fV qI%w2b-ז?1҆U{m^YZ{%.LwjJUUpu+a^D;G,ajh_j#J8Vqct]8 a'БO['yCux*1KnBAQ厅Ea34gvK%g~fː4o3gIaV(7̶>@A#Xɱ*wNq
+rcݮ4K#XCulIӨj%12륽~)$H58!"+HUgOLw&Ѧ >kscA +endstream +endobj +58 0 obj +<< +/Type /FontDescriptor +/FontName /FKLUEV+SFSX1095 +/Flags 4 +/FontBBox [-229 -332 1765 914] +/Ascent 729 +/CapHeight 694 +/Descent -193 +/ItalicAngle 0 +/StemV 50 +/XHeight 459 +/CharSet (/b/c/e/i/n/o/s/t/u) +/FontFile 57 0 R +>> +endobj +59 0 obj +<< +/Length1 738 +/Length2 12694 +/Length3 0 +/Length 13432 +>> +stream +%!FontType1-1.0: SFSX1200 0.3 +%%CreationDate: Wed Sep 12 2001 +% Copyright (c) 2001 Vladimir Volovich <vvv@vsu.ru>. +% See the file COPYING (GNU General Public License) for license conditions. +% Converted from METAFONT EC/TC and LH fonts: +% ecsx1200, tcsx1200, lasx1200, lbsx1200, lcsx1200, rxsx1200. +11 dict begin +/FontInfo 6 dict dup begin +/version (0.3) def +/FullName (Computer Modern Sans Serif Bold Extended) def +/FamilyName (Computer Modern) def +/ItalicAngle 0 def +/isFixedPitch false def +/Weight (Bold) def +end readonly def +/FontName /KKGAAD+SFSX1200 def +/Encoding StandardEncoding def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] def +/FontBBox{-232 -329 1767 915}readonly def +currentdict end +currentfile eexec +oc;j~EЪ+`U+1;[ihd_Twρb=I"aě!]#g~Q^VmcNtقP*4Jq=G1`ސnG)]'Ze+hb?%_hpY5(97B2]C2Oazݐ*u]QDnX*vZXBĴ,B/4`b8}&PdJؑ!Ics\yFjA2)z-L<i!"qZ
@&M҄R +3,ab<ΌzmTbScMk}X#1dNuH(iKyvdpxˌoj <mod W!k<0nv_][!QЄNVyj۳sҺ[Ʃ -VP{8%T + JV'^LB|<B{"KK +殖މ<2T3)4XOF"QLknS"ۖuFhi,Gh +!$t43tH6hj1D<Q<5EB_r{]Ya?{%((/NRqv##= +FyhA6BJb[R`͆cO]p3cJg>P/!)|pw5IZEh]BU>[X8-64qכ>(FuJzQ.;аE\]2ޞY4]7Yw!*q&H;
tAve4|?hK <ș_<쥱A/fĜ'HQFiȭ~OAr1Z{~+ZQqt`fN*[6W[Qt%g +Y:{MW沨ڙG^P]FJpύA{~#MJ
kʕm0
m |N,3* ?(O><Lex.6)bHEM\/b}`_7UL]T{"nfwN! >؏+` ~Iud]AOy0{4XWK-Ʃ|>8Q"Rhf +o۰;-O1b#60<IS%a!iyEjglE?Y ~z%tZQ}Q$O+tO% +u_ẁdLMKL7%]>z~ 9N<\|]x19]E}5 +띯tnDy8{1.Q@6:N\+P%%[n;%k_X +^ϱp?wofӧ8 +(>T0$'>},OmX'.,$/1NYYrһN!1^{U'XDUrp}8*&_zwhJЩʔ>R#Bu6@G|Hk@ݨ(V?Lz`L0Rш|tʟ]~,T{5fe93Q"}l!7`/*2)}[A2c>4 rTim{:(-0yD% U&fTtnoM3%YI3OǸ&Ð-Q0G?rly[Ϟx99!|8 +_{m_kL~čCG%M͋?rMczrm`|*D;WY`i{?~:jȟ)PS;due|xR%zNMŞp?Fv +V4-0 kYH?,K_d;7U0J0E>Jk)'uc3E*FQtbދuIѩܐDiHc^qWh !MxI͐];Ƌ`Qg)ACT\"pikpk"X`yii L:9å54n!
nd*4"Nx0'o9ɇD +92J~ +1e -op +FsICe./L[N3` +֣rg̚WO=N"Bi;&o7ŵ^' ?yHp؍vKߒm!Q͕VI{HXj +JM[Omg1P̩e_d#'ܞ\хn#5?*|.$XC5Y]4nuA&H"()閬 26Q]ȖDStr&^1kl-b?a,}h8(\yr S!ٮ`[Zr+mX#
$SHx\|ce"jԜ:)C#m%D/X]+.iK܁]w.%Q 'ѧ]I01)m"*䯞*' 7#{:½`)ZUy_y;O6n. UmyÐ,Q 3<8Wր42L)z2<zB=Jvbi +Vuq*+1;#F dзxq\|(ct|#N4m9BPԹyqY8oH#ag*J_4Ǧ-bMHtx;MN['3 jBz\{wX&7u"p] +~mS_zWs妾WtkZ]֠2Llv+8p(;Xŷܲ:_%e%K8=@G'?UM][m w,[n:?8k`@>x_}U#ͨ*)s3=n9I:5ijr{QWJaNi3)ItlKuO
@OmiöqK!1۾xJCHǨYn^;[*}AQ5|%->O<kbb\Bn͔8j*8Xnˉ
+E*4!Db +oiAvu&bEҘpztYI@kzgfZpe<c&!>lɦ+J4 +QNpa|I.2Q%V%)ْFk;\2M8ՀXrvBi/m6E9]6\HEx[_U1]ưYSAFՑ ?XghSpip\Y=yٖ?CxEH&DRgu+n`+sJ,6cS]:yOKS<I3 +L7.LLIޞsA?;|TܾGR=(r4D[ye5/,tDk!ث%GD?K0*
PUVN!so9@* +Mfq݆EJ#GZd@)g +CDûu~cM%Q59zwj0_`/]߿.?
~M6xw5|ٟv!*A!iE쟑lf;쭹<JdZ|KłI9XO-٩!xRhhy<Ϸ̓Km5b>{<!^ErfJ>\@NWa x$%aQf텣;\ :4C1iK,_ 5d01B)})LgzԈ :~Mnt=.-<2f&~赍Wuޔ|rT_ңB;6~<8'V`?S+-һN\lRy\8W{}&KJ|FQ3%sϙtKC +Zs b<OAoiͲ%?A PpB2Zm}|n;2,mOA"6%@k9{;г&}ez +n.1WSUXtڐ,f +ߎ2M1o%>pKݫAѷszcAXOэk}ĥ;]NM2D7}k-Q6wT"FLc)4})<vp"w{9s٭MQ2}fѓc(S@-9ϕHBF=q\ϬmUF.YzF",.o/oXߘAܿ=IPVZtr8cfmb1
u7QIǑġn腜Ɉ\#̼$i9_;?ed\gB";YAㄶi88&3qZ\Ax|"<yu>Q;z6Ceŋ|9%4Ÿc{sNfdQvRFEan0zduhrJ!Bу-`ȓ +? UI6C5l,_DjglE?Y ~z%9^9̫*B$C:Z0`P#vu<¬c =ĵ&_grr@>(\fpP;;+m̙V]$CQL)Ln<C(R}K?;q,!['8*Gv8 ^hQ%=/A8c~q) +gs V!&7
2IUÁz;rB~у1.=PPȕTJ4Ae{f) +i
v?uh
pbqhdm"E{FCeAڑ+T:؟ZJD8/oUQvЊ*ӃKi v DQ@ <Y}魿bՂt +90-3r%iޏ!2Ĝ5 '37\>lKt iͺg_B3OD'*15v\2S&`bV½VІ?5ZFZw +:/!V l͊=vzv
H0ptxU(H߱X氡S~dfCBW$YOk34ګ]Yz ?q/Zm6RVgSkBi6ҧnD[U)&qY`-)o:UhrJ3ET0F, 1JCt~`xqK`RlGq$o +ahSs'B6.+wi$P +Dkt:l>"{N8ymhJNT +l1"$_ί
R-N.6A)uKJl,j!41>'J涋˓&m`+6 K +IR4o X[|#,?;.ҠR +n\XM +`x.&'RQa:[ZDTνR\\p9UcX#4_ޛ{CFv-e2u`usO9 +. 1K[?wα_bKt{JOWwN
b
~ +0'AxH`i_ts@bh*i*Uڿs9',HAR08a9\/f +ګɗ0?1`*
θ1W%*+6%' +endstream +endobj +60 0 obj +<< +/Type /FontDescriptor +/FontName /KKGAAD+SFSX1200 +/Flags 4 +/FontBBox [-232 -329 1767 915] +/Ascent 729 +/CapHeight 694 +/Descent -194 +/ItalicAngle 0 +/StemV 50 +/XHeight 458 +/CharSet (/b/c/e/i/n/o/one/period/s/t/u) +/FontFile 59 0 R +>> +endobj +61 0 obj +<< +/Length1 738 +/Length2 11968 +/Length3 0 +/Length 12706 +>> +stream +%!FontType1-1.0: SFSX1440 0.3 +%%CreationDate: Wed Sep 12 2001 +% Copyright (c) 2001 Vladimir Volovich <vvv@vsu.ru>. +% See the file COPYING (GNU General Public License) for license conditions. +% Converted from METAFONT EC/TC and LH fonts: +% ecsx1440, tcsx1440, lasx1440, lbsx1440, lcsx1440, rxsx1440. +11 dict begin +/FontInfo 6 dict dup begin +/version (0.3) def +/FullName (Computer Modern Sans Serif Bold Extended) def +/FamilyName (Computer Modern) def +/ItalicAngle 0 def +/isFixedPitch false def +/Weight (Bold) def +end readonly def +/FontName /RQIEES+SFSX1440 def +/Encoding StandardEncoding def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] def +/FontBBox{-238 -326 1844 909}readonly def +currentdict end +currentfile eexec +oc;j~EЪ+`U+1;[ihd_Twρb=I"aě!]#g~Q^VmcNtقP*4Jq=G1`ސnG)]'Ze+hb?%_hpZePEY}κH=-g0Q LyfYԙ >#N
>iyMզxbt,rEk](1ۄ84C+jj苑JXrIoce3f
lf%/5lZlKK˥O:emphM|_Zm+Fԫjkb);;S&wxgtsHVT}q3Ja_7rGjm +J[H]~xuAE2t|.5_0pŘF>}GC@ZSҟWN >Z0[<?8s۞-vă唊Fs3H+Ex)e^ +}#f^9<!:Zԣݷ+d{x΅[4]"ikgrnO\k|x#M-!~R)*oG3~ngr#L*ڌNݏ cdT=h4q$GF%t0K[3fqBVi$.O\ ++BإoR22iV_zr PC@Rv#L9"be3` a߹e_/ +GeUCWRw.Ք ?}-Tr[w,JR&g:yB
>a6Q4SY*dz~9w:)6@yiX_Wby +yFnxyהMQ[̍$!}lsR':{n=B1=;EeE6e.[rLcp:c$cwmI}HհyVp!p{6By"{Jy$dݦa\<xЛWSDŁ +'tі0!.\H:u*Aڬx^w{wkTm/X<ڃr"-P^B:27b3;x&USJ?-GA<HEsϕ%p] +@U)RLU +
@90!2 +#b@P5\Bk6Z_yr2p,#^:'{ +5iP+/@mŘb}ڱF +6q̈x%.4P#b6@=}y"B%R8zX^&kUyKc;pKY5;_B1jp3soTh]"LKtr'^〭⌡=;@jW<.Z`Gb^AQr3tmJiO-<8COTcaQhƐk"U(RuQu.EUJ10<:cﰬHK_]f2Nx]P\GRÇYsO +jhkZM0,:5F8 fEYL1i4ײj'[?#l]FF0];YI9b8oKL@""8eD"Ȇs$R`2YyScJ
i酇cӭ%ssx-`&?Zln0Uf+ٵ |Y9MBd3u ]9>$IPsźFgG`,S\v^<~#0'D +p}LC!&B'EguΰORHC3|D}NRUQx̰1N>1rEI3TJ IhSߟp"Y-hYV,gHb%;Z J1rPvwi3ј2\oI@M6aaQn'm9NNvq" ۪N'`k9Γ.P*ɣ+6*WNv%ɪ*qcU$ǰqIrH1BYQt8_TBg,C!"+uCȵH7l#VK`jXW?_2j}4I9
L6ʡ+<P=+A%YY>>D~ڄI/I['NfsUݴûR.Ъ<%qt!e5naXb"#y7K_ʓx>HzU-Eyj`W@RDs8
w?c5Bkj'/v"`SɃ<27dHF`cyO>
$W;1/^ҏLJs0;G*TP{gY1
;gD%B]Pm\MEsX +wsߧ+]B6i_qOҟj&P03zvedRl ;ڥ81xv9rL> + +VΕIq +PA +p{oWacEM@wYӋ-LbHEP +bUY0w{\)b*4{a1 6
X)E>ҍ$4مs3m_I|+E
.1*}Md6}F/{
GQ.J]9o/J' )/U9xU$ԉ桟un*:%G@˭ +0mgLO0jTzxz<iu skʧސ۵%F}!eՉ=D*#r 'VhTT)ZY~ѥ1wE&>1zL-uJt)6ΝY<jD' +UtvVjf5^)CRO4ɫ=DgitTJ LLYa%T(*UM_m$""L7QT/= +-ToP7K!+*mz560(L$bБ"d{*m
DE^Рm +a% čkx
']T9zuVK-^9|ۄB:fZb%u=gkgHb8vT84jOA:Vkt$l+O_G9"/Ǔ<~!h5'WpLƋQ˜b+ rKV:添I{#3n{{^41EjsFk)hu-+x|EhS%CLMh#8ZkA\)>!fаZj$\\C(+9;1KlW$,-ZCld< +lNh:GYfX"s0x%!1F GD?l*`ӢE1.#
n>z\>W27qKo;mRQ*D"09O<& +N .xǷhͱ@0uɜ*Uۗo?؉,ȽDWDpNFaTƍ\܂oЮ [A!Y$M UW)OSPoT.R<UCuL)1?V;@6͢K^2Fm~UN~ECW2ٲ{U7Kdΰ6>oI?9gwXftxpXNHO4Mq190 *~Bl{4
A*{L)$ +I̾0*ҩ".yBf5)!xcR82(HtIX&{t 3!sGj:0esA|ԫu2 #7Ha)Xi%
dhg-i-bPu$B/'cizvV 8Q/,ϫ*W}lA<7
n7c +[WŶxF>N,Pr $ +z*9Z
3mEW#mpe0ʜ,uQA h9ɑxԮ؇zĪ9NZv>/ʐeD6[[#SU-]jGilu~ә*9m}MDF?)&+& +%,@۞BLvDdlUq=:&$c,׆!FL;&N7C[*,4|/G~p/3%[\rڝXeCQ-rS3BʗW<
)xw0*N)MpPLV]3ڸ鱃v[qq|e8rBmrPVgYj#8wUG8j+xJgjK._,`.(QU:DpIqmm +h#y/}]96_D3HIz&:7{ns"c 4m;0f^O;P3lV*_9wF>Xigo%q:~)4Ƽص&J*U +r6C\]:Z>EPot4'jЃ>3-i iaf,9cNfɶuy,2vHnJJtZ2R?;)r:Z0<l8:YQԝ百5ڢ۽gVNzAãuXdMuIp'=h|Va65&|HJLct7{7u/~laDROzSVOIҏ\ ߢskWiNݛaی&FWGRRR64JH#PkXKkQqJ*õEgf0~3Z!O.ԗ݇.3DmOs@mt{BF_)Y{, <fO
4S7XUn3*>F@ex*%63@Cw+w6>oI??Uŧbs@)(&S_ga"$rg!6%
S5)Nbu86K*y=>(
ı~)098ls
`_m^7W5=RR8k$u~V,hJ.XɗJv4Ek!9C[Ȳi#H6)؝JqCRGqr`e$Y:?oBFNUE%~(ը~믐fBaG)SԊpt-'] mI/fR4]B6 ߡfL^!Ě=<4>HҪ +M`8#E7JLuhw[N .h#7MV^jr؟] |h+SPx7JJ=!&#_Z#+ܳ"KJz\!zfz7¨M-,vn DN Wئ ЍY%\"#pLA1t.BBƺp
ĝz^n!0k$X\LI_L+0Oaatj&qQ -
5:\}V-PNyŃqpCt1l+uy &U*1?Ivݮ8|Jmc&9ICycjMȍ +?pʐczw +ԞN*'1cXd"}c8AH:4?80RLgī5 +Mz +t[s&p*ձ$7!Bjg%Eie$Kzԫzuls[Pzsu_ȭ`5?\1?d^yE_q1~=mچ`Qi +i[ R0X?H*ѮaZWH&M*993Ysh a>ߜԣJ`Lq~$jiU"nU?hrd6G@:}{|C׳.ymWSrhޖ!!j+>Y}%i + 3_3.#&mk5;/5qsƚL/:qlV2薿&P)4-|y=SrbQm?_zRc]srܦ*>eX#dB)iɧNX!RePϓf֩dLu <'9S}Cvex@wGT卖%B#0#011+{
'Rrx\[mmtoz.*l +uoCpMcQ؋6lԁa:@k L5̚ \\C< +endstream +endobj +62 0 obj +<< +/Type /FontDescriptor +/FontName /RQIEES+SFSX1440 +/Flags 4 +/FontBBox [-238 -326 1844 909] +/Ascent 709 +/CapHeight 686 +/Descent -194 +/ItalicAngle 0 +/StemV 50 +/XHeight 451 +/CharSet (/c/e/i/n/o/one/period/s/t) +/FontFile 61 0 R +>> +endobj +63 0 obj +<< +/Length1 738 +/Length2 8972 +/Length3 0 +/Length 9710 +>> +stream +%!FontType1-1.0: SFSX2074 0.3 +%%CreationDate: Wed Sep 12 2001 +% Copyright (c) 2001 Vladimir Volovich <vvv@vsu.ru>. +% See the file COPYING (GNU General Public License) for license conditions. +% Converted from METAFONT EC/TC and LH fonts: +% ecsx2074, tcsx2074, lasx2074, lbsx2074, lcsx2074, rxsx2074. +11 dict begin +/FontInfo 6 dict dup begin +/version (0.3) def +/FullName (Computer Modern Sans Serif Bold Extended) def +/FamilyName (Computer Modern) def +/ItalicAngle 0 def +/isFixedPitch false def +/Weight (Bold) def +end readonly def +/FontName /FEKEGK+SFSX2074 def +/Encoding StandardEncoding def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] def +/FontBBox{-234 -319 1740 892}readonly def +currentdict end +currentfile eexec +oc;j~EЪ+`U+1;[ihd_Twρb=I"aě!]#g~Q^VmcNtقP*4Jq=G1`ސnG)]'Ze+hb?%_hpZr=Ш6(YAĪvr%lݐrh-`=J2`pzJPJ&G,
xYMcɩ1Dj1ET}g&38|{iӐFZvEГTN}:6OY=^au@A_ظ(gɍO*N0݆0ݵ6dmBY'qp0 |D8PG9 &ߣU<vKcE8RIt:.'3k_mo_"lrW'g6 + +a4cq84n.j!}f_]X0OM=o,^em}+]qQL0햯zu?8V&v 28S?Ggާ#
IO++ +:䁩n3tv2<
Yy
[eFxZ >vKHI J_>\:| +YG)uxNDOy|oMKz>سfrV]++e:":!JD,3x9 z/ZP.4kD1+EgQ>OQ+ +c3l/KD|n>B#^4:KO(,q.L*֣a&UЫe2!qu6Ϛmn}f)D#40-͟uå=^<آˏٹJ4jDk"BD,k]2,¨, Ϻb)R& +_D<&F_?'%;%.2Y=hc&`n|[_͵j}wr+P>?R v8 4;^M|+={m<Z~w&Y_A;@DlH~뼸@2Yd2_}XwمO0@r@K[WM35d3.vN!y +b3{/cWO|>v{zŊVS0\5 bm֨b9y+_[r'-#}:e|}w\7'3K_[(Rӿ~AyGףasOi1y3V2ԣv&yqzֶX],D[l}P~%i+@ +1;deUӎHX(22U msPL6ɀרQ7+<dkqX +K9O0䪫ٓ7Ј6p,;?r>!ă"$]+<`GLyiTݦ,Ta
5 ~-S:
7IȮY
"<:iFȞ!<[5rM=/^NU;!W"9ەc3aa̩\dU{EpY!#WSPJ +>rz1Eq$S8{*9hQSt#NHcoϱ r,(^4a4OHAKL\G^ + ;!^B"!Qrɣ\7]O+p#W(GCfLL9V&PHP|,n@wpMdz,uշ,|YtxKMIa[0"E5;*nP ,K_y+.51t퇍vPSvc@=OjH9^9"]^Jv6#Uz@R;|"" "o0/}*<A+1)$"lBS?<EB6d*F&Ya]p1M2HbR -ݱ}32Vjb(٠ +c.^%/AURnSk`<iĄt}n])A몷*? +f44T;oQ">]QELy<JBXa|mcw??bDa3#UOf-u=;GKCr +? +DC u]oи5ͼRW9Q%!W:SyJFF\)iЍV(tCGF}z婊7QTG_]"LmAud뿺W5DG70Im\." l?hBaf3cHkmk|u#{0X.zTϵ|BO\ycHO9:hh=wX^z%A,S\[ u>bԵ4$
Nas\]Q7V.Ɗ=d"M?̛9Tccvt]kƜ}!6YD~K,Qrp_|!Rkbʆ_DA4.^%WR)=S8 +1Y \sOst3Ah]hl&X $$GHCkNFL;;~y*a -EÏ +r=̩ۺaW,Y(m#Ukڋ,fw ~`TGL*'cTObxKc(AEk mw$;*6CNxu๏ܿ>ull`n>^l+/>FNRstt +Q2'wL
,#%rk`=ڠk-%DFlzSyES^[ ǂdDS'' +=ѷfŁV+eoVwArTS$R[
ԺO'xJ6՜IuD>6G4BfѦOhxZc): mx)k#?pq[}w/n0!=u@E ,<T>MSMr|$ڵ" ejz:TJ̦)NV*m'Qx#B)kPGm:ڧ羘B]mtp-9ǰ7>"/Bg|RIKZw83y&58;t!rױ( [ڔIqvP܄ct1,ZX;N/c{?
/AB2p|lrD#lYWHHbo&ҦH@+VH5*>CD-WCɛɅuBUԁl@A@Z<.8K[Kϙ!sXF`8bXp)`6-k
-mOz(6:_w>a^ɔ22OG'\R4SdxRلzn9}9捶-wPNٵȭ~]NCQE +NA:\0q`~ނ,"@w, +l,Wr)}}jJ{W81:t +VIb"U{ސ?FzmT mIRSMW+dz5Jy+m0ɠu.\(_j6$W3t(E)U`֜B̦HJ#[rX1~}P9۰u?͍c +tu7J#n긂)7WTxEgskfu|h\7Y*}ai +hxrQ\ ]n:D;y*kXb6yH:]!@m̆U A>GϼZMެ[^z/|i +㈬q9ًhPR!uBI"jl->4
=k-wѫoRYmOV +)bfZr؆L51N4H
k +!u{l?G+ko2zQ${1F ~cEZ]CW`(D0ߦ*n_2
UiF;`ln*uɌe{z +vJ:h|VAhK0>pWGs>LpU$Y0.wmʌ،zDQ*Pt--LLGIȥ {LЩDK}ޤ6̟; *ǹn |N>tzvruTBxViRo +B4CZHh|8cxH?B3&>Otݹ[F[>)ΘԠ72K0qt8쮖A$sdReQ$0 +D%3[#_X*@7 +endstream +endobj +64 0 obj +<< +/Type /FontDescriptor +/FontName /FEKEGK+SFSX2074 +/Flags 4 +/FontBBox [-234 -319 1740 892] +/Ascent 712 +/CapHeight 686 +/Descent -192 +/ItalicAngle 0 +/StemV 50 +/XHeight 447 +/CharSet (/C/a/c/e/h/n/o/one/p/r/s/t) +/FontFile 63 0 R +>> +endobj +49 0 obj +<< +/Type /Encoding +/Differences [46/period 49/one 51/three 53/five 67/C 97/a/b/c 101/e 103/g/h/i 110/n/o/p 114/r/s/t/u 120/x] +>> +endobj +26 0 obj +<< +/Type /Font +/Subtype /Type1 +/BaseFont /HHSFZO+SFRM1095 +/FontDescriptor 56 0 R +/FirstChar 46 +/LastChar 120 +/Widths 53 0 R +/Encoding 49 0 R +>> +endobj +48 0 obj +<< +/Type /Font +/Subtype /Type1 +/BaseFont /FKLUEV+SFSX1095 +/FontDescriptor 58 0 R +/FirstChar 98 +/LastChar 117 +/Widths 50 0 R +/Encoding 49 0 R +>> +endobj +47 0 obj +<< +/Type /Font +/Subtype /Type1 +/BaseFont /KKGAAD+SFSX1200 +/FontDescriptor 60 0 R +/FirstChar 46 +/LastChar 117 +/Widths 51 0 R +/Encoding 49 0 R +>> +endobj +46 0 obj +<< +/Type /Font +/Subtype /Type1 +/BaseFont /RQIEES+SFSX1440 +/FontDescriptor 62 0 R +/FirstChar 46 +/LastChar 116 +/Widths 52 0 R +/Encoding 49 0 R +>> +endobj +25 0 obj +<< +/Type /Font +/Subtype /Type1 +/BaseFont /FEKEGK+SFSX2074 +/FontDescriptor 64 0 R +/FirstChar 49 +/LastChar 116 +/Widths 54 0 R +/Encoding 49 0 R +>> +endobj +27 0 obj +<< +/Type /Pages +/Count 5 +/Kids [6 0 R 29 0 R 32 0 R 36 0 R 39 0 R] +>> +endobj +65 0 obj +<< +/Type /Catalog +/Pages 27 0 R +/Lang (en-US) +/MarkInfo <</Marked true>>/StructTreeRoot 1 0 R +>> +endobj +66 0 obj +<< +/Producer (pdfTeX-1.40.19) +/Creator (TeX) +/CreationDate (D:20180709211858+02'00') +/ModDate (D:20180709211858+02'00') +/Trapped /False +/PTEX.Fullbanner (This is pdfTeX, Version 3.14159265-2.6-1.40.19 (TeX Live 2018/W32TeX) kpathsea version 6.3.0) +>> +endobj +xref +0 67 +0000000000 65535 f +0000009949 00000 n +0000007538 00000 n +0000007722 00000 n +0000007742 00000 n +0000007861 00000 n +0000005714 00000 n +0000007951 00000 n +0000008038 00000 n +0000008119 00000 n +0000008210 00000 n +0000008300 00000 n +0000008398 00000 n +0000008474 00000 n +0000008565 00000 n +0000008664 00000 n +0000008747 00000 n +0000008840 00000 n +0000008931 00000 n +0000009030 00000 n +0000009113 00000 n +0000009206 00000 n +0000009298 00000 n +0000005852 00000 n +0000000015 00000 n +0000078300 00000 n +0000077660 00000 n +0000078460 00000 n +0000006132 00000 n +0000005993 00000 n +0000005934 00000 n +0000009398 00000 n +0000006317 00000 n +0000006456 00000 n +0000006172 00000 n +0000006724 00000 n +0000006585 00000 n +0000006526 00000 n +0000009490 00000 n +0000007281 00000 n +0000009582 00000 n +0000009674 00000 n +0000009766 00000 n +0000009858 00000 n +0000007420 00000 n +0000006764 00000 n +0000078140 00000 n +0000077980 00000 n +0000077820 00000 n +0000077515 00000 n +0000010033 00000 n +0000010151 00000 n +0000010594 00000 n +0000011032 00000 n +0000011483 00000 n +0000011905 00000 n +0000026874 00000 n +0000027145 00000 n +0000040400 00000 n +0000040637 00000 n +0000054167 00000 n +0000054415 00000 n +0000067219 00000 n +0000067463 00000 n +0000077270 00000 n +0000078546 00000 n +0000078659 00000 n +trailer +<< /Size 67 +/Root 65 0 R +/Info 66 0 R +/ID [<81DC649643DA754F285C6A424525246A> <81DC649643DA754F285C6A424525246A>] >> +startxref +78926 +%%EOF diff --git a/Master/texmf-dist/doc/latex/tagpdf/ex-patch-sectioning-koma.tex b/Master/texmf-dist/doc/latex/tagpdf/ex-patch-sectioning-koma.tex new file mode 100644 index 00000000000..6fccf189d4a --- /dev/null +++ b/Master/texmf-dist/doc/latex/tagpdf/ex-patch-sectioning-koma.tex @@ -0,0 +1,168 @@ +% !Mode:: "TeX:DE:UTF-8:Main" + +%This example shows how one can patch sectioning command and toc entries +%to add tags. +%The patches are layout/option dependant +%With other document options (e.g. chapterprefix) or +%if the sectioning commands are redefined more/different patches are perhaps needed + +%no page break involved. So the example works in lua and generic mode + +\documentclass{scrbook} +\usepackage[english]{babel} + +%set language / can also be done with hyperref +\pdfcatalog{/Lang (en-US)} + +\usepackage{tagpdf} + +\tagpdfifpdftexT + { + \usepackage[T1]{fontenc} + } + +\tagpdfifluatexT + { + \usepackage{fontspec} + \usepackage{luacode} + } + + +\tagpdfsetup{tabsorder=structure, + activate-all, + uncompress + } + +\usepackage{lipsum}%\textheight3cm + +%%%%%%%%%%%%%%% +%Marking the toc entries +%around the whole entry so only structure: +\newcommand\tagscrtocentry[1]{\tagstructbegin{tag=TOCI}#1\tagstructend} + +%leaf so structure and mc: +\newcommand\tagscrtocpagenumber[1]{% + \tagstructbegin{tag=Reference}% + \tagmcbegin{tag=Reference}% + #1% + \tagmcend + \tagstructend} + +\DeclareTOCStyleEntry[ + entryformat=\tagscrtocentry, + pagenumberformat=\tagscrtocpagenumber]{tocline}{chapter} +\DeclareTOCStyleEntry[ + entryformat=\tagscrtocentry, + pagenumberformat=\tagscrtocpagenumber]{tocline}{section} +\DeclareTOCStyleEntry[ + entryformat=\tagscrtocentry, + pagenumberformat=\tagscrtocpagenumber]{tocline}{subsection} +\DeclareTOCStyleEntry[ + entryformat=\tagscrtocentry, + pagenumberformat=\tagscrtocpagenumber]{tocline}{subsubsection} +\DeclareTOCStyleEntry[ + entryformat=\tagscrtocentry, + pagenumberformat=\tagscrtocpagenumber]{tocline}{paragraph} + + + +\renewcommand{\addtocentrydefault}[3]{% + \ifstr{#3}{}{} + {%\ + \ifstr{#2}{} + {% + \addcontentsline{toc}{#1} + {% + \protect\nonumberline + \tagstructbegin{tag=P}% + \tagmcbegin{tag=P}% + #3% + \tagmcend + \tagstructend + }% + }% + {% + \addcontentsline{toc}{#1}{% + \tagstructbegin{tag=Lbl}% + \tagmcbegin{tag=Lbl}% + \protect\numberline{#2}% + \tagmcend\tagstructend + \tagstructbegin{tag=P}% + \tagmcbegin{tag=P}% + #3% + \tagmcend + \tagstructend + }% + }% + }}% + +% the dots must be marked too +\makeatletter +\renewcommand*{\TOCLineLeaderFill}[1][.]{% + \leaders\hbox{$\m@th + \mkern \@dotsep mu\hbox{\tagmcbegin{artifact}#1\tagmcend}\mkern \@dotsep + mu$}\hfill +} + +%%%%%%%%% +% Sectioning commands +%%%%%%%% + +\ExplSyntaxOn +\prop_new:N \g_tag_section_level_prop +\prop_put:Nnn \g_tag_section_level_prop {chapter}{H1} +\prop_put:Nnn \g_tag_section_level_prop {section}{H2} +\prop_put:Nnn \g_tag_section_level_prop {subsection}{H3} +\prop_put:Nnn \g_tag_section_level_prop {subsubsection}{H4} +\prop_put:Nnn \g_tag_section_level_prop {paragraph}{H5} + +\renewcommand{\chapterlinesformat}[3] + { + \@hangfrom + { + \tagstructbegin{tag=\prop_item:Nn\g_tag_section_level_prop{chapter}} + \tagmcbegin {tag=\prop_item:Nn\g_tag_section_level_prop{chapter}} + #2 + } + {#3\tagmcend\tagstructend}% + } + + +\renewcommand{\sectionlinesformat}[4] + { + \@hangfrom + {\hskip #2 + \tagstructbegin{tag=\prop_item:Nn\g_tag_section_level_prop{#1}} + \tagmcbegin {tag=\prop_item:Nn\g_tag_section_level_prop{#1}} + #3 + } + {#4\tagmcend\tagstructend}% + } + +\ExplSyntaxOff +\AfterTOCHead{\tagstructbegin{tag=TOC}} +\AfterStartingTOC{\tagstructend} %end TOC + + +\begin{document} +%I don't want to handle pagestyles, so set everything to empty: +\pagestyle{empty}\renewcommand\chapterpagestyle{empty} + +\tagstructbegin{tag=Document} + +\tableofcontents + +\chapter{chapter} +\addchap{chapter} +\section{section} +\subsection{subsection} +\subsubsection{subsubsection} + + \tagstructbegin{tag=P} + \tagmcbegin{tag=P} + a paragraph\par x + \tagmcend + \tagstructend + +\tagstructend %Document +\end{document}
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/tagpdf/tagpdf.pdf b/Master/texmf-dist/doc/latex/tagpdf/tagpdf.pdf Binary files differindex a96c828e9e6..0d2d8b22388 100644 --- a/Master/texmf-dist/doc/latex/tagpdf/tagpdf.pdf +++ b/Master/texmf-dist/doc/latex/tagpdf/tagpdf.pdf diff --git a/Master/texmf-dist/doc/latex/tagpdf/tagpdf.tex b/Master/texmf-dist/doc/latex/tagpdf/tagpdf.tex index 83d386c4478..36c1cf852f5 100644 --- a/Master/texmf-dist/doc/latex/tagpdf/tagpdf.tex +++ b/Master/texmf-dist/doc/latex/tagpdf/tagpdf.tex @@ -1,7 +1,6 @@ % !Mode:: "TeX:DE:UTF-8:Main" -% $UFDate: 2017-12-03 18:32:01 +0100 -- Commit: 77304d9 (HEAD, tag: v1.4, master) -- master$ \makeatletter -\def\UlrikeFischer@package@version{0.1} +\def\UlrikeFischer@package@version{0.2} \makeatother \documentclass[DIV=12,parskip=half-,bibliography=totoc]{scrartcl} \usepackage[utf8]{inputenc} @@ -66,7 +65,7 @@ Issues, comments, suggestions should be added as issues to the github tracker: Since many year the creation of accessible pdf-files with \LaTeX\ which conform to the PDF/UA standard has been on the agenda of \TeX-meetings. Many people agree that this is important and Ross Moore has done quite some work on it. There is also a TUG-mailing list and a webpage \parencite{tugaccess} dedicated to this theme. -But in my opinion missing are means to \emph{experiment} with tagging and accessibility. Means to try out, how difficult it is to tag some structures, means to try out, how much tagging is really needed (standards and validators don't need to be right \ldots), means to test what else is needed so that a pdf works e.g. with a screen reader. Without such experiments it is imho quite difficult to get a feeling about what has to be done, which kernel changes are needed, how packages should be adapted. +But in my opinion missing are means to \emph{experiment} with tagging and accessibility. Means to try out, how difficult it is to tag some structures, means to try out, how much tagging is really needed (standards and validators don't need to be right \ldots), means to test what else is needed so that a pdf works e.g. with a screen reader. Without such experiments it is imho quite difficult to get a feeling about what has to be done, which kernel changes are needed, how packages should be adapted. This package tries to close this gap by offering \emph{core} commands to tag a pdf.\footnote{In case you don't know what this means: there will be some explanations later on.} @@ -76,9 +75,9 @@ The package does not patch commands from other packages. It is also not an aim o So this package deliberately concentrates on the basics -- and this already quite a lot, there are much more details involved as I expected when I started. -I'm sure that it has bugs. Bugs reports, suggestions and comments can be added to the issue tracker on github. \url{https://github.com/u-fischer/tagpdf}. +I'm sure that it has bugs. Bugs reports, suggestions and comments can be added to the issue tracker on github. \url{https://github.com/u-fischer/tagpdf}. -Please also check the github site for new examples and improvements. +Please also check the github site for new examples and improvements. \subsection{Tagging and accessibility} @@ -90,7 +89,7 @@ So the name of the package is a bit wrong. As excuse I can only say that it is s \subsection{Engines and modes} -The package works currently with pdflatex and lualatex. +The package works currently with pdflatex and lualatex. The package has two modes: the \emph{generic mode} which should work in theory with every engine and the \emph{lua mode} which works only with lualatex. @@ -112,14 +111,14 @@ In the meantime pdf 2.0. has been released. I know that it contains also for acc pdf's created with the commands of this package must be validated: \begin{itemize} -\item One must check that the pdf is \emph{syntactically} correct. It is rather easy to create broken pdf: e.g. if a chunk is opened on one page but closed on the next page. +\item One must check that the pdf is \emph{syntactically} correct. It is rather easy to create broken pdf: e.g. if a chunk is opened on one page but closed on the next page. \item One must check how good the requirements of the PDF/UA standard are followed \emph{formally}. \item One must check how good the accessibility is \emph{practically}. \end{itemize} Syntax validation and formal standard validation can be done with preflight of the (non-free) adobe acrobat. It can also be done also with the free PDF Accessibility Checker (PAC~3) \parencite{pac3}. -There is also the validator veraPDF \parencite{verapdf}. But I didn't try it yet and have no idea if it is useful here. +There is also the validator veraPDF \parencite{verapdf}. But I didn't try it yet and have no idea if it is useful here. Practical validation is naturally the more complicated part. It needs screen reader, users which actually knows how to handle them, can test documents and can report where a pdf has real accessibility problems. @@ -170,13 +169,13 @@ The key-val list understands the following keys: \item[\PrintKeyName{activate-tree}] Boolean, initially false. Activates the code related to trees. Should be used only if the two other keys has been used too. \item[\PrintKeyName{activate-all}] Boolean, initially false. Activates everything, that normally the sensible thing to do. \item[\PrintKeyName{add-new-tag}] See section \ref{sec:new-tag} for a description. -\item[\PrintKeyName{check-tags}] Boolean, initially true. Activates some safety checks. -\item[\PrintKeyName{compresslevel}] Value is an integer between 0 and 9. It sets both the pdfcompresslevel and the pdfobjcompresslevel. +\item[\PrintKeyName{check-tags}] Boolean, initially true. Activates some safety checks (but doesn't very much currently. It will perhaps be merged with the log-level key). +\item[\PrintKeyName{compresslevel}] Value is an integer between 0 and 9. It sets both the pdfcompresslevel and the pdfobjcompresslevel. \item[\PrintKeyName{log}] Choice key, possible values \PrintKeyName{none}, \PrintKeyName{v}, \PrintKeyName{vv}, \PrintKeyName{vvv}, \PrintKeyName{all}. Setups the log level. Changing the value affects currently mostly the luamode: \enquote{higher} values gives more messages in the log. The current levels and messages have been setup in a quite ad-hoc manner and will need improvement. \item[\PrintKeyName{tabsorder}] Choice key, possible values are \PrintKeyName{row}, \PrintKeyName{column}, \PrintKeyName{structure}, \PrintKeyName{none}. This decides if a \verb+/Tabs+ value is written to the dictionary of the page objects. Not really needed for tagging itself, but one of the things you probably need for accessibility checks. So I added it. Currently the tabsorder is the same for all pages. Perhaps this should be changed \ldots. \item[\PrintKeyName{tagunmarked}] Boolean,\marginnote{luamode} initially true. When this boolean is true, the lua code will try to mark everything that has not been marked yet as an artifact. The benefit is that one doesn't have to mark up every deco rule oneself. The danger is that it perhaps marks things that shouldn't be marked -- it hasn't been tested yet with complicated documents containing annotations etc. \item[\PrintKeyName{uncompress}] Equivalent to using \texttt{compresslevel=0}. - + \end{description} \section{Tagging} @@ -357,7 +356,7 @@ For strategies how to handle paragraphs that split over pages see subsection~\re \DescribeMacro\uftag_mc_begin:n{<key-val-list>} \ExplSyntaxOff -These commands insert the begin of the marked content code in the pdf. They don't start a paragraph. The user command additionally issues an \verb+\ignorespaces+ to suppress spaces after itself. +These commands insert the begin of the marked content code in the pdf. They don't start a paragraph. \emph{They don't start a group}. The user command additionally issues an \verb+\ignorespaces+ to suppress spaces after itself. Such markers should not be nested. The command will warn you if this happens. The key-val list understands the following keys: @@ -383,7 +382,7 @@ The key-val list understands the following keys: \DescribeMacro\uftag_mc_end: \ExplSyntaxOff -These commands insert the end code of the marked content. The user command also issues at first an \verb+\unskip+. Both commands check if there has been a begin marker and issue a warning if not. +These commands insert the end code of the marked content. They don't end a group and it doesn't matter if they are in another group as the starting commands. The user command also issues at first an \verb+\unskip+. Both commands check if there has been a begin marker and issue a warning if not. \ExplSyntaxOn \DescribeMacro\tagmcuse{<label name>} @@ -497,11 +496,11 @@ The following commands can be used to define the tree structure: \DescribeMacro\uftag_struct_begin:n {key-val-list} \ExplSyntaxOff -These commands start a new structure. +These commands start a new structure. They don't start a group. They set all their values globally. The key-val list understands the following keys: \begin{description} - \item[\PrintKeyName{tag}] This is required. The value of the key is normally one of the standard type listed in section \ref{sec:standard-types}. It is possible to setup new tags/types, see section \ref{sec:new-tags}. + \item[\PrintKeyName{tag}] This is required. The value of the key is normally one of the standard type listed in section \ref{sec:new-tag}. It is possible to setup new tags/types, see the same section. \item[\PrintKeyName{stash}] Normally a new structure inserts itself as a kid into the currently active structure. This key prohibits this. The structure is nevertheless from now on \enquote{the current active structure} and parent for following marked content and structures. \item[\PrintKeyName{label}] This key sets a label by which you can use the structure later in another structure. Internally the label name will start with \texttt{tagpdfstruct-}. \item[\PrintKeyName{title},\PrintKeyName{alttext},\PrintKeyName{actualtext}] These keys allow to set the dictionary entries \texttt{/Title}, \texttt{/Alt} and \texttt{/Actualtext}. But I haven't yet decided which is the suitable format for the values, so currently you must ensure yourself that the values lead to valid pdf content. @@ -513,7 +512,7 @@ The key-val list understands the following keys: \DescribeMacro\uftag_struct_end: \ExplSyntaxOff -This ends a structure. +This ends a structure. They don't end a group and it doesn't matter if they are in another group as the starting commands. \ExplSyntaxOn \DescribeMacro\tagstructuse{<label>} @@ -615,7 +614,7 @@ New tags can be defined in the setup command with the key \texttt{add-new-tag}. A tagged pdf is needed for accessibility but this is not enough. As already mentioned there are more requirements: \begin{itemize} - \item The language must be declared by adding a \texttt{/Lang xx-XX} to the pdf catalog or -- if the language changes for a part of the text to the structure or the marked content -- this can be rather easily done with existing packages. %%UF mention some code + \item The language must be declared by adding a \texttt{/Lang xx-XX} to the pdf catalog or -- if the language changes for a part of the text to the structure or the marked content. Setting the document language can be rather easily done with existing packages or even directly with \verb+\pdfcatalog{/Lang (en-US)}+. For settings in marked content and structure I will have to add keys. \item All characters must have an unicode representation or a suitable alternative text. With lualatex and open type (unicode) fonts this is normally not a problem. With pdflatex it could need \begin{verbatim} @@ -625,9 +624,8 @@ New tags can be defined in the setup command with the key \texttt{add-new-tag}. and perhaps some\verb+\pdfglyphtounicode+ commands. \item Hard and soft hyphen must be distinct. \item Spaces between words should be space glyphs and not only a horizontal movement. - \item Various small infos must be present in the catalog dictionary, info dictionary and the page dictionaries. - \end{itemize} - + \item Various small infos must be present in the catalog dictionary, info dictionary and the page dictionaries, e.g. metadata like title. +\end{itemize} If suitable I will add code for this tasks to this packages. But some of them can also be done already with existing packages like hyperref, hyperxmp, pdfx. diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-checks-code.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-checks-code.sty index b1959acc42e..107dcb3ab80 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-checks-code.sty +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-checks-code.sty @@ -1,4 +1,4 @@ -\ProvidesExplPackage {tagpdf-checks-code} {2018/07/04} {0.1} +\ProvidesExplPackage {tagpdf-checks-code} {2018/07/09} {0.2} {part of tagpdf - code related to checks and messages} @@ -46,6 +46,14 @@ } } +\cs_new:Nn \__uftag_check_structure_tag:N + { + \prop_if_in:NoF \g__uftag_role_tags_prop { #1 } + { + \msg_warning:nnx {tagpdf}{role-unknown-tag} { #1 } + } + } + \cs_new:Nn \__uftag_check_info_closing_struct:n %#1 struct num { \msg_info:nnn {tagpdf}{struct-show-closing}{#1} diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def index 3cff65569c1..4590d0cc21f 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-luatex.def @@ -1,4 +1,4 @@ -\ProvidesExplFile {tagpdf-luatex.def} {2018/07/04} {0.1} +\ProvidesExplFile {tagpdf-luatex.def} {2018/07/09} {0.2} {tagpdf driver for luatex} \newattribute \g__uftag_mc_type_attr %the value represent the type diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-generic.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-generic.sty index 5bdab895e61..29309cfba33 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-generic.sty +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-generic.sty @@ -1,4 +1,4 @@ -\ProvidesExplPackage {tagpdf-mc-code-generic} {2018/07/04} {0.1} +\ProvidesExplPackage {tagpdf-mc-code-generic} {2018/07/09} {0.2} {part of tagpdf - code related to marking chunks - generic mode} % for the label system diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-lua.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-lua.sty index 0d8a66b12a1..3b252c59739 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-lua.sty +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-lua.sty @@ -1,4 +1,4 @@ -\ProvidesExplFile {tagpdf-mc-code-lua.sty} {2018/07/04} {0.1} +\ProvidesExplPackage {tagpdf-mc-code-lua} {2018/07/09} {0.2} {tagpdf - mc code only for the luamode } %the two attibutes are defined in the driver file. diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-shared.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-shared.sty index 006014432c2..8c5013ec0a3 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-shared.sty +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-mc-code-shared.sty @@ -1,4 +1,4 @@ -\ProvidesExplPackage {tagpdf-mc-code-shared} {2018/07/04} {0.1} +\ProvidesExplPackage {tagpdf-mc-code-shared} {2018/07/09} {0.2} {part of tagpdf - code related to marking chunks - code shared by generic and luamode } % I use a latex counter for the absolute count, so that it is added to diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-pdftex.def b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-pdftex.def index af728c69d90..61dc45b2a6b 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-pdftex.def +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-pdftex.def @@ -1,4 +1,4 @@ -\ProvidesExplFile {tagpdf-pdftex.def} {2018/07/04} {0.1} +\ProvidesExplFile {tagpdf-pdftex.def} {2018/07/09} {0.2} {tagpdf driver for pdftex} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-roles-code.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-roles-code.sty index 06489c6ea8c..93180cc8576 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-roles-code.sty +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-roles-code.sty @@ -1,4 +1,4 @@ -\ProvidesExplPackage {tagpdf-roles-code} {2018/07/04} {0.1} +\ProvidesExplPackage {tagpdf-roles-code} {2018/07/09} {0.2} {part of tagpdf - code related to roles and structure names} \__uftag_seq_new:N \g__uftag_role_tags_seq %to get names from numbers @@ -35,7 +35,7 @@ L, %list LI, %list item (around label and list item body) Lbl, %list label - Lbody, %list item body + LBody, %list item body Table, TR, %table row TH, %table header cell diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-struct-code.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-struct-code.sty index 24345dfd196..3c92767a107 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-struct-code.sty +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-struct-code.sty @@ -1,4 +1,4 @@ -\ProvidesExplPackage {tagpdf-struct-code} {2018/07/04} {0.1} +\ProvidesExplPackage {tagpdf-struct-code} {2018/07/09} {0.2} {part of tagpdf - code related to storing structure} % I will use a latex counter for the structure count @@ -256,6 +256,10 @@ tag .code:n = % S property { \__uftag_pdf_escape_name:Nn \l__uftag_tmpa_tl { #1 } + \bool_if:NT \g__uftag_check_tags_bool + { + \__uftag_check_structure_tag:N \l__uftag_tmpa_tl + } \__uftag_prop_gput:cnx { g__uftag_struct_\int_eval:n {\c@g__uftag_struct_abs_int}_prop } { S } diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-tree-code.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-tree-code.sty index 751c26974d2..2fd82d27f66 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-tree-code.sty +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-tree-code.sty @@ -1,4 +1,4 @@ -\ProvidesExplPackage {tagpdf-tree-code} {2018/07/04} {0.1} +\ProvidesExplPackage {tagpdf-tree-code} {2018/07/09} {0.2} {part of tagpdf - code related to writing trees and dictionaries to the pdf} %this does the actual finishing: diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-user.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-user.sty index 084c0f36030..137d636cc64 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf-user.sty +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf-user.sty @@ -1,4 +1,4 @@ -\ProvidesExplFile {tagpdf-user.sty} {2018/07/04} {0.1} +\ProvidesExplPackage {tagpdf-user} {2018/07/09} {0.2} {tagpdf - user commands} \NewDocumentCommand \tagpdfsetup { m } diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf.lua b/Master/texmf-dist/tex/latex/tagpdf/tagpdf.lua index 4c0c6678d7d..ca49eb887be 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf.lua +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf.lua @@ -1,5 +1,5 @@ --- Packageversion: 0.1 --- Packagedate: 2018/07/04 +-- Packageversion: 0.2 +-- Packagedate: 2018/07/09 -- tagpdf.lua -- Ulrike Fischer @@ -435,7 +435,7 @@ end function uftag.func.fill_parent_tree_line (page) -- we need to get page-> i=kid -> mcnum -> structnum -- pay attention: the kid numbers and the page number in the parent tree start with 0! - local numsentry + local numsentry ="" local pdfpage = page-1 if uftag.page[page] and uftag.page[page][0] then mcchunks=#uftag.page[page] @@ -465,9 +465,9 @@ function uftag.func.fill_parent_tree_line (page) uftag.trace.log("PAGETREE PAGE" .. page.. " NUM ENTRY = ".. numsentry,3) end else - uftag.trace.log ("PAGETREE: NO DATA FOR PAGE "..i,3) + uftag.trace.log ("PAGETREE: NO DATA FOR PAGE "..page,3) end - return numsentry + return numsentry end function uftag.func.output_parenttree (abspage) diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty index a9dc7173783..15c87eb3fed 100644 --- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty +++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty @@ -1,6 +1,6 @@ \RequirePackage{expl3}[2018/06/14] -\ProvidesExplPackage {tagpdf} {2018/07/04} {0.1} +\ProvidesExplPackage {tagpdf} {2018/07/09} {0.2} {A package to experiment with pdf tagging} % storing internal names to my name space: |