From 3d3e0a1ec600d13b4db750f4b15dbaa7bad36781 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Fri, 16 Sep 2022 03:01:41 +0000 Subject: CTAN sync 202209160301 --- macros/latex/contrib/animate/ChangeLog | 6 + macros/latex/contrib/animate/animate.pdf | 1409 +++--- macros/latex/contrib/animate/animate.sty | 30 +- macros/latex/contrib/bithesis/README.md | 43 - macros/latex/contrib/bithesis/bithesis.dtx | 4899 ------------------- macros/latex/contrib/bithesis/bithesis.ins | 80 - macros/latex/contrib/bithesis/bithesis.pdf | Bin 818866 -> 0 bytes macros/latex/contrib/bithesis/contributing-zh.md | 54 - macros/latex/contrib/bithesis/contributing.md | 56 - macros/latex/contrib/l3build/CHANGELOG.md | 8 +- macros/latex/contrib/l3build/README.md | 2 +- macros/latex/contrib/l3build/l3build-install.lua | 8 + macros/latex/contrib/l3build/l3build.1 | 2 +- macros/latex/contrib/l3build/l3build.dtx | 13 +- macros/latex/contrib/l3build/l3build.lua | 2 +- macros/latex/contrib/l3build/l3build.pdf | Bin 741923 -> 742080 bytes macros/latex/contrib/newpax/README.md | 2 +- macros/latex/contrib/newpax/doc-input1.pdf | 4 +- macros/latex/contrib/newpax/doc-input1.tex | 3 +- macros/latex/contrib/newpax/doc-input2.pdf | 4 +- macros/latex/contrib/newpax/doc-input2.tex | 3 +- macros/latex/contrib/newpax/doc-use-newpax.pdf | 274 +- macros/latex/contrib/newpax/doc-use-newpax.tex | 6 +- macros/latex/contrib/newpax/doc-use-pax.pdf | Bin 44928 -> 45012 bytes macros/latex/contrib/newpax/doc-use-pax.tex | 4 + macros/latex/contrib/newpax/newpax.dtx | 73 +- macros/latex/contrib/newpax/newpax.ins | 4 +- macros/latex/contrib/newpax/newpax.pdf | 1367 +++--- macros/latex/contrib/newpax/newpax.tex | 14 +- macros/latex/contrib/opencolor/LICENSE | 21 + macros/latex/contrib/opencolor/README.md | 45 + macros/latex/contrib/opencolor/demo-opencolor.pdf | Bin 0 -> 15089 bytes macros/latex/contrib/opencolor/demo-opencolor.png | Bin 0 -> 189796 bytes macros/latex/contrib/opencolor/demo-opencolor.tex | 26 + macros/latex/contrib/opencolor/opencolor.sty | 154 + macros/latex/contrib/photobook/LICENSE | 29 + macros/latex/contrib/photobook/Makefile | 375 ++ macros/latex/contrib/photobook/README.md | 52 + macros/latex/contrib/photobook/photobook.cls | 5058 ++++++++++++++++++++ macros/latex/contrib/photobook/photobook.pdf | Bin 0 -> 134431 bytes macros/latex/contrib/photobook/scripts/cls2tex.sh | 156 + .../latex/contrib/photobook/scripts/make-images.sh | 449 ++ macros/latex/contrib/ppt-slides/ppt-slides.pdf | Bin 227754 -> 229755 bytes macros/latex/contrib/ppt-slides/ppt-slides.sty | 3 +- macros/latex/contrib/ppt-slides/ppt-slides.tex | 16 +- .../contrib/ppt-slides/ppt-templates/ppt-9x6.tex | 14 +- macros/latex/contrib/qrbill/README.md | 25 +- .../latex/contrib/qrbill/qrbill-latexluaqrcode.lua | 24 + macros/latex/contrib/qrbill/qrbill.dtx | 243 +- macros/latex/contrib/qrbill/qrbill.pdf | Bin 80077 -> 85725 bytes macros/latex/contrib/udes-genie-these/README.md | 17 + .../latex/contrib/udes-genie-these/acronymes.tex | 12 + macros/latex/contrib/udes-genie-these/analyse.tex | 1 + .../latex/contrib/udes-genie-these/conception.tex | 1 + .../udes-genie-these/conclusion-anglaise.tex | 1 + .../udes-genie-these/conclusion-francaise.tex | 1 + macros/latex/contrib/udes-genie-these/document.tex | 55 + macros/latex/contrib/udes-genie-these/donnees.tex | 1 + .../contrib/udes-genie-these/introduction.tex | 33 + macros/latex/contrib/udes-genie-these/lexique.tex | 12 + macros/latex/contrib/udes-genie-these/merci.tex | 1 + .../latex/contrib/udes-genie-these/realisation.tex | 1 + .../latex/contrib/udes-genie-these/references.bib | 219 + .../contrib/udes-genie-these/resume-anglais.tex | 1 + .../contrib/udes-genie-these/resume-francais.tex | 1 + macros/latex/contrib/udes-genie-these/revue.tex | 1 + macros/latex/contrib/udes-genie-these/symboles.tex | 15 + macros/latex/contrib/udes-genie-these/tests.tex | 1 + .../contrib/udes-genie-these/udes-genie-these.dtx | 1420 ++++++ .../contrib/udes-genie-these/udes-genie-these.ins | 61 + .../contrib/udes-genie-these/udes-genie-these.pdf | Bin 0 -> 113355 bytes 71 files changed, 10279 insertions(+), 6636 deletions(-) delete mode 100644 macros/latex/contrib/bithesis/README.md delete mode 100644 macros/latex/contrib/bithesis/bithesis.dtx delete mode 100644 macros/latex/contrib/bithesis/bithesis.ins delete mode 100644 macros/latex/contrib/bithesis/bithesis.pdf delete mode 100644 macros/latex/contrib/bithesis/contributing-zh.md delete mode 100644 macros/latex/contrib/bithesis/contributing.md create mode 100644 macros/latex/contrib/opencolor/LICENSE create mode 100644 macros/latex/contrib/opencolor/README.md create mode 100644 macros/latex/contrib/opencolor/demo-opencolor.pdf create mode 100644 macros/latex/contrib/opencolor/demo-opencolor.png create mode 100644 macros/latex/contrib/opencolor/demo-opencolor.tex create mode 100644 macros/latex/contrib/opencolor/opencolor.sty create mode 100644 macros/latex/contrib/photobook/LICENSE create mode 100644 macros/latex/contrib/photobook/Makefile create mode 100644 macros/latex/contrib/photobook/README.md create mode 100644 macros/latex/contrib/photobook/photobook.cls create mode 100644 macros/latex/contrib/photobook/photobook.pdf create mode 100755 macros/latex/contrib/photobook/scripts/cls2tex.sh create mode 100644 macros/latex/contrib/photobook/scripts/make-images.sh create mode 100644 macros/latex/contrib/qrbill/qrbill-latexluaqrcode.lua create mode 100644 macros/latex/contrib/udes-genie-these/README.md create mode 100644 macros/latex/contrib/udes-genie-these/acronymes.tex create mode 100644 macros/latex/contrib/udes-genie-these/analyse.tex create mode 100644 macros/latex/contrib/udes-genie-these/conception.tex create mode 100644 macros/latex/contrib/udes-genie-these/conclusion-anglaise.tex create mode 100644 macros/latex/contrib/udes-genie-these/conclusion-francaise.tex create mode 100644 macros/latex/contrib/udes-genie-these/document.tex create mode 100644 macros/latex/contrib/udes-genie-these/donnees.tex create mode 100644 macros/latex/contrib/udes-genie-these/introduction.tex create mode 100644 macros/latex/contrib/udes-genie-these/lexique.tex create mode 100644 macros/latex/contrib/udes-genie-these/merci.tex create mode 100644 macros/latex/contrib/udes-genie-these/realisation.tex create mode 100644 macros/latex/contrib/udes-genie-these/references.bib create mode 100644 macros/latex/contrib/udes-genie-these/resume-anglais.tex create mode 100644 macros/latex/contrib/udes-genie-these/resume-francais.tex create mode 100644 macros/latex/contrib/udes-genie-these/revue.tex create mode 100644 macros/latex/contrib/udes-genie-these/symboles.tex create mode 100644 macros/latex/contrib/udes-genie-these/tests.tex create mode 100644 macros/latex/contrib/udes-genie-these/udes-genie-these.dtx create mode 100644 macros/latex/contrib/udes-genie-these/udes-genie-these.ins create mode 100644 macros/latex/contrib/udes-genie-these/udes-genie-these.pdf (limited to 'macros/latex') diff --git a/macros/latex/contrib/animate/ChangeLog b/macros/latex/contrib/animate/ChangeLog index d9da4f0679..885e8a8453 100644 --- a/macros/latex/contrib/animate/ChangeLog +++ b/macros/latex/contrib/animate/ChangeLog @@ -1,3 +1,9 @@ +2022-09-15 + * fix: failure (in dvisvgm driver mode) when setting `draft' + globally and then setting `final' locally + * improvement: accelerating compilation in `draft' mode for long + \multiframe loops + 2022-08-04 * fix: a few obsolete code lines removed; option processing acc. to new LaTeX format 22-06-01 diff --git a/macros/latex/contrib/animate/animate.pdf b/macros/latex/contrib/animate/animate.pdf index 33f6b8c81b..093f0ff0a2 100644 --- a/macros/latex/contrib/animate/animate.pdf +++ b/macros/latex/contrib/animate/animate.pdf @@ -1,7 +1,7 @@ %PDF-1.4 % 610 0 obj -<< /Linearized 1 /L 3751366 /H [ 3136261 525 ] /O 1884 /E 3171583 /N 29 /T 3739046 >> +<< /Linearized 1 /L 3751374 /H [ 3136261 524 ] /O 1884 /E 3171591 /N 29 /T 3739054 >> endobj xref @@ -1280,62 +1280,62 @@ xref 0003135858 00000 n 0003136096 00000 n 0003136261 00000 n -0003136786 00000 n -0003137210 00000 n -0003137341 00000 n -0003141252 00000 n -0003141507 00000 n -0003141726 00000 n -0003141906 00000 n -0003142086 00000 n -0003142266 00000 n -0003142446 00000 n -0003142626 00000 n -0003142806 00000 n -0003142991 00000 n -0003143176 00000 n -0003143356 00000 n -0003143536 00000 n -0003143721 00000 n -0003143906 00000 n -0003144086 00000 n -0003144292 00000 n -0003144504 00000 n -0003144567 00000 n -0003144619 00000 n -0003144724 00000 n -0003144849 00000 n -0003144973 00000 n -0003145344 00000 n -0003145645 00000 n -0003146124 00000 n -0003146523 00000 n -0003147068 00000 n -0003147712 00000 n -0003153961 00000 n -0003156222 00000 n -0003166497 00000 n -0003167054 00000 n -0003167179 00000 n -0003167532 00000 n -0003168272 00000 n -0003168389 00000 n -0003168470 00000 n -0003168628 00000 n -0003168801 00000 n -0003168974 00000 n -0003169167 00000 n -0003169364 00000 n -0003169590 00000 n -0003169765 00000 n -0003169972 00000 n -0003170181 00000 n -0003170379 00000 n -0003170714 00000 n -0003171085 00000 n -0003171258 00000 n -0003171404 00000 n -trailer << /Info 218 0 R /Root 611 0 R /Size 1939 /Prev 3739036 /ID [<75e8fb4f5346631caadd4dd62bc0c8cf>] >> +0003136785 00000 n +0003137209 00000 n +0003137340 00000 n +0003141260 00000 n +0003141515 00000 n +0003141734 00000 n +0003141914 00000 n +0003142094 00000 n +0003142274 00000 n +0003142454 00000 n +0003142634 00000 n +0003142814 00000 n +0003142999 00000 n +0003143184 00000 n +0003143364 00000 n +0003143544 00000 n +0003143729 00000 n +0003143914 00000 n +0003144094 00000 n +0003144300 00000 n +0003144512 00000 n +0003144575 00000 n +0003144627 00000 n +0003144732 00000 n +0003144857 00000 n +0003144981 00000 n +0003145352 00000 n +0003145653 00000 n +0003146132 00000 n +0003146531 00000 n +0003147076 00000 n +0003147720 00000 n +0003153969 00000 n +0003156230 00000 n +0003166505 00000 n +0003167062 00000 n +0003167187 00000 n +0003167540 00000 n +0003168280 00000 n +0003168397 00000 n +0003168478 00000 n +0003168636 00000 n +0003168809 00000 n +0003168982 00000 n +0003169175 00000 n +0003169372 00000 n +0003169598 00000 n +0003169773 00000 n +0003169980 00000 n +0003170189 00000 n +0003170387 00000 n +0003170722 00000 n +0003171093 00000 n +0003171266 00000 n +0003171412 00000 n +trailer << /Info 218 0 R /Root 611 0 R /Size 1939 /Prev 3739044 /ID [<782d3cd91591d75b4d8a62e34c092caf>] >> startxref 0 %%EOF @@ -1442,7 +1442,7 @@ stream xLH4/IK׬KS5JJS5k34b M["k4%jj NJHuqjj[Qbn5]%endstream endobj 625 0 obj -<< /AA << /PC << /JS 624 0 R /S /JavaScript >> /PI << /JS 624 0 R /S /JavaScript >> /PO << /JS 623 0 R /S /JavaScript >> /PV << /JS 623 0 R /S /JavaScript >> >> /AP << /N 616 0 R >> /BS << /W 0 >> /Contents (animation by animate, v. 2022/08/04) /F 4 /FT /Btn /Ff 65537 /H /N /MK << /I 616 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 333.72 629.38 347.04 638.62 ] /Subtype /Widget /T (anm0) /Type /Annot >> +<< /AA << /PC << /JS 624 0 R /S /JavaScript >> /PI << /JS 624 0 R /S /JavaScript >> /PO << /JS 623 0 R /S /JavaScript >> /PV << /JS 623 0 R /S /JavaScript >> >> /AP << /N 616 0 R >> /BS << /W 0 >> /Contents (animation by animate, v. 2022/09/15) /F 4 /FT /Btn /Ff 65537 /H /N /MK << /I 616 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 333.72 629.38 347.04 638.62 ] /Subtype /Widget /T (anm0) /Type /Annot >> endobj 626 0 obj << /BaseFont /DFMPLS+LinLibertineTI /Encoding 1872 0 R /FirstChar 27 /FontDescriptor 627 0 R /LastChar 246 /Subtype /Type1 /ToUnicode 1871 0 R /Type /Font /Widths [ 564 0 0 0 0 0 0 0 0 0 0 0 268 306 313 0 0 219 333 219 291 0 0 0 0 444 0 0 0 0 444 219 0 0 527 0 0 0 667 557 0 667 526 457 664 0 280 414 637 519 804 0 668 499 0 0 454 544 0 597 0 628 0 0 0 0 0 0 0 268 486 478 389 489 401 314 477 519 276 259 486 266 783 518 447 489 0 357 353 307 521 472 688 475 503 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 447 ] >> @@ -1483,7 +1483,7 @@ stream xLH4/IK׬KS5JJS5k34b M["k4%jj NJHuqjj[Qbn5_)%endstream endobj 634 0 obj -<< /AA << /PC << /JS 633 0 R /S /JavaScript >> /PI << /JS 633 0 R /S /JavaScript >> /PO << /JS 632 0 R /S /JavaScript >> /PV << /JS 632 0 R /S /JavaScript >> >> /AP << /N 628 0 R >> /BS << /W 0 >> /Contents (animation by animate, v. 2022/08/04) /F 4 /FT /Btn /Ff 65537 /H /N /MK << /I 628 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 124.8 547.18 166.8 559.06 ] /Subtype /Widget /T (anm1) /Type /Annot >> +<< /AA << /PC << /JS 633 0 R /S /JavaScript >> /PI << /JS 633 0 R /S /JavaScript >> /PO << /JS 632 0 R /S /JavaScript >> /PV << /JS 632 0 R /S /JavaScript >> >> /AP << /N 628 0 R >> /BS << /W 0 >> /Contents (animation by animate, v. 2022/09/15) /F 4 /FT /Btn /Ff 65537 /H /N /MK << /I 628 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 124.8 547.18 166.8 559.06 ] /Subtype /Widget /T (anm1) /Type /Annot >> endobj 635 0 obj << /BaseFont /EPUAGO+LibertinusT1Math /Encoding 1882 0 R /FirstChar 11 /FontDescriptor 636 0 R /LastChar 122 /Subtype /Type1 /ToUnicode 1881 0 R /Type /Font /Widths [ 522 472 458 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 220 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 299 0 0 0 475 503 436 ] >> @@ -1715,7 +1715,7 @@ stream xLH4/IK׬KS5JJS5k34b M["k4%jj NJHuqjj[Qbn5`%endstream endobj 671 0 obj -<< /AA << /D << /JS (try{if\(a2_playing\){a2_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 670 0 R /S /JavaScript >> /PI << /JS 670 0 R /S /JavaScript >> /PO << /JS 669 0 R /S /JavaScript >> /PV << /JS 669 0 R /S /JavaScript >> /U << /JS (try{if\(event.shift\)a2_playsRight=!a2_playsRight;var\ndoplay=true;if\(a2_idx==8&&a2_playsRight\){a2_stopFirst\(\);}if\(a2_idx==0&&!a2_playsRight\){a2_stopLast\(\);}if\(doplay\){if\(a2_playsRight\){a2_playRight\(\);}else{a2_playLeft\(\);}}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 643 0 R >> /BS << /W 0 >> /Contents (animation by animate, v. 2022/08/04) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 643 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 217.2 554.14 376.2 716.14 ] /Subtype /Widget /T (anm2) /Type /Annot >> +<< /AA << /D << /JS (try{if\(a2_playing\){a2_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 670 0 R /S /JavaScript >> /PI << /JS 670 0 R /S /JavaScript >> /PO << /JS 669 0 R /S /JavaScript >> /PV << /JS 669 0 R /S /JavaScript >> /U << /JS (try{if\(event.shift\)a2_playsRight=!a2_playsRight;var\ndoplay=true;if\(a2_idx==8&&a2_playsRight\){a2_stopFirst\(\);}if\(a2_idx==0&&!a2_playsRight\){a2_stopLast\(\);}if\(doplay\){if\(a2_playsRight\){a2_playRight\(\);}else{a2_playLeft\(\);}}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 643 0 R >> /BS << /W 0 >> /Contents (animation by animate, v. 2022/09/15) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 643 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 217.2 554.14 376.2 716.14 ] /Subtype /Widget /T (anm2) /Type /Annot >> endobj 672 0 obj << /BBox [ 0 8270 150 8420 ] /Filter /FlateDecode /FormType 1 /Matrix [ 0.833333 0 0 -0.833333 0 7016.67 ] /Resources << /ProcSet [ /PDF ] >> /Subtype /Form /Type /XObject /Length 165 >> @@ -4184,7 +4184,7 @@ stream xLH4/IK׬KS5JJS5k34b M["k4%jj NJHuqjj[Qbn5b]%endstream endobj 1170 0 obj -<< /AA << /D << /JS (try{if\(a3_playing\){a3_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 1169 0 R /S /JavaScript >> /PI << /JS 1169 0 R /S /JavaScript >> /PO << /JS 1168 0 R /S /JavaScript >> /PV << /JS 1168 0 R /S /JavaScript >> /U << /JS (try{if\(event.shift\)a3_playsRight=!a3_playsRight;var\ndoplay=true;if\(a3_idx==100&&a3_playsRight\){a3_stopFirst\(\);}if\(a3_idx==0&&!a3_playsRight\){a3_stopLast\(\);}if\(doplay\){if\(a3_playsRight\){a3_playRight\(\);}else{a3_playLeft\(\);}}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 966 0 R >> /BS << /W 0 >> /Contents (animation by animate, v. 2022/08/04) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 966 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 159.12 451.78 434.16 716.14 ] /Subtype /Widget /T (anm3) /Type /Annot >> +<< /AA << /D << /JS (try{if\(a3_playing\){a3_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 1169 0 R /S /JavaScript >> /PI << /JS 1169 0 R /S /JavaScript >> /PO << /JS 1168 0 R /S /JavaScript >> /PV << /JS 1168 0 R /S /JavaScript >> /U << /JS (try{if\(event.shift\)a3_playsRight=!a3_playsRight;var\ndoplay=true;if\(a3_idx==100&&a3_playsRight\){a3_stopFirst\(\);}if\(a3_idx==0&&!a3_playsRight\){a3_stopLast\(\);}if\(doplay\){if\(a3_playsRight\){a3_playRight\(\);}else{a3_playLeft\(\);}}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 966 0 R >> /BS << /W 0 >> /Contents (animation by animate, v. 2022/09/15) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 966 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 159.12 451.78 434.16 716.14 ] /Subtype /Widget /T (anm3) /Type /Annot >> endobj 1171 0 obj << /AA << /D << /JS (a3_stopFirst\(\);) /S /JavaScript >> >> /AP << /N 672 0 R >> /BS << /W 0 >> /F 0 /FT /Btn /Ff 65536 /H /I /MK << /I 672 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 229.92 435.94 244.32 450.34 ] /Subtype /Widget /T (3.EndLeft) /Type /Annot >> @@ -7674,7 +7674,7 @@ stream xLH4/IK׬KS5JJS5k34b M["k4%jj NJHyqjj[Qbno &bendstream endobj 1244 0 obj -<< /AA << /D << /JS (try{if\(a4_playing\){a4_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 1243 0 R /S /JavaScript >> /PI << /JS 1243 0 R /S /JavaScript >> /PO << /JS 1242 0 R /S /JavaScript >> /PV << /JS 1242 0 R /S /JavaScript >> /U << /JS (try{if\(event.shift\)a4_playsRight=!a4_playsRight;if\(a4_idx==0\)a4_playsRight=true;if\(a4_idx==28\)a4_playsRight=false;if\(a4_playsRight\){a4_playRight\(\);}else{a4_playLeft\(\);}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 1212 0 R >> /BS << /W 0 >> /Contents (animation by animate, v. 2022/08/04) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 1212 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 174.6 584.14 418.68 716.14 ] /Subtype /Widget /T (anm4) /Type /Annot >> +<< /AA << /D << /JS (try{if\(a4_playing\){a4_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 1243 0 R /S /JavaScript >> /PI << /JS 1243 0 R /S /JavaScript >> /PO << /JS 1242 0 R /S /JavaScript >> /PV << /JS 1242 0 R /S /JavaScript >> /U << /JS (try{if\(event.shift\)a4_playsRight=!a4_playsRight;if\(a4_idx==0\)a4_playsRight=true;if\(a4_idx==28\)a4_playsRight=false;if\(a4_playsRight\){a4_playRight\(\);}else{a4_playLeft\(\);}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 1212 0 R >> /BS << /W 0 >> /Contents (animation by animate, v. 2022/09/15) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 1212 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 174.6 584.14 418.68 716.14 ] /Subtype /Widget /T (anm4) /Type /Annot >> endobj 1245 0 obj << /AA << /D << /JS (a4_stopFirst\(\);) /S /JavaScript >> >> /AP << /N 672 0 R >> /BS << /W 0 >> /F 0 /FT /Btn /Ff 65536 /H /I /MK << /I 672 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 229.92 568.42 244.32 582.7 ] /Subtype /Widget /T (4.EndLeft) /Type /Annot >> @@ -16192,7 +16192,7 @@ stream xLH4/IK׬KS5JJS5k34b M["k4%jj NJH}qjj[QbnH&endstream endobj 1742 0 obj -<< /AA << /D << /JS (try{if\(a5_playing\){a5_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 1741 0 R /S /JavaScript >> /PI << /JS 1741 0 R /S /JavaScript >> /PO << /JS 1740 0 R /S /JavaScript >> /PV << /JS 1740 0 R /S /JavaScript >> /U << /JS (try{if\(event.shift\)a5_playsRight=!a5_playsRight;var\ndoplay=true;if\(a5_idx==190&&a5_playsRight\){a5_stopFirst\(\);}if\(a5_idx==0&&!a5_playsRight\){a5_stopLast\(\);}if\(doplay\){if\(a5_playsRight\){a5_playRight\(\);}else{a5_playLeft\(\);}}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 1448 0 R >> /BS << /W 0 >> /Contents (animation by animate, v. 2022/08/04) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 1448 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 125.28 395.38 468 716.14 ] /Subtype /Widget /T (anm5) /Type /Annot >> +<< /AA << /D << /JS (try{if\(a5_playing\){a5_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 1741 0 R /S /JavaScript >> /PI << /JS 1741 0 R /S /JavaScript >> /PO << /JS 1740 0 R /S /JavaScript >> /PV << /JS 1740 0 R /S /JavaScript >> /U << /JS (try{if\(event.shift\)a5_playsRight=!a5_playsRight;var\ndoplay=true;if\(a5_idx==190&&a5_playsRight\){a5_stopFirst\(\);}if\(a5_idx==0&&!a5_playsRight\){a5_stopLast\(\);}if\(doplay\){if\(a5_playsRight\){a5_playRight\(\);}else{a5_playLeft\(\);}}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 1448 0 R >> /BS << /W 0 >> /Contents (animation by animate, v. 2022/09/15) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 1448 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 125.28 395.38 468 716.14 ] /Subtype /Widget /T (anm5) /Type /Annot >> endobj 1743 0 obj << /AA << /D << /JS (a5_stopFirst\(\);) /S /JavaScript >> >> /AP << /N 672 0 R >> /BS << /W 0 >> /F 0 /FT /Btn /Ff 65536 /H /I /MK << /I 672 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 229.92 379.54 244.32 393.94 ] /Subtype /Widget /T (5.EndLeft) /Type /Annot >> @@ -16694,7 +16694,7 @@ stream xLH4/IK׬KS5JJS5k34b M["k4%jj NJHuqjj[Qbn5g+%endstream endobj 1840 0 obj -<< /AA << /D << /JS (try{if\(a6_playing\){a6_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 1839 0 R /S /JavaScript >> /PI << /JS 1839 0 R /S /JavaScript >> /PO << /JS 1838 0 R /S /JavaScript >> /PV << /JS 1838 0 R /S /JavaScript >> /U << /JS (try{if\(event.shift\)a6_playsRight=!a6_playsRight;if\(a6_idx==0\)a6_playsRight=true;if\(a6_idx==25\)a6_playsRight=false;if\(a6_playsRight\){a6_playRight\(\);}else{a6_playLeft\(\);}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 1786 0 R >> /BS << /W 0 >> /Contents (animation by animate, v. 2022/08/04) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 1786 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 176.4 165.34 417 418.66 ] /Subtype /Widget /T (anm6) /Type /Annot >> +<< /AA << /D << /JS (try{if\(a6_playing\){a6_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 1839 0 R /S /JavaScript >> /PI << /JS 1839 0 R /S /JavaScript >> /PO << /JS 1838 0 R /S /JavaScript >> /PV << /JS 1838 0 R /S /JavaScript >> /U << /JS (try{if\(event.shift\)a6_playsRight=!a6_playsRight;if\(a6_idx==0\)a6_playsRight=true;if\(a6_idx==25\)a6_playsRight=false;if\(a6_playsRight\){a6_playRight\(\);}else{a6_playLeft\(\);}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 1786 0 R >> /BS << /W 0 >> /Contents (animation by animate, v. 2022/09/15) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 1786 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 176.4 165.34 417 418.66 ] /Subtype /Widget /T (anm6) /Type /Annot >> endobj 1841 0 obj << /AA << /D << /JS (a6_stopFirst\(\);) /S /JavaScript >> >> /AP << /N 672 0 R >> /BS << /W 0 >> /F 0 /FT /Btn /Ff 65536 /H /I /MK << /I 672 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 229.92 149.62 244.32 163.9 ] /Subtype /Widget /T (6.EndLeft) /Type /Annot >> @@ -16986,10 +16986,13 @@ endobj << /BaseEncoding /WinAnsiEncoding /Differences [ 11 /u1D6FC /u1D6FD /u1D6FE 59 /comma 116 /u1D461 120 /u1D465 /u1D466 /u1D467 ] /Type /Encoding >> endobj 1883 0 obj -<< /Filter /FlateDecode /S 425 /O 568 /Length 436 >> +<< /Filter /FlateDecode /S 425 /O 568 /Length 435 >> stream -xc```aпc `6X!V Ff3 ,&0k@u 70x8=`NfY|s/,%@#%hֱD,۪W:wU*%3A*vYWـfX >ew_4G"T ) "E16b{p,0^`|i9 - L IN5,`a`udT`縚5G Su,[dWOserz w`6S A{'cjg!u؛ * `jU[ֿ +xc```aпc `6X!V Ff3 ,& VK5L~jqq +c <0'3,P>9AV_l + O +4X"m+zMi1ض;oԟH꿿tftmOgn9=i7 +ӎ(T0m6PIb$3d$ $7RuDRHwP K,Uګl@ 3rI,|iiwJ?Lm߯e#`}"H=8LX/|>piCjeSj tx<?9f͑0ETC'mYz\T©vО XEgDh`fF CZpX endstream endobj 1884 0 obj @@ -16999,25 +17002,27 @@ endobj << /FT /Btn /Ff 65537 /Rect [ 0.960007 837.94 3.96001 840.94 ] /Subtype /Widget /T (pbs@ARFix@1) /Type /Annot >> endobj 1886 0 obj -<< /Filter /FlateDecode /Length 3836 >> -stream -x[ms5 e,ŎzߒpQWu +OKQ7v쨻կOK'jqz始^ZhM mou˕D݋%:hKǤ\>IP x eeu&t SwJBw\aBpO^};حQJ=Dw@ZikAZ2afvڹnli{Ҏg{}. U)4ޓV~#% ૫, -K.`rN^Ǒ谸u)9,pIUOz59k,9)e}Qn Nl6RzUO:d>:bt8m M֛;([g[ 6eo=fxŃ>bwt&&%mhE!,rF`g9SD͋)- 8)F̘|qSr^zH_#1B-"7ֺdRLw}s0DN^ O!2/NӒOlG[5)VXT}E|ڔ|Sm2%;b7 a#9Ŕ!&]ߣP6B&qi!ݛGE";m/7oUjB@o䜫rhT/ĂC E2f}0H*]VEWg%>CjO)&A}{5ΔXbA+tݳB6 <BYk=Ce\x[#~V -Tɜ7X7KFRqe?\ W0] %䡘A0[G@0%ձLqMlK6O$ hHLU7vrSgIG"E ΎI8m A"xZ/62ISƶq_lNuF9+wŐq&7(୺Vsm8$Xll5[hˈ< pcd&|};)m!w o;x}1lfĨHAQ.2Fp0dVT+!і8z-[IZb7`ts)m&e>XC_6Na7rfҎ0Rj. Y)gS \U߸=H` UuZMP5~m1+|˝B%BcJKHZLԷ ,`- -S.GarPkm9,iFyBs< !PN?fyڝ;!x -gkg҅ -] SB^Ii15$肛xƈ DBV~QqBecB2XqWT0JoXX$v7 F_M.mqj9*,g#]8Pe)>D_=ӄsU  (0 zb{89TZLeܝ[,W္p -`RQ-Gn"2)7U!0SA̠c~ʵ@`̆&T4!UӔUh~]Rhm;uB,u4 bf TMnHrNmQ'7nspmksCwJvl4EMY!@O61b08AU͇EJF3_jƶL)#G#Y2$jW0iB<ЂR+,t:%zzb{&h ,A%3jb:ecusꆰn&j!32y]=O!qa<"o$\mI*ld! ԝ- 0EkselCy˶-hu6z:F J-!Ŷ¼ɸBl@eO閬4]ݚZ^{IzDgffI | -Z xPNp0|5"LMFͼ"]h KOg!= -(3[jXSh޵9嵯=u=<3eAZj#<`O^N#N.9ܱuIpnbe0Gc(I肁]/5| 8qDEČ|#h ؆>D㔧 /rkJ=X97AD+xn<? b (}3iD8zCy -^ -C4l6󲓄4kH֔r+7ge G}||jMЧP_LPE -dxG_QQQCr#,@ -?ek+FTt۽уὙ1+zxӍ -vI';1Cw趁#\)}E$J L9׽݁. -ؼa}km4T컅n zi27,1}"(lx/Q\wSJ@\Z4 iQDk|-pMu41Dʦ&>&jEIz3w1n,w_pNXgZ(Fro#Dޙ{wX)ils0<l- -.*op@wچ[ݟYW D?d,Y"z#{G*XRa6Tmw  GÅqæ$-.NZ|dt,8˷&%n|u*jD=m?+ҝr x[>YDFpda+#ʰH#]oQ>~P&/( >d֨}uk1e~ kiX.X8~0f|>OMyhSJH|l!RZ1,yeP\~o&\AX-VP'|A.FV7osA?~?G/rhqGfOu]fnlc+>O9b|;nΗWlFx #S.rG& fYG{ɣr'x?!Ⱦc0$؁_ו10 -=Y\dYO4-ީN?1ȍآi:zFwIk~*0L3 dȷh})W-SlO%%N#RvrIǽ6ͷBྐE(dyS gk)":qw}$gOK+ K눤7u7{2`#VI竄e n.1cA|lͻd0`BC`j ՏLދPNKHێ?2noC1*;%?;42b﬇S څ('>Uf#_Uh>FbsdZF u,^|u?endstream +<< /Filter /FlateDecode /Length 3845 >> +stream +x[n7gB^m{L;;vV ,Ȃ#9SdY=ӒEiVzdP=-7=9?PӃ(?] N-(]xPBk]xo{8>?;^to=%/A=[>&RLHbz㧠/+3[/5H3T +s~nQkp"= Xdb 2r}wQhKӓ3˟OTVƋQ.VR* ?iK|4\oա-6!ifgO'xqчr[ON=iob+ui~y{߿R?>%.p2\!ˬh.;gJH#nMo{9!i4 R_#^s"L&kk!@=ꚧdJv +e]0^bʉks4WdWҽ~P$854TTnӧ/JoUJGu795+1f=>ЂALci ) +}7/Y3gK0jVwriTMH1=~`&E &+v `uO,"( +eY*=msydTmE[)pS%svDb, tQKaF1@x5 +[2Hń : +id.Y6Ue&NqP:.u3VbpAQ.2FuY)hK[^rAbQ9xWM+ +Ll#2 p +c6&Oz.NY 풞 ۑ|6aU%AYh Ti6C2ܲWŬH-w +,y.!i3S߂F:h)Pu9:K֖(凲Xt %$@9e[D]U8ܐAǨkș MiB)+|;nڢMii8Ѐy6P17!9E}/ߺi67t1X[&xQzSVC /NPfe|niihA̗Z-S%QH"kLz\J^b$6-FЇE^緜"94xJ$# IwcSLp,cThi y1n@ p޼ (VrraHr6-̤^ @( lWk9 BЮ@;N_%[v} Y_ä +Q#B rK}P(olF |r²txë|ĻխSKƖ]˾q@~cu\ޟf^7M/ JF!aY#zd0.8X8!ZЎsKD:PH7pmD49NyRL F?CCKm)iOpBaއ=N=ޒΡ쵡9Iv*`#=+;IH<|JfjM!2IqzV1pԇƇ/ } +U<%_DwHK{d5U1I.W>KƘK;iNaL ͌A]ã5%nTT$P`N8$ƀLމG L:H;.&TUL`pQX %]kaޠe-,W48rwLw-ŏ~Jau<%4 d̥E Nd'>\+ׄ`iQKc(@ԫlj`VĘW=sƢ|G߽HHv:Bo7{!߻Úϭ\OO#d`k1VПvQg}36ؚnO>d^/P9ETxfᮋcP +ii:>\ ?|M8I\c[\Xn3pЗORJ>*UԤJ෉z~V;A>?|. 䉂 OɶVGڵa+F b ޢpEi@!~Lֿo4y[խǔ/a`ǿJ@>Srn6nM!+!勲Hk7KĄT." 0mfS!Z!NZ\Iὣã/o.~~vp>}ŵߢ9>uqB{G1gbM_F-?;_^ 7d'pNN'e}KW%˅@#?Z(2,`. +|Y?_W&g+dsv=G}Zx8f1Et80o=ޑX79)T +af ˑ?.!Pa$(I/5p*ߚÐK8?dm%",B@!˛r5_8[K^ѹwC8lU6NIn>8od!F 7 W +8\c,TmA,ٚw3ja򅔩ɇ6*Ըy +&l ޗ4(&O?2noC1*;%?;42bϱS څ('>Uf#_Uh>FbsdZF u,^|u?e#endstream endobj 1887 0 obj << /AA << /PC << /JS 624 0 R /S /JavaScript >> /PI << /JS 624 0 R /S /JavaScript >> /PO << /JS 623 0 R /S /JavaScript >> /PV << /JS 623 0 R /S /JavaScript >> >> /F 2 /Rect [ 333.72 629.38 338.76 634.54 ] /Subtype /Screen /Type /Annot >> @@ -17642,12 +17647,12 @@ x 8MOOXas`dd O`ãGݗ V6 :ԯN~ N@E/ﹱ+hen@{qOU}ҮVSJ#~废9%^j32G{{fC?RftboXt$UݡTw#vG"C6Rf8HYu@l:+{uunMli c"Z:byߵlf%TCM[PF=ofƉ~g 5:ɿ\ȦvNArpp@s8t4N7xO.xt̞!y)0qSL2j#Ӝ.T@8m#G -%%c@e՛LH<ׇvqMDfPEA^.S)YQb=pĚ+%iIZrN98хB5%ʆEreyXqU|D/&ꨜ+`JOHJZ|EN=1-)~CN lQFa(B)伻dVRb&׀`bީV 7l͎d hqF35)PϺ!TD'EI̾5MALD*X?$êlū#tݞokWfP(PDf vɕӌֳaoojOGQ(DOG*ژ( B bں*T_/L45^d(qk7}3bPc7@]^}-N`)ۚh.qJ7T` oP6R5P@7#r3/" @ϓo&T-^ej"tr0!~(&ro\touU[?mM(|tQ|uN㍩|'׈̃OJl(Jٗ6a>AjF ~qWa-Im}70G|R{/c.)"`YcE&xCqT&"C,^T'_HZ<iL"84/Iэ5)nAinƗ~I-:?C߲×X# %n坸)@m+ GfJR,DU{ ~ J Nu0Cab+n@ѓ}T,aCfD:JTmr.s#;,''5QGX.3ywsctJ%djߘKveŭ%Ikr hNNYläLCm1VFSύHowڂUASXK]3$jIVwc) 0q9)G'4vBȪduӜqlmR; Tt9*C_ϺQn 50qR3|20tM"/I\VH_]*DE hتL;$D~ 4n@m4y0 !&ڋo_HnbJm|4ƮeϷO%x=M]pV<$L'd穅VI*Y=!5-#/h]/0?*zXw5UD 6&.O?;P[h)vSt*ŗoKL$7Dkj{a|Wlt9f_Eq-6 ^awrȩci$Gu=k+OAG=fiF;'GQJKPHCw }!*Jk畢$Qs-r_MacN$f۩_KB"0H4e>@@Vo_G*9e\&j,)yTg^jf!tҜ$~E)W?|oedkGNJX;JD[jQ4܇c޷](S~,<JZ)A)aFJ2O_/T HU>Va&2hZ3䉀^EtxdE5]zU4enT@]ZA!n^⺒ǕtŜh\7}RWW$ض7]HNEW޵kNE,k 5a*VX8Iy?ZrӀ;E%E79GC7zc'y Z'iܪmUsqQ?lޱfbI)`o. +%%c@e՛LH<ׇvqMDfPEA^.S)YQb=pĚ+%iIZrN98хB5%ʆEreyXqU|D/&ꨜ+`JOHJZ|EN=1-)~CN lQFa(B)伻dVRb&׀`bީV 7l͎d hqF35)PϺ!TD'EI̾5MALD*X?$êlū#tݞokWfP(PDf vɕӌֳaoojOGQ(DOG*ژ( B bں*T_/L45^d(qk7}3bPc7@]^}-N`)ۚh.qJ7T` oP6R5P@7#r3/" @ϓo&T-^ej"tr0!~(&ro\touU[?mM(|tQ|uN㍩|'׈̃OJl(Jٗ6a>AkF ~qWa-Im}70G|R{/c.)"`YcE&xCqT&"C,^T'_HZ<iL"84/Iэ5)nAinƗ~I-:?C߲×X# %n坸)@m+ GfJR,DU{ ~ J Nu0Cab+n@ѓ}T,aCfD:JTmr.s#;,''5QGX.3ywsctJ%djߘKveŭ%Ikr hNNYläLCm1VFSύHowڂUASXK]3$jIVwc) 0q9)G'4vBȪduӜqlmR; Tt9*C_ϺQn 50qR3|20tM"/I\VH_]*DE hتL;$D~ 4n@m4y0 !&ڋo_HnbJm|4ƮeϷO%x=M]pV<$L'd穅VI*Y=!5-#/h]/0?*zXw5UD 6&.O?;P[h)vSt*ŗoKL$7Dkj{a|Wlt9f_Eq-6 ^awrȩci$Gu=k+OAG=fiF;'GQJKPHCw }!*Jk畢$Qs-r_MacN$f۩_KB"0H4e>@@Vo_G*9e\&j,)yTg^jf!tҜ$~E)W?|oedkGNJX;JD[jQ4܇c޷](S~,<JZ)A)aFJ2O_/T HU>Va&2hZ3䉀^EtxdE5]zU4enT@]ZA!n^⺒ǕtŜh\7}RWW$ض7]HNEW޵kNE,k 5a*VX8Iy?ZrӀ;E%E79GC7zc'y Z'iܪmUsqQ?lޱfbI)`o. z NI=j+30^\3Ihs 4]).KnU~œP4t/g# wF IlK7 s )Y&&l Jx[AGGeVR4,ȿzidՍ$Bs:307:Ŗf0;Vfq+DyǪ_%(wx8U'4x=C3f"QQt³@4+z70JeS_Ammdl18ܒ qEĺ\;ߧ)!)NM4QR͸8kӒkU.\4]r"9^M\APr2)ǧ^ihYv\myΎyhG2s (jaBɲB!@O-k82([$cm2j4 $mVřˑ$[MƅW=2hY$gDZ &q䀯$3kD!h->@Kp<pzGV;`(&:G4C$آ64CJP׳/.#w1No=]_u"KIxl/%dk3 KП>MF5"G Fg:V,RZAfvE8qK:2fTNO H~ {1)Kh@o1wa m`7[lzAkCg MtTT`5prӓy8S WExQ^ *Q53o5Ϙͧ˅kq&PJ7RNo!=}y}I8(אv)0($%9h.p`Mp`䭂'TGtr5ӸԖJ,Z&y-[(|@ Vl!?-~bilqW\6u.x-Cҧ2N3!0jV”+ކxcجf7EX]˄K0ó2e^ȏ(0Map5vؚlnv\O"˅;( AyΊM]}.Wȅk[ E Đר:H{U|xmSSN-|_9Aw -g'1ˁFg,ݕ˥w%fEc}{8%sŋ$4,b+Eݻm@`-}W%Ȉthbf;ޣnN?pp:xhT#;mGГjL$^b pł5&d<&sRF<'[>5V]>͘T Zn Vkx9kPǏxb6~ nP--kÁHDi܋ yD9rDNkƗ9pY y8B/b'~[ci|2jҊ'_iqe74|BAi ǀ/ЕS6<{[endstream +g'1ˁFg,ݕ˥w%fEc}{8%sŋ$4,b+Eݻm@`-}W%Ȉthbf;ޣnN?pp:xhT#;mGГjL$^b pł5&d<&sRF<'[>5V]>͘T Zn Vkx9kPǏxb6~ nP--kÁHDi܋ yD9rDNkƗ9pY y8B/b'~[ci|2jҊ'_iqe74|BAi ǀ/ЕS6<?^endstream endobj 54 0 obj << /A << /D (section.7) /S /GoTo >> /Border [ 0 0 0 ] /C [ 0.701176 0.4 0.414118 ] /H /I /Rect [ 145.524 690.827 152.196 701.685 ] /Subtype /Link /Type /Annot >> @@ -19892,7 +19897,7 @@ endobj << /Count 29 /Kids [ 1884 0 R 1 0 R 9 0 R 16 0 R 22 0 R 31 0 R 37 0 R 43 0 R 47 0 R 51 0 R 58 0 R 64 0 R 73 0 R 83 0 R 87 0 R 96 0 R 100 0 R 107 0 R 116 0 R 122 0 R 129 0 R 141 0 R 147 0 R 154 0 R 170 0 R 176 0 R 180 0 R 184 0 R 192 0 R ] /Type /Pages >> endobj 218 0 obj -<< /Author /CreationDate (D:20220804170136+02'00') /Creator /Keywords /ModDate (D:20220804170136+02'00') /Producer (GPL Ghostscript 9.55.0) /Subject /Title >> +<< /Author /CreationDate (D:20220915163953+02'00') /Creator /Keywords /ModDate (D:20220915163953+02'00') /Producer (GPL Ghostscript 9.55.0) /Subject /Title >> endobj 219 0 obj << /Limits [ (Doc-Start) (table.4) ] /Names [ (Doc-Start) 221 0 R (Hfootnote.1) 232 0 R (Item.1) 587 0 R (Item.2) 588 0 R (Item.3) 589 0 R (Item.4) 590 0 R (Item.5) 591 0 R (Item.6) 592 0 R (Item.7) 593 0 R (Item.8) 595 0 R (beginend) 242 0 R (cite.chupin) 598 0 R (cite.dvisvgm) 599 0 R (cite.gilg05) 600 0 R (cite.hol) 601 0 R (cite.luque12) 602 0 R (cite.media4svg) 603 0 R (cite.media9) 604 0 R (cite.texsx) 605 0 R (dest:mem) 586 0 R (figure.1) 323 0 R (figure.2) 341 0 R (figure.3) 412 0 R (figure.4) 424 0 R (figure.5) 508 0 R (lstlisting.-1) 255 0 R (lstlisting.-2) 265 0 R (lstlisting.-3) 284 0 R (lstlisting.-4) 324 0 R (lstlisting.-5) 370 0 R (lstlisting.-6) 413 0 R (lstlisting.-7) 480 0 R (lstlisting.-8) 556 0 R (lstlisting.-9) 578 0 R (lstnumber.-1.1) 256 0 R (lstnumber.-1.2) 257 0 R (lstnumber.-1.3) 258 0 R (lstnumber.-1.4) 259 0 R (lstnumber.-1.5) 260 0 R (lstnumber.-1.6) 261 0 R (lstnumber.-1.7) 262 0 R (lstnumber.-2.1) 266 0 R (lstnumber.-2.10) 275 0 R (lstnumber.-2.11) 276 0 R (lstnumber.-2.12) 277 0 R (lstnumber.-2.2) 267 0 R (lstnumber.-2.3) 268 0 R (lstnumber.-2.4) 269 0 R (lstnumber.-2.5) 270 0 R (lstnumber.-2.6) 271 0 R (lstnumber.-2.7) 272 0 R (lstnumber.-2.8) 273 0 R (lstnumber.-2.9) 274 0 R (lstnumber.-3.1) 285 0 R (lstnumber.-3.10) 294 0 R (lstnumber.-3.11) 295 0 R (lstnumber.-3.12) 296 0 R (lstnumber.-3.13) 297 0 R (lstnumber.-3.14) 298 0 R (lstnumber.-3.15) 299 0 R (lstnumber.-3.16) 300 0 R (lstnumber.-3.17) 301 0 R (lstnumber.-3.18) 302 0 R (lstnumber.-3.19) 303 0 R (lstnumber.-3.2) 286 0 R (lstnumber.-3.20) 304 0 R (lstnumber.-3.21) 305 0 R (lstnumber.-3.22) 306 0 R (lstnumber.-3.23) 307 0 R (lstnumber.-3.24) 308 0 R (lstnumber.-3.25) 309 0 R (lstnumber.-3.26) 310 0 R (lstnumber.-3.27) 311 0 R (lstnumber.-3.28) 312 0 R (lstnumber.-3.29) 313 0 R (lstnumber.-3.3) 287 0 R (lstnumber.-3.30) 314 0 R (lstnumber.-3.31) 315 0 R (lstnumber.-3.32) 316 0 R (lstnumber.-3.33) 317 0 R (lstnumber.-3.34) 318 0 R (lstnumber.-3.35) 319 0 R (lstnumber.-3.36) 320 0 R (lstnumber.-3.37) 321 0 R (lstnumber.-3.4) 288 0 R (lstnumber.-3.5) 289 0 R (lstnumber.-3.6) 290 0 R (lstnumber.-3.7) 291 0 R (lstnumber.-3.8) 292 0 R (lstnumber.-3.9) 293 0 R (lstnumber.-4.1) 325 0 R (lstnumber.-4.10) 334 0 R (lstnumber.-4.11) 335 0 R (lstnumber.-4.12) 336 0 R (lstnumber.-4.13) 337 0 R (lstnumber.-4.14) 338 0 R (lstnumber.-4.15) 339 0 R (lstnumber.-4.16) 342 0 R (lstnumber.-4.17) 343 0 R (lstnumber.-4.18) 344 0 R (lstnumber.-4.19) 345 0 R (lstnumber.-4.2) 326 0 R (lstnumber.-4.20) 346 0 R (lstnumber.-4.21) 347 0 R (lstnumber.-4.22) 348 0 R (lstnumber.-4.23) 349 0 R (lstnumber.-4.24) 350 0 R (lstnumber.-4.25) 351 0 R (lstnumber.-4.26) 352 0 R (lstnumber.-4.27) 353 0 R (lstnumber.-4.28) 354 0 R (lstnumber.-4.29) 355 0 R (lstnumber.-4.3) 327 0 R (lstnumber.-4.30) 356 0 R (lstnumber.-4.31) 357 0 R (lstnumber.-4.32) 358 0 R (lstnumber.-4.33) 359 0 R (lstnumber.-4.34) 360 0 R (lstnumber.-4.35) 361 0 R (lstnumber.-4.36) 362 0 R (lstnumber.-4.37) 363 0 R (lstnumber.-4.38) 364 0 R (lstnumber.-4.39) 366 0 R (lstnumber.-4.4) 328 0 R (lstnumber.-4.40) 367 0 R (lstnumber.-4.41) 368 0 R (lstnumber.-4.5) 329 0 R (lstnumber.-4.6) 330 0 R (lstnumber.-4.7) 331 0 R (lstnumber.-4.8) 332 0 R (lstnumber.-4.9) 333 0 R (lstnumber.-5.1) 371 0 R (lstnumber.-5.10) 380 0 R (lstnumber.-5.11) 381 0 R (lstnumber.-5.12) 382 0 R (lstnumber.-5.13) 383 0 R (lstnumber.-5.14) 384 0 R (lstnumber.-5.15) 385 0 R (lstnumber.-5.16) 386 0 R (lstnumber.-5.17) 387 0 R (lstnumber.-5.18) 388 0 R (lstnumber.-5.19) 389 0 R (lstnumber.-5.2) 372 0 R (lstnumber.-5.20) 390 0 R (lstnumber.-5.21) 391 0 R (lstnumber.-5.22) 392 0 R (lstnumber.-5.23) 393 0 R (lstnumber.-5.24) 394 0 R (lstnumber.-5.25) 395 0 R (lstnumber.-5.26) 396 0 R (lstnumber.-5.27) 397 0 R (lstnumber.-5.28) 398 0 R (lstnumber.-5.29) 399 0 R (lstnumber.-5.3) 373 0 R (lstnumber.-5.30) 400 0 R (lstnumber.-5.31) 401 0 R (lstnumber.-5.32) 402 0 R (lstnumber.-5.33) 403 0 R (lstnumber.-5.34) 404 0 R (lstnumber.-5.35) 405 0 R (lstnumber.-5.36) 406 0 R (lstnumber.-5.37) 407 0 R (lstnumber.-5.38) 408 0 R (lstnumber.-5.39) 409 0 R (lstnumber.-5.4) 374 0 R (lstnumber.-5.40) 410 0 R (lstnumber.-5.5) 375 0 R (lstnumber.-5.6) 376 0 R (lstnumber.-5.7) 377 0 R (lstnumber.-5.8) 378 0 R (lstnumber.-5.9) 379 0 R (lstnumber.-6.1) 414 0 R (lstnumber.-6.10) 425 0 R (lstnumber.-6.11) 426 0 R (lstnumber.-6.12) 427 0 R (lstnumber.-6.13) 428 0 R (lstnumber.-6.14) 429 0 R (lstnumber.-6.15) 430 0 R (lstnumber.-6.16) 431 0 R (lstnumber.-6.17) 432 0 R (lstnumber.-6.18) 433 0 R (lstnumber.-6.19) 434 0 R (lstnumber.-6.2) 415 0 R (lstnumber.-6.20) 435 0 R (lstnumber.-6.21) 436 0 R (lstnumber.-6.22) 437 0 R (lstnumber.-6.23) 438 0 R (lstnumber.-6.24) 439 0 R (lstnumber.-6.25) 440 0 R (lstnumber.-6.26) 441 0 R (lstnumber.-6.27) 442 0 R (lstnumber.-6.28) 444 0 R (lstnumber.-6.29) 445 0 R (lstnumber.-6.3) 416 0 R (lstnumber.-6.30) 446 0 R (lstnumber.-6.31) 447 0 R (lstnumber.-6.32) 448 0 R (lstnumber.-6.33) 449 0 R (lstnumber.-6.34) 450 0 R (lstnumber.-6.35) 451 0 R (lstnumber.-6.36) 452 0 R (lstnumber.-6.37) 453 0 R (lstnumber.-6.38) 454 0 R (lstnumber.-6.39) 455 0 R (lstnumber.-6.4) 417 0 R (lstnumber.-6.40) 456 0 R (lstnumber.-6.41) 457 0 R (lstnumber.-6.42) 458 0 R (lstnumber.-6.43) 459 0 R (lstnumber.-6.44) 460 0 R (lstnumber.-6.45) 461 0 R (lstnumber.-6.46) 462 0 R (lstnumber.-6.47) 463 0 R (lstnumber.-6.48) 464 0 R (lstnumber.-6.49) 465 0 R (lstnumber.-6.5) 418 0 R (lstnumber.-6.50) 466 0 R (lstnumber.-6.51) 467 0 R (lstnumber.-6.52) 468 0 R (lstnumber.-6.53) 469 0 R (lstnumber.-6.54) 470 0 R (lstnumber.-6.55) 471 0 R (lstnumber.-6.56) 472 0 R (lstnumber.-6.57) 473 0 R (lstnumber.-6.58) 474 0 R (lstnumber.-6.59) 475 0 R (lstnumber.-6.6) 419 0 R (lstnumber.-6.60) 476 0 R (lstnumber.-6.61) 477 0 R (lstnumber.-6.62) 478 0 R (lstnumber.-6.63) 479 0 R (lstnumber.-6.7) 420 0 R (lstnumber.-6.8) 421 0 R (lstnumber.-6.9) 422 0 R (lstnumber.-7.1) 481 0 R (lstnumber.-7.10) 491 0 R (lstnumber.-7.11) 492 0 R (lstnumber.-7.12) 493 0 R (lstnumber.-7.13) 494 0 R (lstnumber.-7.14) 495 0 R (lstnumber.-7.15) 496 0 R (lstnumber.-7.16) 497 0 R (lstnumber.-7.17) 498 0 R (lstnumber.-7.18) 499 0 R (lstnumber.-7.19) 500 0 R (lstnumber.-7.2) 482 0 R (lstnumber.-7.20) 501 0 R (lstnumber.-7.21) 502 0 R (lstnumber.-7.22) 503 0 R (lstnumber.-7.23) 504 0 R (lstnumber.-7.24) 505 0 R (lstnumber.-7.25) 506 0 R (lstnumber.-7.26) 507 0 R (lstnumber.-7.27) 510 0 R (lstnumber.-7.28) 511 0 R (lstnumber.-7.29) 512 0 R (lstnumber.-7.3) 483 0 R (lstnumber.-7.30) 513 0 R (lstnumber.-7.31) 514 0 R (lstnumber.-7.32) 515 0 R (lstnumber.-7.33) 516 0 R (lstnumber.-7.34) 517 0 R (lstnumber.-7.35) 518 0 R (lstnumber.-7.36) 519 0 R (lstnumber.-7.37) 520 0 R (lstnumber.-7.38) 521 0 R (lstnumber.-7.39) 522 0 R (lstnumber.-7.4) 485 0 R (lstnumber.-7.40) 523 0 R (lstnumber.-7.41) 524 0 R (lstnumber.-7.42) 525 0 R (lstnumber.-7.43) 526 0 R (lstnumber.-7.44) 527 0 R (lstnumber.-7.45) 528 0 R (lstnumber.-7.46) 529 0 R (lstnumber.-7.47) 530 0 R (lstnumber.-7.48) 531 0 R (lstnumber.-7.49) 532 0 R (lstnumber.-7.5) 486 0 R (lstnumber.-7.50) 533 0 R (lstnumber.-7.51) 534 0 R (lstnumber.-7.52) 535 0 R (lstnumber.-7.53) 536 0 R (lstnumber.-7.54) 537 0 R (lstnumber.-7.55) 538 0 R (lstnumber.-7.56) 539 0 R (lstnumber.-7.57) 540 0 R (lstnumber.-7.58) 541 0 R (lstnumber.-7.59) 542 0 R (lstnumber.-7.6) 487 0 R (lstnumber.-7.60) 543 0 R (lstnumber.-7.61) 544 0 R (lstnumber.-7.62) 545 0 R (lstnumber.-7.63) 546 0 R (lstnumber.-7.64) 547 0 R (lstnumber.-7.65) 548 0 R (lstnumber.-7.66) 549 0 R (lstnumber.-7.67) 550 0 R (lstnumber.-7.68) 551 0 R (lstnumber.-7.69) 552 0 R (lstnumber.-7.7) 488 0 R (lstnumber.-7.70) 553 0 R (lstnumber.-7.8) 489 0 R (lstnumber.-7.9) 490 0 R (lstnumber.-8.1) 557 0 R (lstnumber.-8.10) 566 0 R (lstnumber.-8.11) 567 0 R (lstnumber.-8.12) 568 0 R (lstnumber.-8.13) 569 0 R (lstnumber.-8.14) 570 0 R (lstnumber.-8.15) 571 0 R (lstnumber.-8.16) 572 0 R (lstnumber.-8.17) 573 0 R (lstnumber.-8.18) 574 0 R (lstnumber.-8.19) 575 0 R (lstnumber.-8.2) 558 0 R (lstnumber.-8.20) 576 0 R (lstnumber.-8.3) 559 0 R (lstnumber.-8.4) 560 0 R (lstnumber.-8.5) 561 0 R (lstnumber.-8.6) 562 0 R (lstnumber.-8.7) 563 0 R (lstnumber.-8.8) 564 0 R (lstnumber.-8.9) 565 0 R (lstnumber.-9.1) 579 0 R (lstnumber.-9.2) 580 0 R (lstnumber.-9.3) 581 0 R (lstnumber.-9.4) 582 0 R (lstnumber.-9.5) 583 0 R (page.1) 220 0 R (page.10) 241 0 R (page.11) 244 0 R (page.12) 246 0 R (page.13) 250 0 R (page.14) 252 0 R (page.15) 263 0 R (page.16) 278 0 R (page.17) 281 0 R (page.18) 322 0 R (page.19) 340 0 R (page.2) 223 0 R (page.20) 365 0 R (page.21) 411 0 R (page.22) 423 0 R (page.23) 443 0 R (page.24) 484 0 R (page.25) 509 0 R (page.26) 555 0 R (page.27) 577 0 R (page.28) 585 0 R (page.29) 594 0 R (page.3) 226 0 R (page.4) 229 0 R (page.5) 231 0 R (page.6) 233 0 R (page.7) 236 0 R (page.8) 239 0 R (page.9) 240 0 R (section*.1) 222 0 R (section*.2) 234 0 R (section*.3) 235 0 R (section*.4) 245 0 R (section*.5) 247 0 R (section*.6) 249 0 R (section*.7) 251 0 R (section*.8) 254 0 R (section*.9) 597 0 R (section.1) 224 0 R (section.10) 584 0 R (section.11) 596 0 R (section.2) 225 0 R (section.3) 227 0 R (section.4) 228 0 R (section.5) 230 0 R (section.6) 237 0 R (section.7) 264 0 R (section.8) 282 0 R (section.9) 554 0 R (subsection.6.1) 238 0 R (subsection.6.2) 243 0 R (subsection.8.1) 283 0 R (subsection.8.2) 369 0 R (table.1) 248 0 R (table.2) 253 0 R (table.3) 279 0 R (table.4) 280 0 R ] >> @@ -21074,10 +21079,10 @@ stream GPL Ghostscript 9.55.0 include portable PDF animation SVG animation animated PDF animated SVG dvisvgm html TeX4ht web animating embed animated graphics LaTeX pdfLaTeX LuaLaTeX PSTricks pgf TikZ LaTeX-picture MetaPost inline graphics vector graphics animated GIF LaTeX dvips ps2pdf dvipdfmx XeLaTeX JavaScript Acrobat Reader KDE Okular PDF-XChange Foxit Reader Firefox Chrome Chromium -2022-08-04T17:01:36+02:00 -2022-08-04T17:01:36+02:00 +2022-09-15T16:39:53+02:00 +2022-09-15T16:39:53+02:00 LaTeX with hyperref - + The animate PackageAlexander GrahnDocumentation @@ -21088,616 +21093,616 @@ endobj xref 0 610 0000000000 65535 f -0003171583 00000 n -0003171791 00000 n -0003171919 00000 n -0003177808 00000 n -0003177986 00000 n -0003178164 00000 n -0003178346 00000 n -0003178395 00000 n -0003178470 00000 n -0003178678 00000 n -0003178807 00000 n -0003181921 00000 n -0003182173 00000 n -0003182352 00000 n -0003182402 00000 n -0003182465 00000 n -0003182688 00000 n -0003182817 00000 n -0003187589 00000 n -0003187841 00000 n -0003187889 00000 n -0003187965 00000 n -0003188175 00000 n -0003188304 00000 n -0003194463 00000 n -0003194643 00000 n -0003194878 00000 n -0003195142 00000 n -0003195192 00000 n -0003195267 00000 n -0003196350 00000 n -0003196560 00000 n -0003196689 00000 n -0003204483 00000 n -0003204666 00000 n -0003204716 00000 n -0003204805 00000 n -0003205007 00000 n -0003205136 00000 n -0003209732 00000 n -0003209910 00000 n -0003209960 00000 n -0003210036 00000 n -0003210212 00000 n -0003210341 00000 n -0003214561 00000 n -0003214610 00000 n -0003214786 00000 n -0003214915 00000 n -0003221023 00000 n -0003221072 00000 n -0003221281 00000 n -0003221411 00000 n -0003227012 00000 n -0003227190 00000 n -0003227368 00000 n -0003227418 00000 n -0003227495 00000 n -0003227697 00000 n -0003227827 00000 n -0003234888 00000 n -0003235067 00000 n -0003235117 00000 n -0003235179 00000 n -0003235410 00000 n -0003235540 00000 n -0003240939 00000 n -0003241115 00000 n -0003241292 00000 n -0003241469 00000 n -0003241652 00000 n -0003241702 00000 n -0003241764 00000 n -0003241994 00000 n -0003242124 00000 n -0003248780 00000 n -0003248956 00000 n -0003249133 00000 n -0003249316 00000 n -0003249496 00000 n -0003249674 00000 n -0003249724 00000 n -0003249786 00000 n -0003249970 00000 n -0003250100 00000 n -0003253147 00000 n -0003253209 00000 n -0003253432 00000 n -0003253562 00000 n -0003257144 00000 n -0003257320 00000 n -0003257496 00000 n -0003257679 00000 n -0003257858 00000 n -0003257908 00000 n -0003257971 00000 n -0003258155 00000 n -0003258285 00000 n -0003261923 00000 n -0003261972 00000 n -0003262188 00000 n -0003262319 00000 n -0003265705 00000 n -0003265883 00000 n -0003266061 00000 n -0003266112 00000 n -0003266231 00000 n -0003266664 00000 n -0003266795 00000 n -0003270442 00000 n -0003270694 00000 n -0003270872 00000 n -0003271053 00000 n -0003271496 00000 n -0003271547 00000 n -0003271653 00000 n -0003272876 00000 n -0003273007 00000 n -0003274256 00000 n -0003274514 00000 n -0003279563 00000 n -0003279711 00000 n -0003279927 00000 n -0003280058 00000 n -0003282644 00000 n -0003282822 00000 n -0003283003 00000 n -0003283054 00000 n -0003283132 00000 n -0003283760 00000 n -0003283891 00000 n -0003287891 00000 n -0003288148 00000 n -0003288326 00000 n -0003288499 00000 n -0003288735 00000 n -0003289193 00000 n -0003289244 00000 n -0003289336 00000 n -0003290001 00000 n -0003290100 00000 n -0003292150 00000 n -0003292281 00000 n -0003293371 00000 n -0003293628 00000 n -0003298307 00000 n -0003298371 00000 n -0003298587 00000 n -0003298718 00000 n -0003303333 00000 n -0003303511 00000 n -0003303693 00000 n -0003303744 00000 n -0003303794 00000 n -0003304376 00000 n -0003304507 00000 n -0003305201 00000 n -0003305435 00000 n -0003659895 00000 n -0003659972 00000 n -0003662261 00000 n -0003662336 00000 n -0003662493 00000 n -0003662585 00000 n -0003662727 00000 n -0003662897 00000 n -0003663160 00000 n -0003663416 00000 n -0003664302 00000 n -0003664381 00000 n -0003664589 00000 n -0003664720 00000 n -0003667218 00000 n -0003667400 00000 n -0003667451 00000 n -0003667515 00000 n -0003667695 00000 n -0003667826 00000 n -0003672575 00000 n -0003672639 00000 n -0003672819 00000 n -0003672950 00000 n -0003678846 00000 n -0003678910 00000 n -0003679134 00000 n -0003679265 00000 n -0003685042 00000 n -0003685220 00000 n -0003685396 00000 n -0003685572 00000 n -0003685623 00000 n -0003685699 00000 n -0003685995 00000 n -0003686126 00000 n -0003691449 00000 n -0003691672 00000 n -0003691852 00000 n -0003692031 00000 n -0003692210 00000 n -0003692466 00000 n -0003692722 00000 n -0003692924 00000 n -0003693137 00000 n -0003693355 00000 n -0003693570 00000 n -0003693793 00000 n -0003694016 00000 n -0003694067 00000 n -0003694144 00000 n -0003694626 00000 n -0003695003 00000 n -0003695223 00000 n -0003695463 00000 n -0003696437 00000 n -0003698815 00000 n -0003699160 00000 n -0003699383 00000 n -0003699655 00000 n -0003701570 00000 n -0003711033 00000 n -0003711104 00000 n -0003711172 00000 n -0003711240 00000 n -0003711305 00000 n -0003711369 00000 n -0003711434 00000 n -0003711502 00000 n -0003711567 00000 n -0003711632 00000 n -0003711698 00000 n -0003711762 00000 n -0003711831 00000 n -0003711897 00000 n -0003711963 00000 n -0003712029 00000 n -0003712095 00000 n -0003712164 00000 n -0003712230 00000 n -0003712296 00000 n -0003712362 00000 n -0003712431 00000 n -0003712497 00000 n -0003712562 00000 n -0003712627 00000 n -0003712696 00000 n -0003712762 00000 n -0003712828 00000 n -0003712893 00000 n -0003712959 00000 n -0003713025 00000 n -0003713094 00000 n -0003713160 00000 n -0003713226 00000 n -0003713292 00000 n -0003713358 00000 n -0003713424 00000 n -0003713489 00000 n -0003713555 00000 n -0003713621 00000 n -0003713687 00000 n -0003713752 00000 n -0003713818 00000 n -0003713884 00000 n -0003713953 00000 n -0003714019 00000 n -0003714085 00000 n -0003714151 00000 n -0003714217 00000 n -0003714282 00000 n -0003714348 00000 n -0003714414 00000 n -0003714480 00000 n -0003714546 00000 n -0003714612 00000 n -0003714678 00000 n -0003714744 00000 n -0003714810 00000 n -0003714876 00000 n -0003714942 00000 n -0003715008 00000 n -0003715074 00000 n -0003715144 00000 n -0003715211 00000 n -0003715278 00000 n -0003715345 00000 n -0003715412 00000 n -0003715479 00000 n -0003715546 00000 n -0003715612 00000 n -0003715678 00000 n -0003715745 00000 n -0003715812 00000 n -0003715879 00000 n -0003715945 00000 n -0003716011 00000 n -0003716078 00000 n -0003716145 00000 n -0003716212 00000 n -0003716278 00000 n -0003716345 00000 n -0003716412 00000 n -0003716479 00000 n -0003716545 00000 n -0003716611 00000 n -0003716678 00000 n -0003716745 00000 n -0003716812 00000 n -0003716879 00000 n -0003716946 00000 n -0003717013 00000 n -0003717080 00000 n -0003717147 00000 n -0003717214 00000 n -0003717281 00000 n -0003717348 00000 n -0003717415 00000 n -0003717482 00000 n -0003717548 00000 n -0003717615 00000 n -0003717682 00000 n -0003717749 00000 n -0003717816 00000 n -0003717883 00000 n -0003717950 00000 n -0003718015 00000 n -0003718082 00000 n -0003718149 00000 n -0003718216 00000 n -0003718283 00000 n -0003718350 00000 n -0003718417 00000 n -0003718484 00000 n -0003718551 00000 n -0003718618 00000 n -0003718685 00000 n -0003718752 00000 n -0003718819 00000 n -0003718886 00000 n -0003718953 00000 n -0003719020 00000 n -0003719090 00000 n -0003719157 00000 n -0003719224 00000 n -0003719291 00000 n -0003719358 00000 n -0003719425 00000 n -0003719490 00000 n -0003719557 00000 n -0003719624 00000 n -0003719691 00000 n -0003719758 00000 n -0003719825 00000 n -0003719892 00000 n -0003719959 00000 n -0003720026 00000 n -0003720092 00000 n -0003720158 00000 n -0003720225 00000 n -0003720292 00000 n -0003720359 00000 n -0003720425 00000 n -0003720492 00000 n -0003720559 00000 n -0003720626 00000 n -0003720693 00000 n -0003720760 00000 n -0003720827 00000 n -0003720894 00000 n -0003720961 00000 n -0003721028 00000 n -0003721095 00000 n -0003721162 00000 n -0003721229 00000 n -0003721296 00000 n -0003721363 00000 n -0003721429 00000 n -0003721496 00000 n -0003721563 00000 n -0003721630 00000 n -0003721697 00000 n -0003721764 00000 n -0003721831 00000 n -0003721898 00000 n -0003721965 00000 n -0003722032 00000 n -0003722099 00000 n -0003722166 00000 n -0003722233 00000 n -0003722300 00000 n -0003722367 00000 n -0003722431 00000 n -0003722498 00000 n -0003722562 00000 n -0003722629 00000 n -0003722695 00000 n -0003722762 00000 n -0003722829 00000 n -0003722896 00000 n -0003722963 00000 n -0003723029 00000 n -0003723096 00000 n -0003723163 00000 n -0003723230 00000 n -0003723297 00000 n -0003723363 00000 n -0003723430 00000 n -0003723497 00000 n -0003723564 00000 n -0003723630 00000 n -0003723696 00000 n -0003723763 00000 n -0003723833 00000 n -0003723900 00000 n -0003723967 00000 n -0003724034 00000 n -0003724101 00000 n -0003724168 00000 n -0003724235 00000 n -0003724302 00000 n -0003724369 00000 n -0003724436 00000 n -0003724503 00000 n -0003724570 00000 n -0003724637 00000 n -0003724704 00000 n -0003724771 00000 n -0003724838 00000 n -0003724905 00000 n -0003724972 00000 n -0003725039 00000 n -0003725106 00000 n -0003725173 00000 n -0003725240 00000 n -0003725307 00000 n -0003725373 00000 n -0003725437 00000 n -0003725504 00000 n -0003725571 00000 n -0003725638 00000 n -0003725705 00000 n -0003725772 00000 n -0003725839 00000 n -0003725906 00000 n -0003725976 00000 n -0003726043 00000 n -0003726110 00000 n -0003726177 00000 n -0003726243 00000 n -0003726309 00000 n -0003726376 00000 n -0003726443 00000 n -0003726510 00000 n -0003726576 00000 n -0003726642 00000 n -0003726709 00000 n -0003726776 00000 n -0003726843 00000 n -0003726909 00000 n -0003726976 00000 n -0003727043 00000 n -0003727110 00000 n -0003727177 00000 n -0003727244 00000 n -0003727311 00000 n -0003727378 00000 n -0003727442 00000 n -0003727509 00000 n -0003727576 00000 n -0003727643 00000 n -0003727710 00000 n -0003727777 00000 n -0003727843 00000 n -0003727910 00000 n -0003727977 00000 n -0003728044 00000 n -0003728111 00000 n -0003728178 00000 n -0003728245 00000 n -0003728312 00000 n -0003728379 00000 n -0003728446 00000 n -0003728512 00000 n -0003728579 00000 n -0003728643 00000 n -0003728710 00000 n -0003728777 00000 n -0003728844 00000 n -0003728911 00000 n -0003728977 00000 n -0003729043 00000 n -0003729110 00000 n -0003729177 00000 n -0003729244 00000 n -0003729310 00000 n -0003729376 00000 n -0003729443 00000 n -0003729510 00000 n -0003729577 00000 n -0003729643 00000 n -0003729710 00000 n -0003729777 00000 n -0003729844 00000 n -0003729911 00000 n -0003729978 00000 n -0003730045 00000 n -0003730112 00000 n -0003730176 00000 n -0003730243 00000 n -0003730310 00000 n -0003730380 00000 n -0003730447 00000 n -0003730514 00000 n -0003730581 00000 n -0003730647 00000 n -0003730713 00000 n -0003730780 00000 n -0003730847 00000 n -0003730914 00000 n -0003730980 00000 n -0003731046 00000 n -0003731113 00000 n -0003731180 00000 n -0003731247 00000 n -0003731313 00000 n -0003731380 00000 n -0003731447 00000 n -0003731514 00000 n -0003731581 00000 n -0003731648 00000 n -0003731715 00000 n -0003731782 00000 n -0003731846 00000 n -0003731913 00000 n -0003731980 00000 n -0003732047 00000 n -0003732114 00000 n -0003732181 00000 n -0003732247 00000 n -0003732314 00000 n -0003732381 00000 n -0003732448 00000 n -0003732515 00000 n -0003732582 00000 n -0003732649 00000 n -0003732716 00000 n -0003732783 00000 n -0003732850 00000 n -0003732917 00000 n -0003732984 00000 n -0003733051 00000 n -0003733118 00000 n -0003733185 00000 n -0003733252 00000 n -0003733319 00000 n -0003733386 00000 n -0003733453 00000 n -0003733520 00000 n -0003733587 00000 n -0003733654 00000 n -0003733721 00000 n -0003733788 00000 n -0003733855 00000 n -0003733919 00000 n -0003733986 00000 n -0003734053 00000 n -0003734120 00000 n -0003734187 00000 n -0003734254 00000 n -0003734320 00000 n -0003734387 00000 n -0003734454 00000 n -0003734521 00000 n -0003734588 00000 n -0003734655 00000 n -0003734722 00000 n -0003734789 00000 n -0003734856 00000 n -0003734926 00000 n -0003734993 00000 n -0003735060 00000 n -0003735127 00000 n -0003735194 00000 n -0003735261 00000 n -0003735328 00000 n -0003735395 00000 n -0003735462 00000 n -0003735529 00000 n -0003735596 00000 n -0003735663 00000 n -0003735730 00000 n -0003735797 00000 n -0003735864 00000 n -0003735931 00000 n -0003735998 00000 n -0003736068 00000 n -0003736135 00000 n -0003736202 00000 n -0003736269 00000 n -0003736336 00000 n -0003736403 00000 n -0003736470 00000 n -0003736537 00000 n -0003736604 00000 n -0003736671 00000 n -0003736738 00000 n -0003736805 00000 n -0003736844 00000 n -0003736874 00000 n -0003737159 00000 n -trailer << /Size 610 /ID [<75e8fb4f5346631caadd4dd62bc0c8cf>] >> +0003171591 00000 n +0003171799 00000 n +0003171927 00000 n +0003177816 00000 n +0003177994 00000 n +0003178172 00000 n +0003178354 00000 n +0003178403 00000 n +0003178478 00000 n +0003178686 00000 n +0003178815 00000 n +0003181929 00000 n +0003182181 00000 n +0003182360 00000 n +0003182410 00000 n +0003182473 00000 n +0003182696 00000 n +0003182825 00000 n +0003187597 00000 n +0003187849 00000 n +0003187897 00000 n +0003187973 00000 n +0003188183 00000 n +0003188312 00000 n +0003194471 00000 n +0003194651 00000 n +0003194886 00000 n +0003195150 00000 n +0003195200 00000 n +0003195275 00000 n +0003196358 00000 n +0003196568 00000 n +0003196697 00000 n +0003204491 00000 n +0003204674 00000 n +0003204724 00000 n +0003204813 00000 n +0003205015 00000 n +0003205144 00000 n +0003209740 00000 n +0003209918 00000 n +0003209968 00000 n +0003210044 00000 n +0003210220 00000 n +0003210349 00000 n +0003214569 00000 n +0003214618 00000 n +0003214794 00000 n +0003214923 00000 n +0003221031 00000 n +0003221080 00000 n +0003221289 00000 n +0003221419 00000 n +0003227020 00000 n +0003227198 00000 n +0003227376 00000 n +0003227426 00000 n +0003227503 00000 n +0003227705 00000 n +0003227835 00000 n +0003234896 00000 n +0003235075 00000 n +0003235125 00000 n +0003235187 00000 n +0003235418 00000 n +0003235548 00000 n +0003240947 00000 n +0003241123 00000 n +0003241300 00000 n +0003241477 00000 n +0003241660 00000 n +0003241710 00000 n +0003241772 00000 n +0003242002 00000 n +0003242132 00000 n +0003248788 00000 n +0003248964 00000 n +0003249141 00000 n +0003249324 00000 n +0003249504 00000 n +0003249682 00000 n +0003249732 00000 n +0003249794 00000 n +0003249978 00000 n +0003250108 00000 n +0003253155 00000 n +0003253217 00000 n +0003253440 00000 n +0003253570 00000 n +0003257152 00000 n +0003257328 00000 n +0003257504 00000 n +0003257687 00000 n +0003257866 00000 n +0003257916 00000 n +0003257979 00000 n +0003258163 00000 n +0003258293 00000 n +0003261931 00000 n +0003261980 00000 n +0003262196 00000 n +0003262327 00000 n +0003265713 00000 n +0003265891 00000 n +0003266069 00000 n +0003266120 00000 n +0003266239 00000 n +0003266672 00000 n +0003266803 00000 n +0003270450 00000 n +0003270702 00000 n +0003270880 00000 n +0003271061 00000 n +0003271504 00000 n +0003271555 00000 n +0003271661 00000 n +0003272884 00000 n +0003273015 00000 n +0003274264 00000 n +0003274522 00000 n +0003279571 00000 n +0003279719 00000 n +0003279935 00000 n +0003280066 00000 n +0003282652 00000 n +0003282830 00000 n +0003283011 00000 n +0003283062 00000 n +0003283140 00000 n +0003283768 00000 n +0003283899 00000 n +0003287899 00000 n +0003288156 00000 n +0003288334 00000 n +0003288507 00000 n +0003288743 00000 n +0003289201 00000 n +0003289252 00000 n +0003289344 00000 n +0003290009 00000 n +0003290108 00000 n +0003292158 00000 n +0003292289 00000 n +0003293379 00000 n +0003293636 00000 n +0003298315 00000 n +0003298379 00000 n +0003298595 00000 n +0003298726 00000 n +0003303341 00000 n +0003303519 00000 n +0003303701 00000 n +0003303752 00000 n +0003303802 00000 n +0003304384 00000 n +0003304515 00000 n +0003305209 00000 n +0003305443 00000 n +0003659903 00000 n +0003659980 00000 n +0003662269 00000 n +0003662344 00000 n +0003662501 00000 n +0003662593 00000 n +0003662735 00000 n +0003662905 00000 n +0003663168 00000 n +0003663424 00000 n +0003664310 00000 n +0003664389 00000 n +0003664597 00000 n +0003664728 00000 n +0003667226 00000 n +0003667408 00000 n +0003667459 00000 n +0003667523 00000 n +0003667703 00000 n +0003667834 00000 n +0003672583 00000 n +0003672647 00000 n +0003672827 00000 n +0003672958 00000 n +0003678854 00000 n +0003678918 00000 n +0003679142 00000 n +0003679273 00000 n +0003685050 00000 n +0003685228 00000 n +0003685404 00000 n +0003685580 00000 n +0003685631 00000 n +0003685707 00000 n +0003686003 00000 n +0003686134 00000 n +0003691457 00000 n +0003691680 00000 n +0003691860 00000 n +0003692039 00000 n +0003692218 00000 n +0003692474 00000 n +0003692730 00000 n +0003692932 00000 n +0003693145 00000 n +0003693363 00000 n +0003693578 00000 n +0003693801 00000 n +0003694024 00000 n +0003694075 00000 n +0003694152 00000 n +0003694634 00000 n +0003695011 00000 n +0003695231 00000 n +0003695471 00000 n +0003696445 00000 n +0003698823 00000 n +0003699168 00000 n +0003699391 00000 n +0003699663 00000 n +0003701578 00000 n +0003711041 00000 n +0003711112 00000 n +0003711180 00000 n +0003711248 00000 n +0003711313 00000 n +0003711377 00000 n +0003711442 00000 n +0003711510 00000 n +0003711575 00000 n +0003711640 00000 n +0003711706 00000 n +0003711770 00000 n +0003711839 00000 n +0003711905 00000 n +0003711971 00000 n +0003712037 00000 n +0003712103 00000 n +0003712172 00000 n +0003712238 00000 n +0003712304 00000 n +0003712370 00000 n +0003712439 00000 n +0003712505 00000 n +0003712570 00000 n +0003712635 00000 n +0003712704 00000 n +0003712770 00000 n +0003712836 00000 n +0003712901 00000 n +0003712967 00000 n +0003713033 00000 n +0003713102 00000 n +0003713168 00000 n +0003713234 00000 n +0003713300 00000 n +0003713366 00000 n +0003713432 00000 n +0003713497 00000 n +0003713563 00000 n +0003713629 00000 n +0003713695 00000 n +0003713760 00000 n +0003713826 00000 n +0003713892 00000 n +0003713961 00000 n +0003714027 00000 n +0003714093 00000 n +0003714159 00000 n +0003714225 00000 n +0003714290 00000 n +0003714356 00000 n +0003714422 00000 n +0003714488 00000 n +0003714554 00000 n +0003714620 00000 n +0003714686 00000 n +0003714752 00000 n +0003714818 00000 n +0003714884 00000 n +0003714950 00000 n +0003715016 00000 n +0003715082 00000 n +0003715152 00000 n +0003715219 00000 n +0003715286 00000 n +0003715353 00000 n +0003715420 00000 n +0003715487 00000 n +0003715554 00000 n +0003715620 00000 n +0003715686 00000 n +0003715753 00000 n +0003715820 00000 n +0003715887 00000 n +0003715953 00000 n +0003716019 00000 n +0003716086 00000 n +0003716153 00000 n +0003716220 00000 n +0003716286 00000 n +0003716353 00000 n +0003716420 00000 n +0003716487 00000 n +0003716553 00000 n +0003716619 00000 n +0003716686 00000 n +0003716753 00000 n +0003716820 00000 n +0003716887 00000 n +0003716954 00000 n +0003717021 00000 n +0003717088 00000 n +0003717155 00000 n +0003717222 00000 n +0003717289 00000 n +0003717356 00000 n +0003717423 00000 n +0003717490 00000 n +0003717556 00000 n +0003717623 00000 n +0003717690 00000 n +0003717757 00000 n +0003717824 00000 n +0003717891 00000 n +0003717958 00000 n +0003718023 00000 n +0003718090 00000 n +0003718157 00000 n +0003718224 00000 n +0003718291 00000 n +0003718358 00000 n +0003718425 00000 n +0003718492 00000 n +0003718559 00000 n +0003718626 00000 n +0003718693 00000 n +0003718760 00000 n +0003718827 00000 n +0003718894 00000 n +0003718961 00000 n +0003719028 00000 n +0003719098 00000 n +0003719165 00000 n +0003719232 00000 n +0003719299 00000 n +0003719366 00000 n +0003719433 00000 n +0003719498 00000 n +0003719565 00000 n +0003719632 00000 n +0003719699 00000 n +0003719766 00000 n +0003719833 00000 n +0003719900 00000 n +0003719967 00000 n +0003720034 00000 n +0003720100 00000 n +0003720166 00000 n +0003720233 00000 n +0003720300 00000 n +0003720367 00000 n +0003720433 00000 n +0003720500 00000 n +0003720567 00000 n +0003720634 00000 n +0003720701 00000 n +0003720768 00000 n +0003720835 00000 n +0003720902 00000 n +0003720969 00000 n +0003721036 00000 n +0003721103 00000 n +0003721170 00000 n +0003721237 00000 n +0003721304 00000 n +0003721371 00000 n +0003721437 00000 n +0003721504 00000 n +0003721571 00000 n +0003721638 00000 n +0003721705 00000 n +0003721772 00000 n +0003721839 00000 n +0003721906 00000 n +0003721973 00000 n +0003722040 00000 n +0003722107 00000 n +0003722174 00000 n +0003722241 00000 n +0003722308 00000 n +0003722375 00000 n +0003722439 00000 n +0003722506 00000 n +0003722570 00000 n +0003722637 00000 n +0003722703 00000 n +0003722770 00000 n +0003722837 00000 n +0003722904 00000 n +0003722971 00000 n +0003723037 00000 n +0003723104 00000 n +0003723171 00000 n +0003723238 00000 n +0003723305 00000 n +0003723371 00000 n +0003723438 00000 n +0003723505 00000 n +0003723572 00000 n +0003723638 00000 n +0003723704 00000 n +0003723771 00000 n +0003723841 00000 n +0003723908 00000 n +0003723975 00000 n +0003724042 00000 n +0003724109 00000 n +0003724176 00000 n +0003724243 00000 n +0003724310 00000 n +0003724377 00000 n +0003724444 00000 n +0003724511 00000 n +0003724578 00000 n +0003724645 00000 n +0003724712 00000 n +0003724779 00000 n +0003724846 00000 n +0003724913 00000 n +0003724980 00000 n +0003725047 00000 n +0003725114 00000 n +0003725181 00000 n +0003725248 00000 n +0003725315 00000 n +0003725381 00000 n +0003725445 00000 n +0003725512 00000 n +0003725579 00000 n +0003725646 00000 n +0003725713 00000 n +0003725780 00000 n +0003725847 00000 n +0003725914 00000 n +0003725984 00000 n +0003726051 00000 n +0003726118 00000 n +0003726185 00000 n +0003726251 00000 n +0003726317 00000 n +0003726384 00000 n +0003726451 00000 n +0003726518 00000 n +0003726584 00000 n +0003726650 00000 n +0003726717 00000 n +0003726784 00000 n +0003726851 00000 n +0003726917 00000 n +0003726984 00000 n +0003727051 00000 n +0003727118 00000 n +0003727185 00000 n +0003727252 00000 n +0003727319 00000 n +0003727386 00000 n +0003727450 00000 n +0003727517 00000 n +0003727584 00000 n +0003727651 00000 n +0003727718 00000 n +0003727785 00000 n +0003727851 00000 n +0003727918 00000 n +0003727985 00000 n +0003728052 00000 n +0003728119 00000 n +0003728186 00000 n +0003728253 00000 n +0003728320 00000 n +0003728387 00000 n +0003728454 00000 n +0003728520 00000 n +0003728587 00000 n +0003728651 00000 n +0003728718 00000 n +0003728785 00000 n +0003728852 00000 n +0003728919 00000 n +0003728985 00000 n +0003729051 00000 n +0003729118 00000 n +0003729185 00000 n +0003729252 00000 n +0003729318 00000 n +0003729384 00000 n +0003729451 00000 n +0003729518 00000 n +0003729585 00000 n +0003729651 00000 n +0003729718 00000 n +0003729785 00000 n +0003729852 00000 n +0003729919 00000 n +0003729986 00000 n +0003730053 00000 n +0003730120 00000 n +0003730184 00000 n +0003730251 00000 n +0003730318 00000 n +0003730388 00000 n +0003730455 00000 n +0003730522 00000 n +0003730589 00000 n +0003730655 00000 n +0003730721 00000 n +0003730788 00000 n +0003730855 00000 n +0003730922 00000 n +0003730988 00000 n +0003731054 00000 n +0003731121 00000 n +0003731188 00000 n +0003731255 00000 n +0003731321 00000 n +0003731388 00000 n +0003731455 00000 n +0003731522 00000 n +0003731589 00000 n +0003731656 00000 n +0003731723 00000 n +0003731790 00000 n +0003731854 00000 n +0003731921 00000 n +0003731988 00000 n +0003732055 00000 n +0003732122 00000 n +0003732189 00000 n +0003732255 00000 n +0003732322 00000 n +0003732389 00000 n +0003732456 00000 n +0003732523 00000 n +0003732590 00000 n +0003732657 00000 n +0003732724 00000 n +0003732791 00000 n +0003732858 00000 n +0003732925 00000 n +0003732992 00000 n +0003733059 00000 n +0003733126 00000 n +0003733193 00000 n +0003733260 00000 n +0003733327 00000 n +0003733394 00000 n +0003733461 00000 n +0003733528 00000 n +0003733595 00000 n +0003733662 00000 n +0003733729 00000 n +0003733796 00000 n +0003733863 00000 n +0003733927 00000 n +0003733994 00000 n +0003734061 00000 n +0003734128 00000 n +0003734195 00000 n +0003734262 00000 n +0003734328 00000 n +0003734395 00000 n +0003734462 00000 n +0003734529 00000 n +0003734596 00000 n +0003734663 00000 n +0003734730 00000 n +0003734797 00000 n +0003734864 00000 n +0003734934 00000 n +0003735001 00000 n +0003735068 00000 n +0003735135 00000 n +0003735202 00000 n +0003735269 00000 n +0003735336 00000 n +0003735403 00000 n +0003735470 00000 n +0003735537 00000 n +0003735604 00000 n +0003735671 00000 n +0003735738 00000 n +0003735805 00000 n +0003735872 00000 n +0003735939 00000 n +0003736006 00000 n +0003736076 00000 n +0003736143 00000 n +0003736210 00000 n +0003736277 00000 n +0003736344 00000 n +0003736411 00000 n +0003736478 00000 n +0003736545 00000 n +0003736612 00000 n +0003736679 00000 n +0003736746 00000 n +0003736813 00000 n +0003736852 00000 n +0003736882 00000 n +0003737167 00000 n +trailer << /Size 610 /ID [<782d3cd91591d75b4d8a62e34c092caf>] >> startxref 216 %%EOF diff --git a/macros/latex/contrib/animate/animate.sty b/macros/latex/contrib/animate/animate.sty index 408cf967f3..ba9fc998e2 100644 --- a/macros/latex/contrib/animate/animate.sty +++ b/macros/latex/contrib/animate/animate.sty @@ -13,7 +13,7 @@ \NeedsTeXFormat{LaTeX2e}[2022-06-01] -\def\@anim@version{2022/08/04} +\def\@anim@version{2022/09/15} \ProvidesPackage{animate} [\@anim@version\space PDF & SVG animations from files and inline graphics] @@ -1575,17 +1575,17 @@ }% \fi% \begingroup% + \@anim@beginLTR% + \ifcsname Ginput@path\endcsname% make use of graphic[xs] search path + \let\input@path\Ginput@path% + \fi% + \SetKeys[anim@user]{#1}% %store current abs. page num in macro \@anim@abspage \if@anim@dvisvgm\if@anim@draft\else% \zref@labelbyprops{anim@abspage\the\@anim@num}{abspage}% \zref@def@extractdefault{\@anim@abspage}{% anim@abspage\the\@anim@num}{abspage}{-1}% \fi\fi% - \@anim@beginLTR% - \ifcsname Ginput@path\endcsname% make use of graphic[xs] search path - \let\input@path\Ginput@path% - \fi% - \SetKeys[anim@user]{#1}% \ifx\empty\@anim@bg\empty\xdef\@anim@alpha{}\fi% \xdef\@anim@btnsize{\the\dimexpr\@anim@btnsize\relax}% %correct wrong option combination; totalheight overrides height @@ -2105,18 +2105,18 @@ }% \fi% \begingroup% - %store current abs. page num in macro \@anim@abspage - \if@anim@dvisvgm\if@anim@draft\else% - \zref@labelbyprops{anim@abspage\the\@anim@num}{abspage}% - \zref@def@extractdefault{\@anim@abspage}{% - anim@abspage\the\@anim@num}{abspage}{-1}% - \fi\fi% \@anim@beginLTR% \ifdefined\NoHyper\NoHyper\fi% silently suppress any hyperref specials \ifcsname Ginput@path\endcsname% make use of graphic[xs] search path \let\input@path\Ginput@path% \fi% \SetKeys[anim@user]{#1}% + %store current abs. page num in macro \@anim@abspage + \if@anim@dvisvgm\if@anim@draft\else% + \zref@labelbyprops{anim@abspage\the\@anim@num}{abspage}% + \zref@def@extractdefault{\@anim@abspage}{% + anim@abspage\the\@anim@num}{abspage}{-1}% + \fi\fi% \ifx\empty\@anim@bg\empty\xdef\@anim@alpha{}\fi% \xdef\@anim@btnsize{\the\dimexpr\@anim@btnsize\relax}% %correct wrong option combination; totalheight overrides height @@ -2389,7 +2389,11 @@ \@anim@updatevars% update variables \fi% \global\advance\@anim@mulframecnt by \@ne% - \def\multiframebreak{\global\@anim@mulframecnt=#1}% + \if@anim@draft% + \global\@anim@mulframecnt=#1% + \else% + \def\multiframebreak{\global\@anim@mulframecnt=#1}% + \fi% \ignorespaces% #3% execute loop body \unskip% diff --git a/macros/latex/contrib/bithesis/README.md b/macros/latex/contrib/bithesis/README.md deleted file mode 100644 index c76d91bfdc..0000000000 --- a/macros/latex/contrib/bithesis/README.md +++ /dev/null @@ -1,43 +0,0 @@ - - -# The `bithesis` Class - -$\LaTeX$ thesis template for Beijing Institute of Technology. - -The current maintainer of this project is [Feng Kaiyu](https://github.com/fky2015). - -[![BIThesis](./assets/bithesis_badge_solid.svg)](https://bithesis.bitnp.net/) -[![Latexmk](https://badgen.net/badge/compiler/latexmk/blue)](https://mg.readthedocs.io/latexmk.html) -[![License](https://badgen.net/github/license/BITNP/BIThesis?color=008080&labelColor=2b2b2b)](./LICENSE) - -BIThesis is an unofficial LaTeX template set for your -**undergraduate, master or doctoral thesis** as well as other academic writing here at BIT. - -This project is supported by the _[Dept. of Undergraduate Academic Affairs, BIT](https://jwc.bit.edu.cn/)_ and the _[School of Computer Science and Technology, BIT](https://cs.bit.edu.cn/)_. See [Acknowledgements - Official Sponsors](https://bithesis.bitnp.net/Guide/5-Acknowledgements/Acknowledgements.html#%E5%AE%98%E6%96%B9%E8%B5%9E%E5%8A%A9-official-sponsors). - -At present, `bithesis` only supports XeTeX and LuaTeX engines. `bithesis` only allows `UTF-8` encoding. - -## How Do I Use `bithesis`? - -### Installation - -``` -tlmgr install bithesis -``` - -Or make a clone from our [repo](https://github.com/BITNP/BIThesis). Then run: `make cls` to generate class files. - -## How Do I Use BIThesis? - -**For a comprehensive guide on how to install LaTeX, compile `bithesis`, and use a single one of BIThesis' template, please refer to BIThesis' Wiki. 👇** - -[![BIThesis Wiki](https://img.shields.io/badge/BIThesis-Wiki-009944?logo=wikipedia&labelColor=2b2b2b&style=for-the-badge)](https://bithesis.bitnp.net/) - -## Contributing - -For more details, please see the [contributing doc](./contributing.md). - -## Contributors - -For more information, please see: [Github Contributors](https://github.com/BITNP/BIThesis/graphs/contributors) and [Acknowledgements](https://bithesis.bitnp.net/Guide/5-Acknowledgements/Acknowledgements.html). - diff --git a/macros/latex/contrib/bithesis/bithesis.dtx b/macros/latex/contrib/bithesis/bithesis.dtx deleted file mode 100644 index 4d8499b64d..0000000000 --- a/macros/latex/contrib/bithesis/bithesis.dtx +++ /dev/null @@ -1,4899 +0,0 @@ -% \iffalse meta-comment -% -% Copyright (C) 2022 -% Association of Bit Network Pioneer and any individual authors listed elsewhere in this file. -% ----------------------------------- -% -% This work may be distributed and/or modified under the -% conditions of the LaTeX Project Public License, either -% version 1.3c of this license or (at your option) any later -% version. This version of this license is in -% http://www.latex-project.org/lppl/lppl-1-3c.txt -% and the latest version of this license is in -% http://www.latex-project.org/lppl.txt -% and version 1.3 or later is part of all distributions of -% LaTeX version 2020/11/27 or later. -% -% \fi -% -% \iffalse -%\RequirePackage{expl3,l3keys2e} -%\ProvidesExplClass{bithesis} -%\ProvidesExplClass{bitreport} -%\ProvidesExplClass{bitbeamer} -%{2022-09-03}{3.0.0}{BIT Thesis Templates} -% -%\NeedsTeXFormat{LaTeX2e}[2020/10/01] -%\ProvidesClass{bitbook} -%
\ProvidesClass{bitart} -%\ProvidesClass{bitgrad} -% [2022/05/09 v2.1.1 BIT Thesis Templates] -% -%<*driver> -\ProvidesFile{bithesis.dtx}[2022/09/03 3.0.0 BIT Thesis Templates] -\documentclass[letterpaper]{l3doc} -\usepackage{dtx-style} - -\EnableCrossrefs -\CodelineIndex - -\RecordChanges -\begin{document} - \DocInput{\jobname.dtx} - \PrintChanges - \def\indexname{代码索引} - \PrintIndex -\end{document} -% -% \fi -% -% \DoNotIndex{\newenvironment,\@bsphack,\@empty,\@esphack,\sfcode} -% \DoNotIndex{\addtocounter,\label,\let,\linewidth,\newcounter} -% \DoNotIndex{\noindent,\normalfont,\par,\parskip,\phantomsection} -% \DoNotIndex{\providecommand,\ProvidesPackage,\refstepcounter} -% \DoNotIndex{\RequirePackage,\setcounter,\setlength,\string,\strut} -% \DoNotIndex{\textbackslash,\texttt,\ttfamily,\usepackage} -% \DoNotIndex{\begin,\end,\begingroup,\endgroup,\par,\\} -% \DoNotIndex{\if,\ifx,\ifdim,\ifnum,\ifcase,\else,\or,\fi} -% \DoNotIndex{\let,\def,\xdef,\edef,\newcommand,\renewcommand} -% \DoNotIndex{\expandafter,\csname,\endcsname,\relax,\protect} -% \DoNotIndex{\Huge,\huge,\LARGE,\Large,\large,\normalsize} -% \DoNotIndex{\small,\footnotesize,\scriptsize,\tiny} -% \DoNotIndex{\normalfont,\bfseries,\slshape,\sffamily,\interlinepenalty} -% \DoNotIndex{\textbf,\textit,\textsf,\textsc} -% \DoNotIndex{\hfil,\par,\hskip,\vskip,\vspace,\quad} -% \DoNotIndex{\centering,\raggedright,\ref} -% \DoNotIndex{\c@secnumdepth,\@startsection,\@setfontsize} -% \DoNotIndex{\ ,\@plus,\@minus,\p@,\z@,\@m,\@M,\@ne,\m@ne} -% \DoNotIndex{\@@par,\DeclareOperation,\RequirePackage,\LoadClass} -% \DoNotIndex{\AtBeginDocument,\AtEndDocument,\AtBeginEnvironment} -% -% \GetFileInfo{\jobname.dtx} % -% -% \def\indexname{索引} -% \IndexPrologue{\section{\indexname}} -% -% \title{\includegraphics[width=0.3\textwidth]{images/icon.png} -% \\[1cm] -% \bfseries 北京理工大学{\LaTeX}学位论文及报告模板 } -% \author{北京理工大学网络开拓者协会 \\ \texttt{webmaster@bitnp.net}} % -% \date{\zihao{-4} \today\quad \color{RubineRed}{\kaishu {\BIThesis}版本\version}} -% \maketitle\thispagestyle{empty} -% -% \def\abstractname{} -% \begin{abstract}\noindent -% 此宏包旨在建立一个简单易用的北京理工大学学位论文模板(以及其他模板),包括本科毕业设计与研究生论文。 -% \end{abstract} -% -% \vspace{5mm} -% -% \begin{center} -% \noindent\rule[0.25\baselineskip]{0.5\textwidth}{0.7pt} -% \end{center} -% -% \def\abstractname{免责声明} -% \begin{abstract} -% \noindent -% \begin{enumerate} -% \item 本模板的发布遵守 \LPPL ,使用前请认真阅读协议内容。 -% \item 与\BIThesis 相关的文档内容采用 \href{https://github.com/BITNP/BIThesis-wiki/blob/main/LICENSE}{CC0-1.0 协议} 发布。 -% \item 任何个人或组织以本模板为基础进行修改、扩展而生成的新的专用模板,请严格遵 -% 守 \LaTeX{} Project Public License 协议。由于违犯协议而引起的任何纠纷争端均与 -% 本模板作者无关。 -% \end{enumerate} -% \end{abstract} -% -% \vspace{5mm} -% -% \def\abstractname{简介} -% \begin{abstract} -% \BIThesisLaTeX 是北京理工大学本科生毕业设计与研究生学位论文,以及其他课程报告、实验报告的 {\LaTeX} 模板集合。 -% 如果你厌烦了 Word 格式的不人性化、参考文献的难以管理、公式输入的差劲体验……那么欢迎来尝试用专业的学术稿件排版利器 —— {\LaTeX},来排版你的论文。 -% 专业高端、学界认可、开源免费,{\LaTeX} 是你论文排版的最佳搭档。 -% -% \BIThesisLaTeX 目前支持使用 {\hologo{XeLaTeX}} 进行编译,使用以 biber 为后端的 BibLaTeX 进行参考文献的生成, -% 符合《信息与文献参考文献著录规则》 -% (\href{http://openstd.samr.gov.cn/bzgk/gb/newGbInfo?hcno=7FA63E9BBA56E60471AEDAEBDE44B14C}{GB/T 7714—2015})的标准。 -% 目前主要设计完成了计算机学院本科生毕业论文开题报告、毕业设计毕业论文与通用实验报告的 {\LaTeX} 模板。 -% -% \end{abstract} -% \newpage -% -% \tableofcontents -% \clearpage -% \setlength{\parskip}{0.8ex} -% -% \section{项目简介} -% \subsection{历史与贡献者们} -% \begin{itemize} -% \item 2017 - 2018 年,杨雅婷等人受研究生院委托,制作了\href{https://github.com/BIT-thesis/LaTeX-template}{BIT-Thesis} 研究生学位论文模板。 -% \item 2019 - 2020 年,\BIThesis 最早由 2016 级的武上博、王赞、唐誉铭、牟思睿和詹熠莎等人维护。 -% \begin{itemize} -% \item 在此期间,\BIThesis 从无到有诞生了,包括使用手册、在线文档和开箱即用的模板。 -% \item 同时,2017 级的赵池等同学完成了一系列 \BIThesisLaTeX 的视频教程。 -% \end{itemize} -% \item 2020 - 2021 年,2017 级的冯开宇、杨思云、郝正亮和顾骁等人接管了维护开发工作。 -% \begin{itemize} -% \item 在此期间,冯开宇将原来的 .tex 文件制作成了宏包,并发布到 CTAN 上。 -% \item 项目代码也随之被拆分成了 \BIThesisMacroPackage,\BIThesisWiki 和 \BIThesisScaffold。 -% \end{itemize} -% \item 2021 - 2022 年,2021 级(硕士研究生)的冯开宇针对 2021、2022 毕业季收到的反馈对该项目进行维护升级。 -% \begin{itemize} -% \item 在此期间,冯开宇合入了杨雅婷等人在 2017 年开发的研究生学位论文模板。 -% \item 在项目架构上,BIThesis-scaffold 合入 BIThesis 以便于进一步维护。 -% \item 次年暑假期间,冯开宇用 \pkg{expl3} 重构了\LaTeX 样式代码,向用户提供了简易易用的接口。 -% \item 同时,也增加了本科全英文专业的毕设论文模板样式。 -% \end{itemize} -% \end{itemize} -% \subsection{\BIThesis 是什么?} -% \BIThesis 之名是英文单词 Beijing Institution of Technology(北京理工大学)的首字母缩写“BIT” 与“Thesis”结合而成。在纯文本环境下,该名字应写作“BIThesis”。 -% -% \BIThesisLaTeX 是由北京理工大学众多学子发起并维护的开源项目。该项目旨在建立一套简单易用的北京理工大学 \LaTeX 学位论文模板,包括本科综合论文训练。 -% \subsubsection{\BIThesisLaTeX 的组成} -% 我们将 \BIThesisLaTeX 划分为了两个主要仓库: -% \begin{table}[H] -% \centering -% \begin{tabular}{@{}l l p{6cm} @{}} -% \toprule -% 项目 & 项目地址 & 主要目的 \\ \midrule -% BIThesis & \href{https://github.com/BITNP/BIThesis}{BITNP/BIThesis} & 主要存储 \BIThesis 宏包以及开箱即用的模板样式 \\ -% BIThesis-wiki & \href{https://github.com/BITNP/BIThesis-wiki}{BITNP/BIThesis-wiki} & 存储 \BIThesisLaTeX 项目在线文档 \\ \bottomrule -% \end{tabular} -% \end{table} -% -% 如果你仅想解决「我如何使用 \BIThesisLaTeX 来帮助我完成实验论文?」这个问题,那么欢迎你访问我们的\href{https://bithesis.bitnp.net}{在线文档}以获得更多信息。 -% -% 如果你想深入了解 \BIThesisLaTeX 提供的接口的各种选项,那么请继续阅读。 -% -% \subsection{\BIThesis 宏包的组成} -% 为了适应用户的不同需求,并符合 CTeX 宏集的设计习惯,我们将 \BIThesisMacroPackage 的主要功能设计安排在两个中文文档类当中,具体的组成见 \ref{tab:classes}。 -% \begin{table}[H] -% \centering -% \caption{测试} -% \label{tab:classes} -% \begin{tabular}{@{}lll@{}} -% \toprule -% 类别 & 文件 & 说明 \\ \midrule -% \multirow{2}{*}{文档类} & \cls{bithesis.cls} & 封装本科生与研究生的毕业论文样式。 \\ -% & \cls{bitreport.cls} & 封装了本科生开题报告与实验报告样式。 \\ \cmidrule(l){2-3} -% & \cls{bitbeamer.cls} & 对应 ctexbeamer.cls ,提供了北理工的 Beamer 模板样式。 \\ \cmidrule(l){2-3} -% \end{tabular} -% \end{table} -% -% \section{安装} -% \subsection{\BIThesis 宏包的安装和更新} -% 最常见的 \TeX 发行版(\hologo{TeX} Live 和 \hologo{MiKTeX})已收录\BIThesisMacroPackage 及其依赖的宏包和宏集。 -% -% 如果安装以上发行版的时间较早,可能你本地的环境中不存在 \BIThesisMacroPackage 或者不是最新版本的。那么你需要通过包管理器来安装/更新 \BIThesisMacroPackage: -% \begin{shell}[morekeywords={tlmgr,install}] -% tlmgr install fduthesis -% \end{shell} -% -% 更新可以通过图形界面进行,或者通过命令行: -% \begin{shell}[morekeywords={tlmgr,install}] -% tlmgr update fduthesis -% \end{shell} -% -% \section{\cls{bithesis} 使用与配置} -% -% 推荐使用\BIThesisRelease (开箱即用)。 -% -% \BIThesisRelease 提供了多种最常用的模板,你可以在 -% \href{https://github.com/BITNP/BIThesis/releases}{主项目的 Releases}中找到它们。 -% -% 使用此文档类的模板有: -% \begin{itemize} -% \item \BIThesisTemplates{UT} -% \item \BIThesisTemplates{UTE} -% \item \BIThesisTemplates{PT} -% \item \BIThesisTemplates{GT} -% \end{itemize} -% -% \subsection{最小用例} -% -% \begin{latex} -% \documentclass[type=bachelor]{bithesis} -% \BITSetup{ -% info = { -% author = FKY, -% ...... -% } -% } -% \begin{document} -% \end{document} -% \end{latex} -% -% 如您所见,在 \LaTeX 中,用户使用的命令通常以「\\」作为开头,后面依次跟随 -% 命令名称、若干可选参数和若干必需参数。如: -% -% \begin{latex} -% \MakeCover -% \BITSetup{} -% \FooBar[]{} -% \end{latex} -% -% 同理,用户使用的环境通常以 begin 和 end 进行包裹,同样可以传入可选参数和必需参数: -% -% \begin{latex} -% \begin{abstract} -% \end{abstract} -% -% \begin{abstract}[addTOC=false] -% \end{abstract} -% -% \begin{foo}{param1} -% \end{foo} -% \end{latex} -% -% 需要强调的是:以方框号表示的可选参数,在没有参数传入的时候,是可以忽略的。 -% 比如以下两个命令等价: -% \begin{latex} -% \FooBar -% \FooBar[] -% \end{latex} -% -% 环境同理。 -% -% \subsection{模板选项} \label{sec:template-options} -% -% 所谓“模板选项”,指需要在引入文档类的时候指定的选项: -% -% \begin{latex}[deletetexcs={\documentclass},morekeywords={\documentclass}] -% \documentclass(*\oarg{模板选项}*){bithesis} -% \end{latex} -% -% \begin{function}{type} -% \begin{bitsyntax}[emph={[1]type}] -% type = (*<(bachelor)|\mbox{bachelor_translation}|\mbox{bachelor_english}|master|docter>*) -% \end{bitsyntax} -% 选择论文类型,它们分别对应: -% \begin{itemize} -% \item \BIThesisTemplates{UT} -% \item \BIThesisTemplates{PT} -% \item \BIThesisTemplates{UTE} -% \item \BIThesisTemplates{GT} 研究生 -% \item \BIThesisTemplates{GT} 博士生 -% \end{itemize} -% \end{function} -% -% \begin{function}{blindPeerReview} -% \begin{bitsyntax}[emph={[1]blindPeerReview}] -% blindPeerReview = (*<(false)|true>*) -% \end{bitsyntax} -% -% 此选项用于输出符合盲审要求的论文。所有可能暴露个人信息的页面都将隐藏, -% 比如封面、信息页、原创性声明、个人简介、致谢等等。 -% \end{function} -% -% \begin{function}{twoside} -% \begin{bitsyntax}[emph={[1]twoside}] -% twoside = (*<(false)|true>*) -% \end{bitsyntax} -% \end{function} -% -% \begin{function}{ctex} -% \begin{bitsyntax}[emph={[1]ctex}] -% ctex = (*传给 ctexbook 的模板选项*) -% \end{bitsyntax} -% -% 该选项用于传入模板选项至 ctexbook。 -% \end{function} -% -% \subsection{参数设置} -% -% \begin{function}{\BITSetup} -% \begin{bitsyntax}[emph={[1]BITSetup}] -% \BITSetup = {(*\oarg{键值对}*)} -% \end{bitsyntax} -% \end{function} -% -% 本模板提供了一系列选项,可由您自行配置。载入文档类之后,以下所有选项均可通过统一的 -% 命令 \cs{BITSetup} 来设置。 -% -% \cs{BITSetup} 的参数是一组由(英文)逗号隔开的选项列表,列表中的选项通常是 \meta{key} = -% \meta{value} 的形式。部分选项的 \meta{value} 可以省略。对于同一项,后面的设置将会覆盖前面的设 -% 置。在下文的说明中,将用粗体表示默认值。 -% -% \cs{BITSetup} 采用 LATEX3 风格的键值设置,支持不同类型以及多种层次的选项设定。键值列 -% 表中,“=”左右的空格不影响设置;但需注意,参数列表中不可以出现空行。 -% 与模板选项相同,布尔型的参数可以省略 \meta{选项} = true 中的“= true”。 -% 另有一些选项包含子选项,如 cover 和 info 等。它们可以按如下两种等价方式来设定: -% -% \begin{latex}[morekeywords={\BITSetup},emph={[1]BITSetup,cover,date,info,title,author}] -% \BITSetup{ -% cover = { -% date = xxxx年x月, -% }, -% info = { -% author = Feng Kaiyu, -% title = A Thesis Title for Your Paper, -% } -% } -% \end{latex} -% -% 或者 -% -% \begin{latex}[morekeywords={\BITSetup},emph={[1]BITSetup,cover,date,info,title,author}] -% \BITSetup{ -% cover / date = xxxx年x月, -% info / author = Feng Kaiyu, -% info / title = A Thesis Title for Your Paper, -% } -% \end{latex} -% -% \textbf{请注意:以下选项根据模板的不同,可能会有不同的默认值。 -% 有些模板可能不会使用某些选项。使用与否以及使用方式是根据学校的论文撰写要求实现的。} -% -% \subsubsection{封面选项} \label{sec:cover} -% -% \begin{function}{cover} -% \begin{bitsyntax}[emph={[1]cover}] -% cover = (*\marg{键值列表}*) -% cover/(*\meta{key}*) = (*\meta{value}*) -% \end{bitsyntax} -% -% 该选项包含许多子项目,用于设置论文格式。具体内容见下。 -% \end{function} -% -% \begin{function}{cover/date} -% \begin{bitsyntax}[emph={[1]date}] -% date = (*\marg{任意字符串}*) -% \end{bitsyntax} -% -% 覆盖封面的日期。 -% \end{function} -% -% \begin{function}{cover/headerImage} -% \begin{bitsyntax}[emph={[1]headerImage}] -% headerImage = (*\marg{图片路径}*) -% \end{bitsyntax} -% -% 设置封面顶部的“北京理工大学”字样图片。 -% \end{function} -% -% \begin{function}{cover/xiheiFont} -% \begin{bitsyntax}[emph={[1]xiheiFont}] -% xiheiFont = (*\marg{字体路径}*) -% \end{bitsyntax} -% -% 配置此选项以在部分模板封面中使用“华文细黑”,保证与 Word 模板中的字体一致。 -% -% 在 Windows 和 MacOS 中,该字体已经安装;在 Linux 中一般需要用户自行安装。 -% \end{function} -% -% \begin{function}{cover/dilimiter} -% \begin{bitsyntax}[emph={[1]dilimiter}] -% dilimiter = (*\marg{任意字符串}*) -% \end{bitsyntax} -% -% \textit{此选项一般不需要用户自行修改。} -% -% 设置封面信息中标签和值的分隔符。一般为全角或者半角的冒号。 -% \end{function} -% -% \begin{function}{cover/autoWidth} -% \begin{bitsyntax}[emph={[1]autoWidth}] -% autoWidth = (*<(true)|false>*) -% \end{bitsyntax} -% -% \textit{此选项一般不需要用户自行修改。} -% -% 自动计算封面中下划线的长度。 -% -% 如果关闭了该选项,则建议配合\kvopt{cover/labelMaxWidth}{\meta{长度}}\\ -% 和\kvopt{cover/valueMaxWidth}{\meta{长度}}使用,以控制下划线的长度。 -% \end{function} -% -% \begin{function}{cover/labelMaxWidth} -% \begin{bitsyntax}[emph={[1]labelMaxWidth}] -% labelMaxWidth = (*\marg{任意长度}*) -% \end{bitsyntax} -% -% 此选项仅当\kvopt{cover/autoWidth}{false}时生效。 -% -% 设置封面信息中标签的占位长度。 -% \end{function} -% -% \begin{function}{cover/valueMaxWidth} -% \begin{bitsyntax}[emph={[1]valueMaxWidth}] -% valueMaxWidth = (*\marg{任意长度}*) -% \end{bitsyntax} -% -% \textit{此选项一般不需要用户自行修改。} -% -% 设置封面信息中值的占位长度。\textbf{同时也会影响下划线的长度。} -% \end{function} -% -% \begin{function}{cover/labelAlign} -% \begin{bitsyntax}[emph={[1]labelAlign}] -% labelAlign = (**) -% \end{bitsyntax} -% -% \textit{此选项一般不需要用户自行修改。} -% -% 设置封面信息中值的对其方式(居中,左对齐、右对齐)。 -% \end{function} -% -% \begin{function}{cover/valueAlign} -% \begin{bitsyntax}[emph={[1]valueAlign}] -% valueAlign = (**) -% \end{bitsyntax} -% -% 此选项仅当\kvopt{cover/autoWidth}{false}时生效。 -% -% 设置封面信息中标签的对其方式(居中,左对齐、右对齐)。 -% \end{function} -% -% \begin{function}{cover/underlineThickness} -% \begin{bitsyntax}[emph={[1]underlineThickness}] -% underlineThickness = (*\marg{任意长度}*) -% \end{bitsyntax} -% -% 设置封面信息中下划线的厚度。 -% \end{function} -% -% \begin{function}{cover/underlineOffset} -% \begin{bitsyntax}[emph={[1]underlineOffset}] -% underlineOffset = (*(-10pt)|\marg{任意长度}*) -% \end{bitsyntax} -% -% 设置封面信息中下划线的偏移量。 -% \end{function} -% -% \subsubsection{论文基本信息} -% -% \begin{function}{info} -% \begin{bitsyntax}[emph={[1]info}] -% info = (*\marg{键值列表}*) -% info/(*\meta{key}*) = (*\meta{value}*) -% \end{bitsyntax} -% -% 该选项包含许多子项目,用于录入论文信息。具体内容见下。 -% 一般以「En」结尾的项目表示对应的英文字段。 -% \end{function} -% -% \begin{function}{info/title,info/titleEn} -% \begin{bitsyntax}[emph={[1]title,titleEn}] -% title = (*\marg{字符串}*) -% titleEn = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 论文标题。 -% \end{function} -% -% \begin{function}{info/school,info/schoolEn} -% \begin{bitsyntax}[emph={[1]school,schoolEn}] -% school = (*\marg{字符串}*) -% schoolEn = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 学院名称。 -% \end{function} -% -% \begin{function}{info/major,info/majorEn} -% \begin{bitsyntax}[emph={[1]major,majorEn}] -% major = (*\marg{字符串}*) -% majorEn = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 专业名称。 -% \end{function} -% -% \begin{function}{info/author,info/authorEn} -% \begin{bitsyntax}[emph={[1]author,authorEn}] -% author = (*\marg{字符串}*) -% authorEn = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 作者姓名。 -% \end{function} -% -% \begin{function}{info/studentId} -% \begin{bitsyntax}[emph={[1]studentId}] -% studentId = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 学号。 -% \end{function} -% -% \begin{function}{info/supervisor,info/supervisorEn} -% \begin{bitsyntax}[emph={[1]supervisor,supervisorEn}] -% supervisor = (*\marg{字符串}*) -% supervisorEn = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 指导教师。 -% \end{function} -% -% \begin{function}{info/externalSupervisor} -% \begin{bitsyntax}[emph={[1]externalSupervisor}] -% externalSupervisor = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 校外指导教师。 -% \end{function} -% -% \begin{function}{info/keywords,info/keywordsEn} -% \begin{bitsyntax}[emph={[1]keywords,keywordsEn}] -% keywords = (*\marg{字符串;以全角分号分割}*) -% keywordsEn = (*\marg{字符串;以分号分割}*) -% \end{bitsyntax} -% -% 摘要关键词。 -% \end{function} -% -% \begin{function}{info/translationTitle} -% \begin{bitsyntax}[emph={[1]translationTitle}] -% translationTitle = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 文献翻译中,翻译后的论文名称。 -% \end{function} -% -% \begin{function}{info/translationOriginTitleEn} -% \begin{bitsyntax}[emph={[1]translationOriginTitleEn}] -% translationOriginTitleEn = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 文献翻译中,翻译前的论文名称。 -% \end{function} -% -% \begin{function}{info/classification} -% \begin{bitsyntax}[emph={[1]classification}] -% classification = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 中国分类号。 -% \end{function} -% -% \begin{function}{info/UDC} -% \begin{bitsyntax}[emph={[1]UDC}] -% UDC = (*\marg{字符串}*) -% \end{bitsyntax} -% -% UDC分类号。 -% \end{function} -% -% \begin{function}{info/chairman,info/chairmanEn} -% \begin{bitsyntax}[emph={[1]chairman,chairmanEn}] -% chairman = (*\marg{字符串}*) -% chairmanEn = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 答辩委员会主席。 -% \end{function} -% -% \begin{function}{info/degree,info/degreeEn} -% \begin{bitsyntax}[emph={[1]degree,degreeEn}] -% degree = (*\marg{字符串}*) -% degreeEn = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 申请学位。 -% \end{function} -% -% \begin{function}{info/institute,info/instituteEn} -% \begin{bitsyntax}[emph={[1]institute,instituteEn}] -% institute = (*(北京理工大学)|\marg{字符串}*) -% instituteEn = (*(Beijing~Institute~of~Technology)|\marg{字符串}*) -% \end{bitsyntax} -% -% 学位授予单位。 -% \end{function} -% -% \begin{function}{info/defenseDate,info/defenseDateEn} -% \begin{bitsyntax}[emph={[1]defenseDate,defenseDateEn}] -% defenseDate = (*\marg{字符串}*) -% defenseDateEn = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 答辩日期。 -% \end{function} -% -% \begin{function}{info/classifiedLevel} -% \begin{bitsyntax}[emph={[1]classifiedLevel}] -% classifiedLevel = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 密级。 -% \end{function} -% -% \subsubsection{样式信息} -% -% \begin{function}{style} -% \begin{bitsyntax}[emph={[1]style}] -% style = (*\marg{键值列表}*) -% style/(*\meta{key}*) = (*\meta{value}*) -% \end{bitsyntax} -% -% 该选项包含许多子项目,用于调整样式。具体内容见下。 -% \end{function} -% -% \begin{function}{style/head} -% \begin{bitsyntax}[emph={[1]head}] -% head = (*\marg{字符串}*) -% \end{bitsyntax} -% -% \textit{此选项一般不需要用户自行修改。} -% -% 页眉文字。 -% \end{function} -% -% \subsubsection{目录选项} -% -% \begin{function}{TOC} -% \begin{bitsyntax}[emph={[1]TOC}] -% TOC = (*\marg{键值列表}*) -% TOC/(*\meta{key}*) = (*\meta{value}*) -% \end{bitsyntax} -% -% 该选项包含许多子项目,用于调整其他选项。具体内容见下。 -% \end{function} -% -% \begin{function}{TOC/abstract,TOC/abstractEn} -% \begin{bitsyntax}[emph={[1]abstract,abstractEn}] -% abstract = (*(true)|false*) -% \end{bitsyntax} -% -% \textit{此选项一般不需要用户自行修改。} -% -% 是否在目录中索引摘要。 -% \end{function} -% -% \begin{function}{TOC/symbols} -% \begin{bitsyntax}[emph={[1]symbols}] -% abstract = (*(true)|false*) -% \end{bitsyntax} -% -% \textit{此选项一般不需要用户自行修改。} -% -% 是否在目录中索引主要符号对照表。 -% \end{function} -% -% \subsubsection{附录选项} -% -% \begin{function}{appendices} -% \begin{bitsyntax}[emph={[1]appendices}] -% appendices = (*\marg{键值列表}*) -% appendices/(*\meta{key}*) = (*\meta{value}*) -% \end{bitsyntax} -% -% 该选项包含许多子项目,用于调整其他选项。具体内容见下。 -% \end{function} -% -% \begin{function}{appendices/chapterLevel} -% \begin{bitsyntax}[emph={[1]chapterLevel}] -% chapterLevel = (*<(false)|true>*) -% \end{bitsyntax} -% -% \textit{此选项一般不需要用户自行修改。} -% -% 开启后,可以使用以「chapter」为顶层的附录格式。 -% -% \begin{latex}[emph={[1]appendices,chapter}] -% \begin{appendices} -% \chapter{附录A 题目} -% (*\meta{附录A 内容}*) -% \chapter{附录B 题目} -% (*\meta{附录B 内容}*) -% \end{appendices} -% \end{latex} -% \end{function} -% -% \begin{function}{appendices/title} -% \begin{bitsyntax}[emph={[1]title}] -% title = (*\meta{字符串}*) -% \end{bitsyntax} -% -% 可以覆盖附录的标题名称,默认为「附录」。 -% \end{function} -% -% \begin{function}{appendices/TOCTitle} -% \begin{bitsyntax}[emph={[1]TOCTitle}] -% TOCTitle = (*\meta{字符串}*) -% \end{bitsyntax} -% -% 可以覆盖附录在目录中的名称,默认为「附录」。 -% \end{function} -% -% \subsubsection{其他配置} -% -% \begin{function}{misc} -% \begin{bitsyntax}[emph={[1]misc}] -% misc = (*\marg{键值列表}*) -% misc/(*\meta{key}*) = (*\meta{value}*) -% \end{bitsyntax} -% -% 该选项包含许多子项目,用于调整其他选项。具体内容见下。 -% \end{function} -% -% \begin{function}{misc/arialFont} -% \begin{bitsyntax}[emph={[1]arialFont}] -% arialFont = (*\marg{字符串}*) -% \end{bitsyntax} -% -% \textit{此选项一般不需要用户自行修改。} -% -% 本科生毕业设计模板(全英文专业)需要设置 Arial 字体。 -% (Windows 和 MacOS 自带,Linux 需要用户自行安装) -% \end{function} -% -% \section{正文编写} -% -% 请注意,请在\env{document} 之内使用以下命令 。 -% -% \subsection{封面及基本信息} -% -% \begin{function}{\MakeCover} -% -% \textit{封面内容会根据模板选项(具体参见节\ref{sec:template-options})中\meta{type=xxx}的值而变化。} -% \textit{封面的下划线效果会受到参数设置中封面选项(具体见节\ref{sec:cover})的影响。} -% -% 绘制封面。 -% -% 在默认配置下,封面中的下划线会自动计算最大宽度。此时,如果用户需要换行,可以通过「//」控制换行。 -% -% 当关闭自动计算下划线宽度后,可以通过\meta{labelMaxWidth=xxx} 与 \meta{valueMaxWidth=xxx}来指定下划线的宽度。一般情况下,我们不建议您这样做。 -% \end{function} -% -% \begin{function}{\MakePaperBack} -% -% 绘制书脊。 -% \end{function} -% -% \begin{function}{\MakeTitle} -% -% 绘制中英文信息页。 -% \end{function} -% -% \begin{function}{\MakeOriginality} -% -% 绘制中英文信息页。 -% \end{function} -% -% \subsection{前置部分} -% -% \begin{function}{\frontmatter} -% -% 声明前置部分开始。 -% -% 此时页码会使用罗马数字进行计数。 -% \end{function} -% -% \begin{function}{abstract} -% \begin{bitsyntax}[emph={[1]abstract}] -% \begin{abstract} -% (*\meta{中文摘要}*) -% \end{abstract} -% \end{bitsyntax} -% \end{function} -% -% \begin{function}{abstractEn} -% \begin{bitsyntax}[emph={[1]abstractEn}] -% \begin{abstractEn} -% (*\meta{英文摘要}*) -% \end{abstractEn} -% \end{bitsyntax} -% -% 摘要。 -% -% 摘要的最后会显示关键词,关键词通过 \cs{BITSetup} 录入。 -% -% \end{function} -% -% \begin{function}{\MakeTOC,\listoffigures,\listoftables} -% -% 绘制目录、插图目录与表格目录。 -% \end{function} -% -% \begin{function}{symbols} -% \begin{bitsyntax}[emph={[1]symbols}] -% \begin{symbols} -% \item[BIT] 北京理工大学的英文缩写 -% \item[\LaTeX] 一个很棒的排版系统 -% \end{symbols} -% \end{bitsyntax} -% -% 主要符号对照表。 -% -% 主要符号对照表类似于一个列表环境,用以添加文章中使用的关键符号与缩略词。 -% -% \end{function} -% -% \begin{function}{addTOC} -% \begin{bitsyntax}[emph={[1]addTOC}] -% addTOC = (*<(true)|false>*) -% \end{bitsyntax} -% -% 主要符号对照表的可选参数。 -% -% 添加主要符号对照表到目录,默认开启。 -% \end{function} -% -% \subsection{正文部分} -% -% \begin{function}{\mainmatter} -% -% 声明正文部分开始。 -% -% 此时页码会使用阿拉伯数字进行计数。 -% \end{function} -% -% \subsubsection{定理类环境} -% \paragraph{默认格式} -% -% \begin{function}{algorithm,theorem,lemma,proposition,corollary,axiom,definition,conjecture,example,case,remark} -% \begin{bitsyntax}[emph={[2]proof}] -% \begin{theorem}[留数定理] -% (*\meta{定理内容}*) -% \end{theorem} -% -% \begin{proof}(*\oarg{小标题}*) -% (*\meta{证明过程}*) -% \end{proof} -% \end{bitsyntax} -% 一系列预定义的数学环境。具体含义见表~\ref{tab:theorem}。 -% \end{function} -% -% \begin{table}[] -% \caption{预定义的数学环境} -% \centering -% \subfloat[][plain样式]{ -% \begin{tabular}{@{}ccccccc@{}} -% \toprule -% \textbf{名称} & algorithm & theorem & lemma & proposition & corollary & axiom \\ \midrule -% \textbf{含义} & 算法 & 定理 & 引理 & 命题 & 推论 & 公理 \\ -% \textbf{样式} & \multicolumn{6}{c}{\textbf{定理2.1.} \textit{定理内容……}} \\ \bottomrule -% \end{tabular} -% } -% -% \subfloat[][definition样式]{ -% \begin{tabular}{@{}ccccc@{}} -% \toprule -% \textbf{名称} & definition & conjecture & example & case \\ \midrule -% \textbf{含义} & 定义 & 猜想 & 例 & 情形 \\ -% \textbf{样式} & \multicolumn{4}{c}{\textbf{定义2.1.} 定义内容……} \\ \bottomrule -% \end{tabular} -% } -% -% \subfloat[][remark样式]{ -% \begin{tabular}{@{}cc@{}} -% \toprule -% \textbf{名称} & remark \\ \midrule -% \textbf{含义} & 注 \\ -% \textbf{样式} & \multicolumn{1}{c}{\textit{注1.} 内容……} \\ \bottomrule -% \end{tabular} -% } -% -% \subfloat[][proof样式]{ -% \begin{tabular}{@{}cc@{}} -% \toprule -% \textbf{名称} & proof \\ \midrule -% \textbf{含义} & 证明 \\ -% \textbf{样式} & \multicolumn{1}{c}{\textit{证明. } 内容…… 「证毕符号」} \\ \bottomrule -% \end{tabular} -% } -% \label{tab:theorem} -% \end{table} -% -% \subsection{后置部分} -% -% \begin{function}{\backmatter} -% -% 声明后置部分开始。 -% -% 会取消章节标题的的编号。 -% -% \end{function} -% -% \begin{function}{conclusion} -% \begin{bitsyntax}[emph={[1]conclusion}] -% \begin{conclusion} -% (*\meta{结论}*) -% \end{conclusion} -% \end{bitsyntax} -% \end{function} -% -% \begin{function}{bibprint} -% \begin{bitsyntax}[emph={[1]bibprint}] -% \begin{bibprint} -% \printbibliography[heading=none] -% \end{bibprint} -% \end{bitsyntax} -% -% 打印参考文献。 -% -% 在使用\BIThesisTemplates{GT}时需要注意,由于研究生学位论文也要求使用国标形式输出「攻读学位期间发表论文与研究成果清单」,因此 bithesis 同样使用 bibtex 管理其文献。而由于 biblatex 的排序是全局的,因此需要使用 \meta{category} 功能来分割出两个不同的类别。 -% -% 因此,请使用下列语句输出参考文献: -% \begin{latex}[emph={[1]bibprint}] -% \begin{bibprint} -% \printbibliography[heading=none,notcategory=mypub,resetnumbers=true] -% \end{bibprint} -% \end{latex} -% \end{function} -% -% \begin{function}{appendices} -% \begin{bitsyntax}[emph={[1]appendices}] -% \begin{appendices} -% \section{附录A题目} -% (*\meta{附录A内容}*) -% \section{附录B题目} -% (*\meta{附录B内容}*) -% \end{appendices} -% \end{bitsyntax} -% -% 附录。 -% \end{function} -% -% \begin{function}{publications} -% \begin{bitsyntax}[emph={[1]publications,addtocategory,printbibliography}] -% \begin{publications} -% \nocite{\meta{引用内容的key}} -% \addtocategory{mypub}{\meta{引用内容的key}} -% \printbibliography[heading=none,category=mypub,resetnumbers=true] -% \end{publications} -% \end{bitsyntax} -% -% 攻读学位期间发表论文与研究成果清单。 -% \end{function} -% -% \begin{function}{acknowledgements} -% \begin{bitsyntax}[emph={[1]acknowledgements}] -% \begin{acknowledgements} -% (*\meta{致谢内容}*) -% \end{acknowledgements} -% \end{bitsyntax} -% -% 致谢。 -% \end{function} -% -% \begin{function}{resume} -% \begin{bitsyntax}[emph={[1]resume}] -% \begin{resume} -% (*\meta{个人简介内容}*) -% \end{resume} -% \end{bitsyntax} -% -% 个人简介。 -% \end{function} -% -% \section{\cls{bitreport} 使用与配置} -% -% 推荐使用\BIThesisRelease (开箱即用)。 -% -% \BIThesisRelease 提供了多种最常用的模板,你可以在 -% \href{https://github.com/BITNP/BIThesis/releases}{主项目的 Releases}中找到它们。 -% -% 使用此文档类的模板有: -% \begin{itemize} -% \item \BIThesisTemplates{UP} -% \item \BIThesisTemplates{LR} -% \end{itemize} -% -% \subsection{最小用例} -% -% \begin{latex} -% \documentclass[]{bitreport} -% \BITSetup{ -% info = { -% author = FKY, -% ...... -% } -% } -% \begin{document} -% \end{document} -% \end{latex} -% -% \subsection{模板选项} -% -% 所谓“模板选项”,指需要在引入文档类的时候指定的选项: -% -% \begin{latex}[deletetexcs={\documentclass},morekeywords={\documentclass}] -% \documentclass(*\oarg{模板选项}*){bithesis} -% \end{latex} -% -% \begin{function}{type} -% \begin{bitsyntax}[emph={[1]type}] -% type = (*<(common)|\mbox{undergraduate_proposal}>*) -% \end{bitsyntax} -% 选择论文类型,它们分别对应: -% \begin{itemize} -% \item \BIThesisTemplates{LR} -% \item \BIThesisTemplates{UP} -% \end{itemize} -% \end{function} -% -% \begin{function}{ctex} -% \begin{bitsyntax}[emph={[1]ctex}] -% ctex = (*传给 ctexbook 的模板选项*) -% \end{bitsyntax} -% -% 该选项用于传入模板选项至 ctexbook。 -% \end{function} -% -% \subsection{参数设置} -% -% \begin{function}{\BITSetup} -% \begin{bitsyntax}[emph={[1]BITSetup}] -% \BITSetup = {(*\oarg{键值对}*)} -% \end{bitsyntax} -% \end{function} -% -% 本模板提供了一系列选项,可由您自行配置。载入文档类之后,以下所有选项均可通过统一的 -% 命令 \cs{BITSetup} 来设置。 -% -% \cs{BITSetup} 的参数是一组由(英文)逗号隔开的选项列表,列表中的选项通常是 \meta{key} = -% \meta{value} 的形式。部分选项的 \meta{value} 可以省略。对于同一项,后面的设置将会覆盖前面的设 -% 置。在下文的说明中,将用粗体表示默认值。 -% -% \cs{BITSetup} 采用 LATEX3 风格的键值设置,支持不同类型以及多种层次的选项设定。键值列 -% 表中,“=”左右的空格不影响设置;但需注意,参数列表中不可以出现空行。 -% 与模板选项相同,布尔型的参数可以省略 \meta{选项} = true 中的“= true”。 -% 另有一些选项包含子选项,如 cover 和 info 等。它们可以按如下两种等价方式来设定: -% -% \begin{latex}[morekeywords={\BITSetup},emph={[1]BITSetup,cover,date,info,title,author}] -% \BITSetup{ -% cover = { -% date = xxxx年x月, -% }, -% info = { -% author = Feng Kaiyu, -% title = A Report Title for Your Experiment, -% } -% } -% \end{latex} -% -% 或者 -% -% \begin{latex}[morekeywords={\BITSetup},emph={[1]BITSetup,cover,date,info,title,author}] -% \BITSetup{ -% cover / date = xxxx年x月, -% info / author = Feng Kaiyu, -% info / title = A Thesis Title for Your Paper, -% } -% \end{latex} -% -% \subsubsection{封面选项} -% -% \begin{function}{cover} -% \begin{bitsyntax}[emph={[1]cover}] -% cover = (*\marg{键值列表}*) -% cover/(*\meta{key}*) = (*\meta{value}*) -% \end{bitsyntax} -% -% 该选项包含许多子项目,用于设置论文格式。具体内容见下。 -% \end{function} -% -% \begin{function}{cover/date} -% \begin{bitsyntax}[emph={[1]date}] -% date = (*\marg{任意字符串}*) -% \end{bitsyntax} -% -% 覆盖封面的日期。 -% \end{function} -% -% \subsubsection{文档基本信息} -% -% \begin{function}{info} -% \begin{bitsyntax}[emph={[1]info}] -% info = (*\marg{键值列表}*) -% info/(*\meta{key}*) = (*\meta{value}*) -% \end{bitsyntax} -% -% 该选项包含许多子项目,用于录入论文信息。具体内容见下。 -% \end{function} -% -% \begin{function}{info/title} -% \begin{bitsyntax}[emph={[1]title}] -% title = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 论文或报告标题。 -% \end{function} -% -% \begin{function}{info/school} -% \begin{bitsyntax}[emph={[1]school}] -% school = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 学院名称。 -% \end{function} -% -% \begin{function}{info/major} -% \begin{bitsyntax}[emph={[1]major}] -% major = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 专业名称。 -% \end{function} -% -% \begin{function}{info/author} -% \begin{bitsyntax}[emph={[1]author}] -% author = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 作者姓名。 -% \end{function} -% -% \begin{function}{info/studentId} -% \begin{bitsyntax}[emph={[1]studentId}] -% studentId = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 学号。 -% \end{function} -% -% \begin{function}{info/supervisor} -% \begin{bitsyntax}[emph={[1]supervisor}] -% supervisor = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 指导教师。 -% \end{function} -% -% \begin{function}{info/externalSupervisor} -% \begin{bitsyntax}[emph={[1]externalSupervisor}] -% externalSupervisor = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 校外指导教师。 -% \end{function} -% -% \begin{function}{info/class} -% \begin{bitsyntax}[emph={[1]class}] -% class = (*\marg{字符串}*) -% \end{bitsyntax} -% -% 班级。 -% \end{function} -% -% \subsubsection{其他选项} -% -% \begin{function}{misc} -% \begin{bitsyntax}[emph={[1]misc}] -% misc = (*\marg{键值列表}*) -% misc/(*\meta{key}*) = (*\meta{value}*) -% \end{bitsyntax} -% -% 该选项包含许多子项目,用于额外的控制。具体内容见下。 -% \end{function} -% -% \begin{function}{misc/reviewTable} -% \begin{bitsyntax}[emph={[1]reviewTable}] -% reviewTable = (*\marg{指向评审表的路径}*) -% \end{bitsyntax} -% -% 用于指定已经填写好的评审表 PDF 文件。 -% \end{function} -% -% \section{致谢} -% \begin{itemize} -% \item 感谢贡献者对 BIThesis 的无私奉献。 -% \item 感谢学校及相关老师对 BIThesis 的支持。 -% \item 感谢清华大学和复旦大学的学位论文模板项目,他们为后来者提供了前进的方向。 -% \end{itemize} -% -% \section{软件许可证} -% -% \begin{itemize} -% \item 北京理工大学校徽校名图片的版权归北京理工大学所有。 -% \item \BIThesisLaTeX 宏包以及相关文档类使用 \LPPL 授权。 -% \item \BIThesisLaTeX 文档及其他附属文件通过 CC0-1.0 授权。 -% \end{itemize} -% \section{实现细节} -% -% \begin{macrocode} -%<*package> -% \end{macrocode} -% -% Identify the internal prefix (\LaTeX3 \pkg{DocStrip} convention). -% \begin{macrocode} -%<@@=bithesis> -% \end{macrocode} -% -% \begin{macrocode} -% -% \end{macrocode} - -% \begin{macrocode} -%<*thesis> -% \end{macrocode} - -% Define Global Variables -% \begin{macrocode} -\int_new:N \g_@@_thesis_type_int -\int_new:N \g_@@_head_zihao_int -\bool_new:N \g_@@_twoside_bool -\bool_new:N \g_@@_thesis_type_english_bool -\bool_new:N \g_@@_blind_mode_bool -\tl_new:N \g_@@_label_divide_char_tl - -% \bool_new:N \l_@@_cover_auto_width_bool -% \bool_set_true:N \l_@@_cover_auto_width_bool -% -% Define tmp Variables -\seq_new:N \l_@@_right_seq -\seq_new:N \l_@@_left_seq - -% helper functions - -\cs_generate_variant:Nn \tl_if_empty:nTF {x} -\cs_generate_variant:Nn \seq_set_split:Nnn {Nnx} - -\cs_new:Npn \@@_same_page: { - \let\clearpage\relax - \let\cleardoublepage\relax -} - -% 是否为研究生学位论文 -\cs_new:Npn \@@_if_graduate:TF #1#2 { - \int_compare:nNnTF {3} < {\g_@@_thesis_type_int} - {#1} - {#2} - } - -% 是否某一特定模板 -\cs_new:Npn \@@_if_thesis_int_type:nTF #1#2#3 {\int_compare:nNnTF {\g_@@_thesis_type_int} = {#1} {#2} {#3}} -\cs_new:Npn \@@_if_thesis_int_type:nT #1#2 {\@@_if_thesis_int_type:nTF {#1} {#2} {}} - -% 是否为英文模板,这里包括全英文专业和研究生模板的英文模式。 -\cs_new:Npn \@@_if_thesis_english:TF #1#2 {\bool_if:nTF {\g_@@_thesis_type_english_bool} {#1} {#2}} -\cs_new:Npn \@@_if_thesis_english:T #1 {\@@_if_thesis_english:TF {#1}{}} - -\cs_new:Npn \@@_if_bachelor_thesis:TF #1#2 {\int_compare:nNnTF {\g_@@_thesis_type_int} < {4} {#1} {#2}} -\cs_new:Npn \@@_if_bachelor_thesis:T #1 {\@@_if_bachelor_thesis:TF {#1} {}} -\cs_new:Npn \@@_if_master_thesis:TF #1#2 {\int_compare:nNnTF {\g_@@_thesis_type_int} = {4} {#1} {#2}} -\cs_new:Npn \@@_if_doctor_thesis:TF #1#2 {\int_compare:nNnTF {\g_@@_thesis_type_int} = {5} {#1} {#2}} - -% Define Consts. -\clist_const:Nn \c_@@_thesis_type_clist - { bachelor, bachelor_translation, bachelor_english, master, docter} - -\cs_new_protected:Npn \@@_define_label:nn #1#2 - { \tl_const:cn { c_@@_label_ #1 _tl } {#2} } - -\cs_new_protected:Npn \@@_define_label_by_thesis_type:nnn #1#2#3 - { - \tl_const:cn { c_@@_ #1 _label_ #2 _tl } {#3} - } - -\cs_new_protected:Npn \@@_define_label:nnn #1#2#3 - { - \tl_const:cn { c_@@_label_ #1 _tl } {#2} - \tl_const:cn { c_@@_label_ #1 _en_tl } {#3} - } - -\cs_new_protected:Npn \@@_define_label_by_thesis_type:nnnn #1#2#3#4 - { - \tl_const:cn { c_@@_ #1 _label_ #2 _tl } {#3} - \tl_const:cn { c_@@_ #1 _label_ #2 _en_tl } {#4} - } - -\clist_map_inline:nn - { - {code} {代码}, - {udc} {UDC分类号:}, - {classification} {中国分类号:}, - {classified_level} {密级}, - {type} {种类}, - } - {\@@_define_label:nn #1} - -% bachelor -\clist_map_inline:nn - { - {title} {本科生毕业设计(论文)}, - {originality} {原创性声明}, - {originality_clause} {本人郑重声明:所呈交的毕业设计(论文),是本人在指导老师的指导下独立进行研究所取得的成果。除文中已经注明引用的内容外,本文不包含任何其他个人或集体已经发表或撰写过的研究成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。\par~特此申明。}, - {authorization} {关于使用授权的声明}, - {authorization_clause} {本人完全了解北京理工大学有关保管、使用毕业设计(论文)的规定,其中包括:\circled{1}~学校有权保管、并向有关部门送交本毕业设计(论文)的原件与复印件;\circled{2}~学校可以采用影印、缩印或其它复制手段复制并保存本毕业设计(论文);\circled{3}~学校可允许本毕业设计(论文)被查阅或借阅;\circled{4}~学校可以学术交流为目的,复制赠送和交换本毕业设计(论文);\circled{5}~学校可以公布本毕业设计(论文)的全部或部分内容。}, - {originality_author_signature} {本人签名:\hspace{40mm}日\hspace{2.5mm}期:\hspace{13mm}年\hspace{8mm}月\hspace{8mm}日}, - {originality_supervisor_signature} {指导老师签名:\hspace{40mm}日\hspace{2.5mm}期:\hspace{13mm}年\hspace{8mm}月\hspace{8mm}日}, - } {\@@_define_label_by_thesis_type:nnn {bachelor} #1} - -% % bachelor english -\clist_map_inline:nn - { - {title} {}, - {originality} {原创性声明~Statement~of~Originality}, - {originality_clause} { - 本人郑重声明:所呈交的毕业设计(论文),是本人在指导老师的指导下独立进行研究所取得的成果。除文中已经注明引用的内容外,本文不包含任何其他个人或集体已经发表或撰写过的研究成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。特此申明。\par - \arialfamily I,\dunderline[-1pt]{1pt}{\makebox[18mm]{}},~solemnly~ - declare:~the~submitted~graduation~design~(thesis),~is~the~research~achievement~completed~independently~by~myself~ - under~the~guidance~of~the~supervisor.~This~article~does~not~contain~ - any~research~published~or~written~by~any~other~individual~or~group,~ - except~as~already~referenced~in~this~paper.~Individuals~and~groups~ - that~have~made~important~contributions~to~the~study~of~this~paper~ - are~clearly~indicated~and~cited~in~the~paper.\par - }, - {authorization} {关于使用授权的声明~State~of~Use~Authorization}, - {authorization_clause} { - 本人完全了解北京理工大学有关保管、使用毕业设计(论文)的规定,其中包括:\circled{1}学校有权保管、并向有关部门送交本毕业设计(论文)的原件与复印件;\circled{2}学校可以采用影印、缩印或其它复制手段复制并保存本毕业设计(论文);\circled{3}学校可允许本毕业设计(论文)被查阅或借阅;\circled{4}学校可以学术交流为目的,复制赠送和交换本毕业设计(论文);\circled{5}学校可以公布本毕业设计(论文)的全部或部分内容。\par - I~fully~understand~the~regulations~on~the~storage,~use~of~graduation~design~(thesis)~in~Beijing~Institute~of~Technology.~Beijing~Institute~of~Technology~has~the~right~to~(1)~keep,~and~to~the~relevant~departments~to~send~the~original~or~copy~of~this~graduation~design~(thesis);~(2)~copy~and~preserve~this~graduation~design~(thesis)~by~photocopying,~miniature~or~other~means~of~reproduction;~(3)~allow~this~graduation~design~(thesis)~to~be~read~or~borrowed;~(4)~for~the~purpose~of~academic~exchange,~copy,~give~and~exchange~this~graduation~design~(thesis);~(5)~publish~all~or~part~of~the~contents~of~this~graduation~design~(thesis).~ - }, - } {\@@_define_label_by_thesis_type:nnn {bachelor_english} #1} - -\cs_new:Npn \smallgap: { - \hspace{0.45ex} -} - -\cs_new:Npn \label_space: { - \@@_if_bachelor_thesis:T { - \quad - } -} - -% graduate -\clist_map_inline:nn - { - {originality} {研究成果声明}, - {originality_clause} {本人郑重声明:所提交的学位论文是我本人在指导教师的指导下进行的研究工作获得的研究成果。尽我所知,文中除特别标注和致谢的地方外,学位论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得北京理工大学或其它教育机构的学位或证书所使用过的材料。与我一同工作的合作者对此研究工作所做的任何贡献均已在学位论文中作了明确的说明并表示了谢意。\par~特此申明。}, - {authorization} {关于学位论文使用权的说明}, - {authorization_clause} {本人完全了解北京理工大学有关保管、使用学位论文的规定,其中包括:\circled{1}~学校有权保管、并向有关部门送交学位论文的原件与复印件;\circled{2}~学校可以采用影印、缩印或其它复制手段复制并保存学位论文;\circled{3}~学校可允许学位论文被查阅或借阅;\circled{4}~学校可以学术交流为目的,复制赠送和交换学位论文;\circled{5}~学校可以公布学位论文的全部或部分内容(保密学位论文在解密后遵守此规定)。}, - {originality_author_signature} {签\qquad 名:\hspace{40mm}日\hspace{2.5mm}期:\hspace{30mm}\quad}, - {originality_supervisor_signature} {指导老师签名:\hspace{40mm}日\hspace{2.5mm}期:\hspace{30mm}\quad}, - } {\@@_define_label_by_thesis_type:nnn {graduate} #1} - -\clist_map_inline:nn - { - {author} {作\quad 者\quad 姓\quad 名} {Candidate~Name}, - {school} {学\quad 院\quad 名\quad 称} {School~or~Department}, - {supervisor} {指\quad 导\quad 教\quad 师} {Faculty~Mentor}, - {chairman} {答辩委员会主席} {Chair,~Thesis~Committee}, - {degree} {申\smallgap: 请\smallgap: 学\smallgap: 位\smallgap: 级\smallgap: 别} {Degree~Applied}, - {major} {学\quad 科\quad 专\quad 业} {Major}, - {institute} {学\smallgap: 位\smallgap: 授\smallgap: 予\smallgap: 单\smallgap: 位} {Degree~by}, - {defense_date} {论\smallgap: 文\smallgap: 答\smallgap: 辩\smallgap: 日\smallgap: 期} {The~Date~of~Defence}, - } {\@@_define_label_by_thesis_type:nnnn {graduate} #1} - -\clist_map_inline:nn - { - {school} {学\qquad 院} {School}, - {major} {专\qquad 业} {Degree}, - {author} {学生姓名} {Author}, - {student_id} {学\qquad 号} {Student~ID}, - {supervisor} {指导教师} {Supervisor}, - {co_supervisor} {校外指导教师} {Co-Supervisor}, - {keywords} {关键词:} {Key~Words:~}, - {toc} {目\label_space: 录} {Table~of~Contents}, - {abstract} {摘\label_space: 要} {Abstract}, - {conclusion} {结\label_space: 论} {Conclusions}, - {appendix} {附\label_space: 录} {Appendices}, - {ack} {致\label_space: 谢} {Acknowledgement}, - {figure} {插\quad 图} {Illustrations}, - {table} {表\quad 格} {Tables}, - {appendix_prefix} {附录} {Appendix}, - {reference} {参考文献} {References}, - {university} {北京理工大学} {Beijing~Institute~of~Technology}, - {publications} {攻读学位期间发表论文与研究成果清单} {Publications~During~Studies}, - % TODO: Not so sure about the translation. - {resume} {作者简介} {}, - {symbols} {主要符号对照表} {}, - } - {\@@_define_label:nnn #1} - -% TODO: \clist_item:Nn -\clist_const:Nn \c_@@_bachelor_thesis_header_clist - {北京理工大学本科生毕业设计(论文), 北京理工大学本科生毕业设计(论文)外文翻译, Beijing~Institute~of~Technology~Bachelor's~Thesis } -\clist_const:Nn \c_@@_bachelor_thesis_cover_title_clist - { - 本科生毕业设计(论文), - 本科生毕业设计(论文)外文翻译, - Beijing\nobreak{~}Institute\nobreak{~}of\nobreak{~}Technology~Bachelor's~Thesis, - } - - -% key-value interface definition. -\keys_define:nn { bithesis } -{ - info .meta:nn = { bithesis / info } {#1}, - misc .meta:nn = { bithesis / misc } {#1}, - cover .meta:nn = { bithesis / cover } {#1}, - style .meta:nn = { bithesis / style } {#1}, - option .meta:nn = { bithesis / option } {#1}, - TOC .meta:nn = { bithesis / TOC } {#1}, - appendices .meta:nn = { bithesis / appendices } {#1}, -} - -\keys_define:nn { bithesis / option } -{ - type .choice:, - type .value_required:n = true, - type .choices:Vn = - \c_@@_thesis_type_clist - { - \int_set_eq:NN \g_@@_thesis_type_int \l_keys_choice_int - \int_case:nn {\l_keys_choice_int} { - % 本科全英文也是英文模板。 - {3} {\bool_set_true:N \g_@@_thesis_type_english_bool} - } - }, - type .initial:n = bachelor, - twoside .bool_gset:N = \g_@@_twoside_bool, - blindPeerReview .bool_gset:N = \g_@@_blind_mode_bool, - ctex .tl_set:N = \l_@@_options_to_ctex_tl, -} - -\keys_define:nn { bithesis / cover } - { - date .tl_set:N = \l_@@_cover_date_tl, - headerImage .tl_set:N = \l_bit_coverheaderimage_tl, - xiheiFont .tl_set:N = \l_@@_cover_xihei_font_path_tl, - xiheiFont .default:n = {STXihei}, - %% cover entry - dilimiter .tl_set:N = \l_@@_cover_dilimiter_tl, - labelAlign .tl_set:N = \l_@@_cover_label_align_tl, - labelAlign .initial:n = {r}, - valueAlign .tl_set:N = \l_@@_cover_value_align_tl, - valueAlign .initial:n = {c}, - labelMaxWidth .dim_set:N = \l_@@_cover_label_max_width_dim, - valueMaxWidth .dim_set:N = \l_@@_cover_value_max_width_dim, - autoWidth .bool_set:N = \l_@@_cover_auto_width_bool, - autoWidth .initial:n = {true}, - underlineThickness .dim_set:N = \l_@@_cover_underline_thickness_dim, - underlineThickness .initial:n = {1pt}, - underlineOffset .dim_set:N = \l_@@_cover_underline_offset_dim, - underlineOffset .initial:n = { -10pt }, - } - -\keys_define:nn { bithesis / info } - { - title .tl_set:N = \l_@@_value_title_tl, - titleEn .tl_set:N = \l_@@_value_title_en_tl, - school .tl_set:N = \l_@@_value_school_tl, - major .tl_set:N = \l_@@_value_major_tl, - author .tl_set:N = \l_@@_value_author_tl, - studentId .tl_set:N = \l_@@_value_student_id_tl, - supervisor .tl_set:N = \l_@@_value_supervisor_tl, - externalSupervisor .tl_set:N = \l_@@_value_external_supervisor_tl, - keywords .tl_set:N = \l_@@_value_keywords_tl, - keywordsEn .tl_set:N = \l_@@_value_keywords_en_tl, - translationTitle .tl_set:N = \l_@@_value_trans_title_tl, - translationOriginTitle .tl_set:N = \l_@@_value_trans_origin_title_tl, - % 中国分类号,研究生学位论文使用 - classification .tl_set:N = \l_@@_value_classification_tl, - % UDC 分类号,研究生学位论文使用 - UDC .tl_set:N = \l_@@_value_udc_tl, - chairman .tl_set:N = \l_@@_value_chairman_tl, - degree .tl_set:N = \l_@@_value_degree_tl, - degreeEn .tl_set:N = \l_@@_value_degree_en_tl, - institute .tl_set:N = \l_@@_value_institute_tl, - institute .initial:n = {\c_@@_label_university_tl}, - defenseDate .tl_set:N = \l_@@_value_defense_date_tl, - authorEn .tl_set:N = \l_@@_value_author_en_tl, - schoolEn .tl_set:N = \l_@@_value_school_en_tl, - supervisorEn .tl_set:N = \l_@@_value_supervisor_en_tl, - chairmanEn .tl_set:N = \l_@@_value_chairman_en_tl, - majorEn .tl_set:N = \l_@@_value_major_en_tl, - instituteEn .tl_set:N = \l_@@_value_institute_en_tl, - instituteEn .initial:n = {\c_@@_label_university_en_tl}, - defenseDateEn .tl_set:N = \l_@@_value_defense_date_en_tl, - classifiedLevel .tl_set:N = \l_@@_value_classified_level_tl, - } - -\keys_define:nn { bithesis / misc } - { - arialFont .tl_set:N = \l_@@_misc_arial_font_path_tl, - } - -\keys_define:nn { bithesis / style } -{ - head .tl_set:N = \l_@@_style_head_tl, - head .initial:n = { - \int_case:nn {\g_@@_thesis_type_int} - { - {1} {北京理工大学本科生毕业设计(论文)} - {2} {北京理工大学本科生毕业设计(论文)外文翻译} - {3} {Beijing~Institute~of~Technology~Bachelor's~Thesis} - {4} {北京理工大学硕士学位论文} - {5} {北京理工大学博士学位论文} - } - }, -} - -\keys_define:nn { bithesis / TOC } -{ - abstract .bool_set:N = \l_@@_add_abstract_to_toc_bool, - abstract .initial:n = {true}, - abstractEn .bool_set:N = \l_@@_add_abstract_en_to_toc_bool, - abstractEn .initial:n = {true}, - symbols .bool_set:N = \l_@@_add_symbols_to_toc_bool, - symbols .initial:n = {true}, -} - -\keys_define:nn { bithesis / appendices } -{ - chapterLevel .bool_set:N = \l_@@_appendices_chapter_level_bool, - title .tl_set:N = \l_@@_appendices_title_tl, - TOCTitle .tl_set:N = \l_@@_appendix_toc_title_tl, -} - -\ProcessKeysOptions { bithesis / option } - -\@@_if_thesis_english:T { - \PassOptionsToClass{scheme=plain}{ctexbook} -} - -\bool_if:NTF \g_@@_twoside_bool {} { - \PassOptionsToClass{oneside,openany}{ctexbook} -} - - -% Any extra option passed by user will be passed to ctexbook. -\DeclareOption*{ - \PassOptionsToClass{\l_@@_options_to_ctex_tl}{ctexbook} -} -% Executes the code for each option. -\ProcessOptions\relax -% Load -\LoadClass[zihao=-4,]{ctexbook} - -\RequirePackage{geometry} -\RequirePackage{xeCJK} -\RequirePackage{titletoc} -\RequirePackage{setspace} -\RequirePackage{graphicx} -\RequirePackage{fancyhdr} -\RequirePackage{pdfpages} -\RequirePackage{setspace} -\RequirePackage{booktabs} -\RequirePackage{multirow} -\RequirePackage{tikz} -\RequirePackage{etoolbox} -\RequirePackage{hyperref} -\RequirePackage{xcolor} -\RequirePackage{caption} -\RequirePackage{array} -\RequirePackage{amsmath} -\RequirePackage{amssymb} -\RequirePackage{amsthm} -\RequirePackage{unicode-math} -\RequirePackage{pdfpages} -\RequirePackage{listings} -\RequirePackage{enumitem} -\RequirePackage{environ} - -% Suppress warning for \hskip by hyperref. -\pdfstringdefDisableCommands{% - \let\quad\empty -} - -\@@_if_graduate:TF { - \int_set:Nn \g_@@_head_zihao_int {5} - \geometry{ - a4paper, - left=2.7cm, - bottom=2.5cm + 7bp, - top=3.5cm + 7bp, - right=2.7cm, - headsep = 3.5cm + 7bp - 2.5cm - 15bp, - headheight = 15 bp, - footskip = 2.5cm + 7bp - 1.8cm, - } -} { - \int_set:Nn \g_@@_head_zihao_int {4} - \geometry{ - a4paper, - left=3cm, - bottom=2.6cm + 7bp, - top=3.5cm + 7bp, - right=2.6cm, - headsep = 3.5cm + 7bp - 2.4cm - 20bp, - headheight = 20 bp, - footskip = 2.6cm + 7bp - 2cm, - } -} - -% One blank line before the figure and after the caption. -\setlength{\intextsep}{2\baselineskip plus 0.2\baselineskip minus 0.2\baselineskip} - -\setromanfont{Times~New~Roman} - -\ctex_at_end_preamble:n { - \@@_if_thesis_english:TF { - \@@_if_thesis_int_type:nT {3} { - % font Arial needed - \newfontfamily\arialfamily{Arial} - } - - } { - \tl_if_blank:VTF \l_@@_cover_xihei_font_path_tl {} - { - \setCJKfamilyfont{xihei}[AutoFakeBold,AutoFakeSlant]{\l_@@_cover_xihei_font_path_tl} - } - } - - \@@_if_thesis_int_type:nT {3} { - \RequirePackage[en-US]{datetime2} - \RequirePackage{indentfirst} - \DTMlangsetup[en-US]{dayyearsep={\space}} - } - - % Define biblatex category if it was imported. - \cs_if_exist:NT \DeclareBibliographyCategory { - \DeclareBibliographyCategory{mypub} - } -} - -\cs_new:Npn \xihei:n #1 { - \xeCJK_family_if_exist:nTF {xihei} { - \CJKfamily{xihei} #1 - }{ - \heiti #1 - } -} - -\cs_new:Npn \l_@@_title_font_cs:n #1 { - \int_compare:nNnTF {\g_@@_thesis_type_int} = {3} - { - \arialfamily #1 - } { - \heiti #1 - } -} - -\cs_new:Npn \l_@@_unnumchapter_style_cs:n #1 { - % 本科全英文、研究生学位论文需要加粗 - \int_compare:nNnTF {\g_@@_thesis_type_int} > {2} - { - \bfseries #1 - } { - \mdseries #1 - } -} - -\cs_set:Npn \arabicHeiti #1 {#1} - -% TODO: custom title -\fancypagestyle{BIThesis}{ - \fancyhf{} - % 定义页眉、页码 - \fancyhead[C]{\zihao{\int_use:N \g_@@_head_zihao_int}\ziju{0.08}\songti{\tl_use:N \l_@@_style_head_tl}} - \fancyfoot[C]{\songti\zihao{5} \thepage} - % 页眉分割线稍微粗一些 - \RenewDocumentCommand \headrulewidth {} {0.6pt} -} - -\ctexset{chapter={ - number = {\arabicHeiti{ \arabic{chapter} }}, - format = { \l_@@_title_font_cs:n \bfseries \centering \zihao{3}}, - nameformat = {}, - titleformat = {}, - aftername = \hspace{9bp}, - pagestyle = BIThesis, - beforeskip = 8bp, - afterskip = 32bp, - fixskip = true, - } -} - -\ctexset{section={ - number = {\arabicHeiti{\thechapter.\hspace{1bp}\arabic{section}}}, - format = {\l_@@_title_font_cs:n \raggedright \bfseries \zihao{4}}, - nameformat = {}, - titleformat = {}, - aftername = \hspace{8bp}, - beforeskip = 20bp plus 1ex minus .2ex, - afterskip = 18bp plus .2ex, - fixskip = true, - } -} - -\ctexset{subsection={ - number = {\arabicHeiti{\thechapter.\hspace{1bp}\arabic{section}.\hspace{1bp}\arabic{subsection}}}, - format = {\l_@@_title_font_cs:n \bfseries \raggedright \zihao{-4}}, - nameformat = {}, - titleformat = {}, - aftername = \hspace{7bp}, - beforeskip = 17bp plus 1ex minus .2ex, - afterskip = 14bp plus .2ex, - fixskip = true, - } -} - -\ctexset{ - secnumdepth = 3, - subsubsection={ - numbering = true, - number = {\arabicHeiti{\arabic{chapter}.\hspace{1bp}\arabic{section}.\hspace{1bp}\arabic{subsection}.\hspace{1bp}\arabic{subsubsection}}}, - format={\l_@@_title_font_cs:n \bfseries \raggedright \zihao{-4}}, - nameformat = {}, - titleformat = {}, - beforeskip=28bp plus 1ex minus .2ex, - afterskip=24bp plus .2ex, - fixskip=true, - } -} - -% TOC -\addtocontents{toc}{\protect\hypersetup{hidelinks}} - -\@@_if_graduate:TF { - % 各章标题,宋体四号 - \titlecontents{chapter}[0pt]{\songti \zihao{4}} - {\thecontentslabel\hspace{\ccwd}}{} - {\hspace{.5em}\titlerule*{.}\contentspage} -} { - \titlecontents{chapter}[0pt]{\songti \zihao{-4}} - {\thecontentslabel\hspace{\ccwd}}{} - {\hspace{.5em}\titlerule*{.}\contentspage} -} -\titlecontents{section}[1\ccwd]{\songti \zihao{-4}} -{\thecontentslabel\hspace{\ccwd}}{} -{\hspace{.5em}\titlerule*{.}\contentspage} -\titlecontents{subsection}[2\ccwd]{\songti \zihao{-4}} -{\thecontentslabel\hspace{\ccwd}}{} -{\hspace{.5em}\titlerule*{.}\contentspage} - -% \bool_new:N \l_@@_add_to_toc_bool -% \bool_set_true:N \l_@@_add_to_toc_bool -% -% \keys_define:nn { bit } -% { -% abstract .meta:nn = { bit / abstract } {#1}, -% abstract_en .meta:nn = { bit / abstract_en } {#1}, -% symbols .meta:nn = { bit / symbols } {#1}, -% appendices .meta:nn = { bit / appendices } {#1}, -% } -% -% \keys_define:nn { bit / abstract } -% { -% addTOC .bool_set:N = \l_@@_add_to_toc_bool, -% } -% -% \keys_define:nn { bit / abstract_en } -% { -% addTOC .bool_set:N = \l_@@_add_to_toc_bool, -% } -% -% \keys_define:nn { bit / symbols } -% { -% addTOC .bool_set:N = \l_@@_add_to_toc_bool, -% } -% -% \keys_define:nn { bit / appendices } -% { -% chapterLevel .bool_set:N = \l_@@_appendices_chapter_level_bool, -% title .tl_set:N = \l_@@_appendices_title_tl, -% TOCTitle .tl_set:N = \l_@@_appendix_toc_title_tl, -% } - -\RenewDocumentCommand \frontmatter {} { - - \int_compare:nNnTF {\g_@@_thesis_type_int} = {3} - { - \pagenumbering{roman} - } { - \pagenumbering{Roman} - } - \ctexset{ - chapter = { - numbering = false, - } - } - \pagestyle{BIThesis} -} - -\RenewDocumentCommand \mainmatter {} { - \cleardoublepage - - \ctexset{ - chapter = { - numbering = true, - } - } - \pagenumbering{arabic} - \pagestyle{BIThesis} - % 正文 22 磅的行距 - \setlength{\parskip}{0em} - \setstretch{1.53} - % 修复脚注出现跨页的问题 - \interfootnotelinepenalty=10000 -} - -\RenewDocumentCommand \backmatter {} { - \setcounter{section}{0} - \setcounter{subsection}{0} - \setcounter{subsubsection}{0} - \ctexset{ - chapter = { - numbering = false, - beforeskip = 18bp, - format = {\l_@@_title_font_cs:n \l_@@_unnumchapter_style_cs:n \centering \zihao{3}}, - afterskip = 26bp, - } - } -} - -\setlength{\abovecaptionskip}{11pt} -\setlength{\belowcaptionskip}{9pt} - -\@@_if_graduate:TF { - \tl_set:Nn \g_@@_label_divide_char_tl {.} -} { - \tl_set:Nn \g_@@_label_divide_char_tl {-} -} - -% figure -\cs_set:Npn \thefigure {\thechapter\g_@@_label_divide_char_tl\arabic{figure}} -\captionsetup[figure]{font=small,labelsep=space} - -% table -\cs_set:Npn \thetable {\thechapter\g_@@_label_divide_char_tl\arabic{table}} -\captionsetup[table]{font=small,labelsep=space,skip=2pt} - -% equation -\cs_set:Npn \theequation {\thechapter\g_@@_label_divide_char_tl\arabic{equation}} - -% code snippet -\cs_set:Npn \thelstlisting {\thechapter\g_@@_label_divide_char_tl\arabic{lstlisting}} -\cs_set:Npn \lstlistingname {\c_@@_label_code_tl} - - -% 调整底层 TeX 排版引擎参数以保证所有段落能够很好地以两端对齐的方式呈现 -\tolerance=1 -\emergencystretch=\maxdimen -\hyphenpenalty=10000 -\hbadness=10000 - -\definecolor{codegreen}{rgb}{0,0.6,0} -\definecolor{codegray}{rgb}{0.5,0.5,0.5} -\definecolor{codepurple}{rgb}{0.58,0,0.82} -\definecolor{backcolour}{rgb}{0.95,0.95,0.92} -\lstdefinestyle{examplestyle}{ - backgroundcolor=\color{backcolour}, - commentstyle=\color{codegreen}, - keywordstyle=\color{magenta}, - numberstyle=\tiny\color{codegray}, - stringstyle=\color{codepurple}, - basicstyle=\ttfamily\footnotesize, - breakatwhitespace=false, - breaklines=true, - captionpos=b, - keepspaces=true, - numbers=left, - numbersep=5pt, - showspaces=false, - showstringspaces=false, - showtabs=false, - tabsize=2 -} -% TODO: optional -\lstset{style=examplestyle} - -% 调整插图目录与表格目录的标题 -\cs_set:Npn \listfigurename {\c_@@_label_figure_tl} -\cs_set:Npn \listtablename {\c_@@_label_table_tl} - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -% 根据 GB 3102.11--93 以及 ISO 80000-2:2009 的规定,数学表达式中 -% 表示变量的拉丁字母和希腊字母均应当使用斜体。 -\unimathsetup{ - math-style = ISO, - bold-style = ISO, -} - -% 预定义用户常用的证明环境 -\theoremstyle{plain} - \newtheorem{algorithm}{算法}[chapter] - \newtheorem{theorem}{定理}[chapter] - \newtheorem{lemma}[theorem]{引理} - \newtheorem{proposition}[theorem]{命题} - \newtheorem{corollary}[theorem]{推论} - \newtheorem{axiom}[theorem]{公理} -\theoremstyle{definition} - \newtheorem{definition}{定义}[chapter] - \newtheorem{conjecture}{猜想}[chapter] - \newtheorem{example}{例}[chapter] - \newtheorem{case}{情形} -\theoremstyle{remark} - \newtheorem{remark}{注} - \renewcommand{\qedsymbol}{\ensuremath{\QED}} - - -% user interface. -\DeclareDocumentCommand \BITSetup { m } - { \keys_set:nn { bithesis } { #1 }} - -\cs_new:Npn \@@_render_cover_entry:nn #1#2 { - \makebox[\l_@@_cover_label_max_width_dim][\l_@@_cover_label_align_tl]{ - \tl_if_blank:VTF #1 {} {#1\l_@@_cover_dilimiter_tl} - } - \hspace{1ex} - \@@_dunderline:nnn{\l_@@_cover_underline_offset_dim}{\l_@@_cover_underline_thickness_dim}{ - \makebox[\l_@@_cover_value_max_width_dim][\l_@@_cover_value_align_tl]{#2} - }\par -} - -% Get text with from #2, then set to #1. -\cs_new:Npn \@@_get_text_width:Nn #1#2 - { - \hbox_set:Nn \l_tmpa_box {#2} - \dim_set:Nn #1 { \box_wd:N \l_tmpa_box } - } -\cs_generate_variant:Nn \@@_get_text_width:Nn { NV } - -% Get max text width from seq #2, then set to #1. -\cs_new:Npn \@@_get_max_text_width:NN #1#2 - { -% 这里用 |group| 确保局部变量不会被污染。 - \group_begin: - \seq_set_eq:NN \l_@@_tmpa_seq #2 - \dim_zero_new:N \l_@@_tmpa_dim - \bool_until_do:nn { \seq_if_empty_p:N \l_@@_tmpa_seq } - { - \seq_pop_left:NN \l_@@_tmpa_seq \l_@@_tmpa_tl - \@@_get_text_width:NV \l_@@_tmpa_dim \l_@@_tmpa_tl - \dim_gset:Nn #1 { \dim_max:nn {#1} { \l_@@_tmpa_dim } } - } - \group_end: - } - -% process label (#1) and value #2 separately -\cs_new:Npn \@@_parse_entry #1 #2 { - \seq_set_split:Nnx \l_@@_tmp_right_seq {//} {#2} - \seq_clear:N \l_@@_tmp_left_seq - \seq_map_inline:Nn \l_@@_tmp_right_seq { - \seq_put_right:Nn \l_@@_tmp_left_seq {} - } - \seq_put_left:Nn \l_@@_tmp_left_seq {#1} - \seq_pop_right:NN \l_@@_tmp_left_seq \g_@@_trashcan_tl -} - -\cs_new:Npn \@@_render_cover_entry:n #1 { - \seq_set_from_clist:NN \l_@@_input_seq #1 - % parse newline // - \seq_map_inline:Nn \l_@@_input_seq { - \@@_parse_entry ##1 - \seq_concat:NNN \l_@@_right_seq \l_@@_right_seq \l_@@_tmp_right_seq - \seq_concat:NNN \l_@@_left_seq \l_@@_left_seq \l_@@_tmp_left_seq - } - - \bool_if:NT \l_@@_cover_auto_width_bool { - \@@_get_max_text_width:NN \l_@@_cover_label_max_width_dim \l_@@_left_seq - \@@_get_max_text_width:NN \l_@@_cover_value_max_width_dim \l_@@_right_seq - } - - - \group_begin: - \bool_until_do:nn { \seq_if_empty_p:N \l_@@_left_seq } - { - \seq_pop_left:NN \l_@@_left_seq \l_@@_tmpa_tl - \seq_pop_left:NN \l_@@_right_seq \l_@@_tmpb_tl - \tl_if_empty:xTF \l_@@_tmpb_tl {} { - \@@_render_cover_entry:nn {\l_@@_tmpa_tl} {\l_@@_tmpb_tl} - } - } - \group_end: -} - -% #1: position -% #2: line_thickness -% #3: token list -\cs_new:Npn \@@_dunderline:nnn #1#2#3 { - {\setbox0=\hbox{#3}\ooalign{\copy0\cr\rule[\dimexpr#1-#2\relax]{\wd0}{#2}}} -} - -\cs_new:Npn \@@_dunderline:nn #1#2 { - \@@_dunderline:nnn {#1} {1pt} {#2} -} - -\cs_new:Npn \@@_dunderline:n #1 { - \@@_dunderline:nnn {-10pt} {1pt} {#1} -} - -\newcommand\dunderline[3][-1pt]{{% - \setbox0=\hbox{#3} - \ooalign{\copy0\cr\rule[\dimexpr#1-#2\relax]{\wd0}{#2}}}} - -\NewEnviron{blindPeerReview}{ - \bool_if:NTF \g_@@_blind_mode_bool {} { - \BODY - } -} - -% 重定义 \tn{cleardoublepage},使得偶数页面在没有内容时也不显示页眉页脚,见 -% \url{https://tex.stackexchange.com/a/1683}。 -\RenewDocumentCommand \cleardoublepage { } - { - \clearpage - \bool_if:NT \g_@@_twoside_bool - { - \int_if_odd:nF \c@page - { \hbox:n { } \thispagestyle { empty } \newpage } - } - } - -\cs_new:Npn \make_graduate_cover: { - \cleardoublepage - \begin{titlepage} - { - \heiti\zihao{5} - \tl_if_blank:VTF \l_@@_value_classified_level_tl {} { - \flushright - \c_@@_label_classified_level_tl:~ - \l_@@_value_classified_level_tl \par - } - } - \centering - \vspace*{65mm} - {\heiti\zihao{-2} \l_@@_value_title_tl} - \vskip 60mm - {\heiti \zihao{-3} \l_@@_value_author_tl} % 黑体 小三 - \vskip 10mm - {\heiti \zihao{-3} \l_@@_cover_date_tl} % 黑体 小三 - \end{titlepage} -} - -\cs_new:Npn \make_paper_back: { - \cleardoublepage - \begin{titlepage} - \vskip 5cm - \begin{center} - \setstretch{1.1} - \begin{minipage}[t][19.7cm]{2em} - \begin{center} - {\heiti\zihao{3}\l_@@_value_title_tl} - \vfill - {\heiti\zihao{3}\l_@@_value_author_tl} - \vfill - {\heiti\zihao{3}\c_@@_label_university_tl} - \end{center} - \end{minipage} - \end{center} - % \vskip 5cm - \end{titlepage} -} - -\cs_new:Npn \@@_make_chinese_title_page: { - \cleardoublepage - \begin{titlepage} - { % - {\heiti \zihao{5} \noindent \c_@@_label_classification_tl} \l_@@_value_classification_tl\\ - {\heiti \zihao{5} \c_@@_label_udc_tl} \l_@@_value_udc_tl - } - \begin{center} - - \vskip \stretch{1} - {\heiti\zihao{-2} \l_@@_value_title_tl} - \vskip \stretch{1} - - % TODO: delete this? - {\fangsong\zihao{4}} - \def\tabcolsep{1pt} - \def\arraystretch{1.5} - - { - \renewcommand{\baselinestretch}{2} - - \tl_if_empty:NT \l_@@_cover_dilimiter_tl { - \tl_set:Nn \l_@@_cover_dilimiter_tl {\qquad} - } - \tl_set:Nn \l_@@_cover_underline_offset_dim {-5pt} - % if not auto width, try override width - \bool_if:NF \l_@@_cover_auto_width_bool { - \dim_compare:nNnT {\l_@@_cover_label_max_width_dim} = {0pt} { - \dim_set:Nn \l_@@_cover_label_max_width_dim {45mm} - } - \dim_compare:nNnT {\l_@@_cover_value_max_width_dim} = {0pt} { - \dim_set:Nn \l_@@_cover_value_max_width_dim {60mm} - } - } - - \clist_set:Nn \l_@@_input_clist { - {\c_@@_graduate_label_author_tl} {\l_@@_value_author_tl}, - {\c_@@_graduate_label_school_tl} {\l_@@_value_school_tl}, - {\c_@@_graduate_label_supervisor_tl} {\l_@@_value_supervisor_tl}, - {\c_@@_graduate_label_chairman_tl} {\l_@@_value_chairman_tl}, - {\c_@@_graduate_label_degree_tl} {\l_@@_value_degree_tl}, - {\c_@@_graduate_label_major_tl} {\l_@@_value_major_tl}, - {\c_@@_graduate_label_institute_tl} {\l_@@_value_institute_tl}, - {\c_@@_graduate_label_defense_date_tl} {\l_@@_value_defense_date_tl}, - } - - \heiti\zihao{-3} - \@@_render_cover_entry:n \l_@@_input_clist - } - \end{center} - \vskip \stretch{0.5} - \end{titlepage} -} - -\cs_new:Npn \@@_make_english_title_page: { - \begin{titlepage} - \begin{center} - - \vspace*{10em} - {\zihao{-2}\textbf{\l_@@_value_title_en_tl}} - % \bfseries - \vskip \stretch{1} - - { - \tl_if_empty:NT \l_@@_cover_dilimiter_tl { - \tl_set:Nn \l_@@_cover_dilimiter_tl {:~} - } - - \tl_set:Nn \l_@@_cover_label_align_tl {l} - \tl_set:Nn \l_@@_cover_underline_offset_dim {-5pt} - - % if not auto width, try override width - \bool_if:NF \l_@@_cover_auto_width_bool { - \dim_compare:nNnT {\l_@@_cover_label_max_width_dim} = {0pt} { - \dim_set:Nn \l_@@_cover_label_max_width_dim {55mm} - } - \dim_compare:nNnT {\l_@@_cover_value_max_width_dim} = {0pt} { - \dim_set:Nn \l_@@_cover_value_max_width_dim {85mm} - } - } - - \clist_set:Nn \l_@@_input_clist { - {\c_@@_graduate_label_author_en_tl} {\l_@@_value_author_en_tl}, - {\c_@@_graduate_label_school_en_tl} {\l_@@_value_school_en_tl}, - {\c_@@_graduate_label_supervisor_en_tl} {\l_@@_value_supervisor_en_tl}, - {\c_@@_graduate_label_chairman_en_tl} {\l_@@_value_chairman_en_tl}, - {\c_@@_graduate_label_degree_en_tl} {\l_@@_value_degree_en_tl}, - {\c_@@_graduate_label_major_en_tl} {\l_@@_value_major_en_tl}, - {\c_@@_graduate_label_institute_en_tl} {\l_@@_value_institute_en_tl}, - {\c_@@_graduate_label_defense_date_en_tl} {\l_@@_value_defense_date_en_tl}, - } - - \zihao{-3} - \@@_render_cover_entry:n \l_@@_input_clist - } - - \end{center} - - \vskip \stretch{0.5} - \end{titlepage} -} - -\DeclareDocumentCommand \MakeCover {} - { - \begin{blindPeerReview} - \group_begin: - - \int_case:nn {\g_@@_thesis_type_int} - { - {1} - { - \begin{titlepage} - \vspace*{16mm} - - \centering - - \tl_if_blank:VTF \l_bit_coverheaderimage_tl {} { - \includegraphics[width=9.87cm]{\l_bit_coverheaderimage_tl}\\ - } - - \vspace*{-3mm} - - \zihao{-0}\textbf{\ziju{0.12}\songti{\c_@@_bachelor_label_title_tl}}\par - - \vspace{16mm} - - \zihao{2}\textbf{\xihei:n \l_@@_value_title_tl}\par - - \vspace{3mm} - - \begin{spacing}{1.2} - \zihao{3}\selectfont{\textbf{\l_@@_value_title_en_tl}}\par - \end{spacing} - - \vspace{15mm} - - - \begin{spacing}{1.8} - \begin{center} - \tl_if_empty:NT \l_@@_cover_dilimiter_tl { - \tl_set:Nn \l_@@_cover_dilimiter_tl {:} - } - % if not auto width, try override width - \bool_if:NF \l_@@_cover_auto_width_bool { - \dim_compare:nNnT {\l_@@_cover_label_max_width_dim} = {0pt} { - \dim_set:Nn \l_@@_cover_label_max_width_dim {35mm} - } - \dim_compare:nNnT {\l_@@_cover_value_max_width_dim} = {0pt} { - \dim_set:Nn \l_@@_cover_value_max_width_dim {78mm} - } - } - - \clist_set:Nn \l_@@_input_clist { - {\c_@@_label_school_tl} {\l_@@_value_school_tl}, - {\c_@@_label_major_tl} {\l_@@_value_major_tl}, - {\c_@@_label_author_tl} {\l_@@_value_author_tl}, - {\c_@@_label_student_id_tl} {\l_@@_value_student_id_tl}, - {\c_@@_label_supervisor_tl} {\l_@@_value_supervisor_tl}, - {\c_@@_label_co_supervisor_tl} {\l_@@_value_external_supervisor_tl}, - } - - \zihao{3} - - \@@_render_cover_entry:n \l_@@_input_clist - - \end{center} - \end{spacing} - - \vspace*{\fill} - \centering - \zihao{3}\ziju{0.5}\songti{ - \tl_if_empty:NTF \l_@@_cover_date_tl { - \today - } { - \l_@@_cover_date_tl - } - } - \end{titlepage} - } - {2} - { - \begin{titlepage} - \centering - - \tl_if_blank:VTF \l_bit_coverheaderimage_tl {} { - \includegraphics[width=6.87cm]{\l_bit_coverheaderimage_tl}\\ - } - - \vspace{1mm} - - \zihao{2}\textbf{\songti{本科生毕业设计(论文)外文翻译}} - - \vspace{8mm} - - { - - \begin{spacing}{1.8} - - \tl_set:Nn \l_@@_cover_dilimiter_tl {\textbf{:}} - \bool_set_false:N \l_@@_cover_auto_width_bool - \dim_set:Nn \l_@@_cover_label_max_width_dim {35mm} - \dim_set:Nn \l_@@_cover_value_max_width_dim {115mm} - - \clist_set:Nn \l_@@_input_clist { - {\zihao{4}\textbf{外文原文题目}} {\l_@@_value_trans_origin_title_tl}, - {\zihao{4}\textbf{中文翻译题目}} {\l_@@_value_trans_title_tl}, - } - - \zihao{-3} - \centering - - \@@_render_cover_entry:n \l_@@_input_clist - - \end{spacing} - - } - - \vspace{14mm} - - \zihao{2}\textbf{\xihei:n \l_@@_value_title_tl}\par - - \vspace{3mm} - - \begin{spacing}{1.2} - \zihao{3}\selectfont{\textbf{\l_@@_value_title_en_tl}}\par - \end{spacing} - - \vspace{19mm} - - \begin{spacing}{1.8} - \tl_if_empty:NT \l_@@_cover_dilimiter_tl { - \tl_set:Nn \l_@@_cover_dilimiter_tl {:} - } - - % if not auto width, try override width - \bool_if:NF \l_@@_cover_auto_width_bool { - \dim_compare:nNnT {\l_@@_cover_label_max_width_dim} = {0pt} { - \dim_set:Nn \l_@@_cover_label_max_width_dim {35mm} - } - \dim_compare:nNnT {\l_@@_cover_value_max_width_dim} = {0pt} { - \dim_set:Nn \l_@@_cover_value_max_width_dim {78mm} - } - } - - \zihao{3} - - \clist_set:Nn \l_@@_input_clist { - {\c_@@_label_school_tl} {\l_@@_value_school_tl}, - {\c_@@_label_major_tl} {\l_@@_value_major_tl}, - {\c_@@_label_author_tl} {\l_@@_value_author_tl}, - {\c_@@_label_student_id_tl} {\l_@@_value_student_id_tl}, - {\c_@@_label_supervisor_tl} {\l_@@_value_supervisor_tl}, - {\c_@@_label_co_supervisor_tl} {\l_@@_value_external_supervisor_tl}, - } - - \@@_render_cover_entry:n \l_@@_input_clist - - \end{spacing} - - \vspace*{\fill} - \end{titlepage} - } - {3} { - \begin{titlepage} - \vspace*{16mm} - - \centering - - \tl_if_blank:VTF \l_bit_coverheaderimage_tl {} { - \includegraphics[width=9.87cm]{\l_bit_coverheaderimage_tl}\\ - } - - \vspace*{-3mm} - - \zihao{1}\textbf{\ziju{0.12}Beijing\nobreak{~}Institute\nobreak{~}of\nobreak{~}Technology~Bachelor's~Thesis}\par - - \vspace{18mm} - - \zihao{2}\textbf{\xihei:n \l_@@_value_title_en_tl}\par - - \vspace{10mm} - - - \begin{spacing}{1.8} - \begin{center} - \tl_if_empty:NT \l_@@_cover_dilimiter_tl { - \tl_set:Nn \l_@@_cover_dilimiter_tl {:} - } - - % if not auto width, try override width - \bool_if:NF \l_@@_cover_auto_width_bool { - \dim_compare:nNnT {\l_@@_cover_label_max_width_dim} = {0pt} { - \dim_set:Nn \l_@@_cover_label_max_width_dim {20mm} - } - \dim_compare:nNnT {\l_@@_cover_value_max_width_dim} = {0pt} { - \dim_set:Nn \l_@@_cover_value_max_width_dim {105mm} - } - } - - \zihao{4} - - \clist_set:Nn \l_@@_input_clist { - {\c_@@_label_school_en_tl} {\l_@@_value_school_tl}, - {\c_@@_label_major_en_tl} {\l_@@_value_major_tl}, - {\c_@@_label_author_en_tl} {\l_@@_value_author_tl}, - {\c_@@_label_student_id_en_tl} {\l_@@_value_student_id_tl}, - {\c_@@_label_supervisor_en_tl} {\l_@@_value_supervisor_tl}, - {\c_@@_label_co_supervisor_en_tl} {\l_@@_value_external_supervisor_tl}, - } - - \@@_render_cover_entry:n \l_@@_input_clist - - \end{center} - \end{spacing} - - \vspace*{\fill} - \centering - \zihao{3}\ziju{0.5}\songti{ - \tl_if_empty:NTF \l_@@_cover_date_tl { - \today - } { - \l_@@_cover_date_tl - } - } - \end{titlepage} - } - {4} { - \make_graduate_cover: - } - {5} { - \make_graduate_cover: - } - } - \group_end: - \end{blindPeerReview} - } - -% 圆形数字编号定义 -\newcommand{\circled}[2][]{\tikz[baseline=(char.base)] - {\node[shape = circle, draw, inner~sep = 1pt] - (char) {\phantom{\ifblank{#1}{#2}{#1}}}; - \node at (char.center) {\makebox[0pt][c]{#2}};}} -\robustify{\circled} - -\cs_new:Npn \@@_graduate_originality: { - \ctexset { - chapter / pagestyle = plain, - } - - \begin{titlepage} - \pagenumbering{gobble} - - % 原创性声明部分 - \begin{center} - \@@_same_page: - \chapter*{\heiti\zihao{3}\c_@@_graduate_label_originality_tl} - \end{center}~\par - - % 本部分字号为小三 - \zihao{4} - \c_@@_graduate_label_originality_clause_tl - - \vspace{17mm} - - \begin{flushright} - \c_@@_graduate_label_originality_author_signature_tl\par - \end{flushright} - - \vspace{16mm} - - % 使用授权声明部分 - \begin{center} - \@@_same_page: - \chapter*{\heiti\zihao{3}\c_@@_graduate_label_authorization_tl} - \end{center}~\par - - \c_@@_graduate_label_authorization_clause_tl - - \vspace*{15mm} - - \begin{flushright} - \begin{spacing}{1.65} - \zihao{4} - % \hspace{5mm}\raisebox{-2ex}{\includegraphics[width=30mm]{example-image}}\hspace{5mm} - \c_@@_graduate_label_originality_author_signature_tl\par - \c_@@_graduate_label_originality_supervisor_signature_tl\par - \end{spacing} - \end{flushright} - \end{titlepage} - \cleardoublepage -} - -\NewDocumentCommand \MakeOriginality {} -{ - \group_begin: - \begin{blindPeerReview} - \int_case:nn {\g_@@_thesis_type_int} - { - {1} - { - \pagestyle{BIThesis} - \pagenumbering{gobble} - - % 原创性声明部分 - \begin{center} - \vspace*{-2bp} - \@@_same_page: - \chapter*{\heiti\zihao{2}\c_@@_bachelor_label_originality_tl} - \end{center}~\par - - % 本部分字号为小三 - \zihao{-3} - \c_@@_bachelor_label_originality_clause_tl - - \vspace{17mm} - - \begin{flushright} - \c_@@_bachelor_label_originality_author_signature_tl\par - \end{flushright} - - \vspace{16mm} - - % 使用授权声明部分 - \begin{center} - \@@_same_page: - \chapter*{\heiti\zihao{2}\c_@@_bachelor_label_authorization_tl} - \end{center}~\par - - \c_@@_bachelor_label_authorization_clause_tl - - \vspace*{3mm} - - \begin{flushright} - \begin{spacing}{1.65} - \zihao{-3} - % \hspace{5mm}\raisebox{-2ex}{\includegraphics[width=30mm]{example-image}}\hspace{5mm} - \c_@@_bachelor_label_originality_author_signature_tl\par - \c_@@_bachelor_label_originality_supervisor_signature_tl\par - \end{spacing} - \end{flushright} - - \newpage - } - {3} { - \setstretch{1.26} - % 原创性声明部分 - \begin{center} - \vspace*{-2bp} - \@@_same_page: - \chapter*{\heiti\zihao{-2}\c_@@_bachelor_english_label_originality_tl} - \end{center}~\par - - % 本部分字号为小三 - \zihao{-4} - \c_@@_bachelor_english_label_originality_clause_tl - - \bigbreak - - Student~(Signature):~\dunderline[-1pt]{1pt}{\makebox[18mm]{}}~Date:\par - - \vspace{6mm} - - % 使用授权声明部分 - \begin{center} - \@@_same_page: - \chapter*{\heiti\zihao{-2}\c_@@_bachelor_english_label_authorization_tl} - \end{center}~\par - - \c_@@_bachelor_english_label_authorization_clause_tl - - \bigbreak - Student~(Signature):~\dunderline[-1pt]{1pt}{\makebox[18mm + 16bp]{}}~\hspace{2mm}Date:\par - Supervisor~(Signature):~\dunderline[-1pt]{1pt}{\makebox[18mm]{}}~\hspace{2mm}Date:\par - } - {4} {\@@_graduate_originality:} - {5} {\@@_graduate_originality:} - } - \end{blindPeerReview} - \group_end: -} - -\NewDocumentCommand \MakePaperBack {} - { - \begin{blindPeerReview} - \make_paper_back: - \end{blindPeerReview} - } - -\NewDocumentCommand \MakeTitle {} - { - \begin{blindPeerReview} - \@@_make_chinese_title_page: - \@@_make_english_title_page: - \end{blindPeerReview} - } - -\DeclareDocumentCommand \MakeTOC {} - { - { - \@@_if_bachelor_thesis:TF { - \renewcommand{\baselinestretch}{1.35} - } { - \renewcommand{\baselinestretch}{1.56} - } - - \@@_if_thesis_english:TF { - \tl_set:Nn \l_@@_toc_title_tl {\c_@@_label_toc_en_tl} - } { - \tl_set:Nn \l_@@_toc_title_tl {\c_@@_label_toc_tl} - } - - % 自定义目录样式 - \cs_set:Npn \contentsname { - \fontsize{16pt}{\baselineskip} - \l_@@_unnumchapter_style_cs:n\l_@@_title_font_cs:n{\l_@@_toc_title_tl} - \vspace{-8pt} - } - - % 制作目录 - \tableofcontents - - % 在本科生全英文模板中,添加「目录」本身到目录中。 - \@@_if_thesis_int_type:nT {3} { - \addcontentsline{toc}{chapter}{\c_@@_label_toc_en_tl} - } - } - } - - % TODO: - \NewDocumentEnvironment {abstract} {} - { - - \cleardoublepage - \setstretch{1.53} - - \@@_if_bachelor_thesis:T { - \begin{center} - \vspace*{-17bp} - \heiti\zihao{-2}\textbf{ - \int_case:nn {\g_@@_thesis_type_int} - { - {1} {\l_@@_value_title_tl} - {2} {\l_@@_value_trans_title_tl} - {3} {\l_@@_value_title_tl} - } - } - \end{center} - - \vspace*{2mm} - } - - \ctexset{ - chapter/numbering = false, - } - - \@@_if_bachelor_thesis:T { - \ctexset{ - chapter/titleformat = {\textmd} - } - } - - { - \@@_same_page: - \bool_if:NTF \l_@@_add_abstract_to_toc_bool { - \chapter{\c_@@_label_abstract_tl} - } { - \chapter*{\c_@@_label_abstract_tl} - } - } - \vspace*{1mm} - \par - } - { - \par - \vspace{4ex}\noindent\textbf{\heiti \c_@@_label_keywords_tl \l_@@_value_keywords_tl}\par - \newpage - } - - \NewDocumentEnvironment {abstractEn} {} - { - \cleardoublepage - \setstretch{1.53} - - \@@_if_bachelor_thesis:T { - \begin{spacing}{0.95} - \centering - \vspace*{-2bp} - - \@@_if_thesis_int_type:nTF {3} { - \arialfamily\zihao{-2}\textbf\l_@@_value_title_en_tl\\ - } { - \heiti\zihao{3}\textbf\l_@@_value_title_en_tl\\ - } - \end{spacing} - \vspace*{10mm} - } - - \ctexset{ - chapter/numbering = false, - } - - \@@_if_bachelor_thesis:TF { - \int_compare:nNnTF {\g_@@_thesis_type_int} = {3} - { - \ctexset{ - chapter = { - titleformat = {\heiti\zihao{3}\centering\textbf}, - } - } - } { - \ctexset{ - chapter = { - titleformat = {\heiti\zihao{-3}\centering\textmd}, - } - } - } - } { - \ctexset { - chapter/titleformat = {\heiti\zihao{3}\centering\textbf} - } - } - - { - \@@_same_page: - \bool_if:nTF {\l_@@_add_abstract_en_to_toc_bool} { - \chapter{\c_@@_label_abstract_en_tl} - } { - \chapter*{\c_@@_label_abstract_en_tl} - } - } - } - { - \par\vspace{3ex}\noindent\textbf{\c_@@_label_keywords_en_tl \l_@@_value_keywords_en_tl} - \newpage - } - -% after \backmatter - \NewDocumentEnvironment {conclusion} {} - { - \ctexset{ - section/number = \arabic{section} - } - - \@@_if_thesis_english:TF { - \chapter{\c_@@_label_conclusion_en_tl} - } { - \chapter{\c_@@_label_conclusion_tl} - } - } - {} - -% after backmatter - \NewDocumentEnvironment {bibprint} {} - { - % 设置参考文献字号为 5 号 - \renewcommand*{\bibfont}{\zihao{5}} - % 设置参考文献各个项目之间的垂直距离为 0 - \setlength{\bibitemsep}{0ex} - \setlength{\bibnamesep}{0ex} - \setlength{\bibinitsep}{0ex} - \@@_if_graduate:TF { - } { - % 「本科生」设置单倍行距 - \renewcommand{\baselinestretch}{1.2} - } - % 设置参考文献顺序标签 `[1]` 与文献内容 `作者. 文献标题...` 的间距 - \setlength{\biblabelsep}{1.7mm} - % 设置参考文献后文缩进为 0(与 Word 模板保持一致) - % See: https://github.com/hushidong/biblatex-gb7714-2015 - % 如何修参考文献表的缩进? - \cs_set:Npn \itemcmd { - \settowidth{\lengthid}{\mkgbnumlabel{\printfield{labelnumber}}} - %%这里是所做的调整,以下两句通过调整\lengthid来调整缩进 - \setlength{\lengthid}{0pt} - \addtolength{\lengthid}{-\biblabelsep} - \setlength{\lengthlw}{\textwidth} - \addtolength{\lengthlw}{-\lengthid} - \addvspace{\bibitemsep}%恢复\bibitemsep的作用 - \hangindent\lengthid - \leavevmode\mkgbnumlabel{\printfield{labelnumber}}% - \hspace{\biblabelsep} - } - \@@_if_thesis_english:TF { - \chapter{\c_@@_label_reference_en_tl} - } { - \chapter{\c_@@_label_reference_tl} - } - } - {} - - % #1: The name that used as chapter title - % #2: The name that used in ToC. - \NewDocumentEnvironment {appendices} {} - { - % Used in chapter, ToC. - \tl_new:N \l_@@_appendix_plain_label_tl - % Used before reference label. - \tl_new:N \l_@@_appendix_default_title_tl - - \@@_if_thesis_english:TF { - \tl_set:Nn \l_@@_appendix_plain_label_tl {\c_@@_label_appendix_prefix_en_tl} - \tl_set:Nn \l_@@_appendix_default_title_tl {\c_@@_label_appendix_en_tl} - } { - \tl_set:Nn \l_@@_appendix_plain_label_tl {\c_@@_label_appendix_prefix_tl} - \tl_set:Nn \l_@@_appendix_default_title_tl {\c_@@_label_appendix_tl} - } - - \bool_if:NTF \l_@@_appendices_chapter_level_bool { - \setcounter{chapter}{0} - \ctexset{ - chapter/numbering = true, - chapter/name = {}, - chapter/number = \l_@@_appendix_plain_label_tl\hspace{1ex}\Alph{chapter}, - section/number = \Alph{chapter}. \arabic{section}, - subsection/number = \Alph{chapter}. \arabic{section}. \arabic{subsection}, - } - - \cs_set:Npn \thechapter { - \Alph{chapter} - } - } { - \ctexset{ - section/number = \l_@@_appendix_plain_label_tl\hspace{1ex}\Alph{section}, - subsection/number = \Alph{section}. \arabic{subsection}, - } - - \cs_set:Npn \thechapter { - \Alph{section} - } - - \tl_if_blank:VTF \l_@@_appendices_title_tl { - \chapter{\l_@@_appendix_default_title_tl} - } { - \chapter*{\l_@@_appendices_title_tl} - \stepcounter{chapter} - \tl_if_blank:VTF \l_@@_appendix_toc_title_tl { - \addcontentsline{toc}{chapter}{\l_@@_appendix_default_title_tl} - } { - \addcontentsline{toc}{chapter}{\l_@@_appendix_toc_title_tl} - } - } - } - } - { - } - - \NewDocumentEnvironment {acknowledgements} {+b} - { - \begin{blindPeerReview} - \ctexset{ - section/number = \arabic{section}, - subsection/number = \arabic{section}. \arabic{subsection}, - } - - \@@_if_thesis_english:TF { - \chapter{\c_@@_label_ack_en_tl} - } { - \chapter{\c_@@_label_ack_tl} - } - #1 - \end{blindPeerReview} - } {} - - \NewDocumentEnvironment {publications} {+b} - { - \begin{blindPeerReview} - % 设置参考文献字号为 5 号 - \renewcommand*{\bibfont}{\zihao{5}} - % 设置参考文献各个项目之间的垂直距离为 0 - \setlength{\bibitemsep}{0ex} - \setlength{\bibnamesep}{0ex} - \setlength{\bibinitsep}{0ex} - % 设置单倍行距 - \renewcommand{\baselinestretch}{1.2} - % 设置参考文献顺序标签 `[1]` 与文献内容 `作者. 文献标题...` 的间距 - \setlength{\biblabelsep}{1.7mm} - % 设置参考文献后文缩进为 0(与 Word 模板保持一致) - % See: https://github.com/hushidong/biblatex-gb7714-2015 - % 如何修参考文献表的缩进? - \cs_set:Npn \itemcmd { - \settowidth{\lengthid}{\mkgbnumlabel{\printfield{labelnumber}}} - %%这里是所做的调整,以下两句通过调整\lengthid来调整缩进 - \setlength{\lengthid}{0pt} - \addtolength{\lengthid}{-\biblabelsep} - \setlength{\lengthlw}{\textwidth} - \addtolength{\lengthlw}{-\lengthid} - \addvspace{\bibitemsep}%恢复\bibitemsep的作用 - \hangindent\lengthid - \leavevmode\mkgbnumlabel{\printfield{labelnumber}}% - \hspace{\biblabelsep} - } - - % ===== 上方定义与「参考文献」部分相同 - \cs_set:Npn \mkbibnamegiven ##1 { - \ifitemannotation{myself}{\textbf{##1}}{##1} - } - - \cs_set:Npn \mkbibnamefamily ##1 { - \ifitemannotation{myself}{\textbf{##1}}{##1} - } - - % Sorting by year, name, type. - \newrefcontext[sorting=ynt] - \chapter{\c_@@_label_publications_tl} - #1 - \end{blindPeerReview} - } - {} - - \NewDocumentEnvironment {resume} {+b} - { - \begin{blindPeerReview} - \chapter{\c_@@_label_resume_tl} - #1 - \end{blindPeerReview} - } - { - } - - \NewDocumentEnvironment {symbols} {} - { - \bool_if:NTF \l_@@_add_symbols_to_toc_bool { - \chapter{\c_@@_label_symbols_tl} - } { - \chapter*{\c_@@_label_symbols_tl} - } - \zihao{-4} - \begin{itemize}[labelwidth=2.5cm,labelsep=0.5cm,leftmargin=3cm,itemindent=0cm,itemsep=0cm] - \cs_set:Npn \makelabel ##1 {##1\hfil} - } - { - \end{itemize} - } -% \end{macrocode} -% \begin{macrocode} -% -% \end{macrocode} - -% \begin{macrocode} -%<*report> -% \end{macrocode} -% -% \begin{macrocode} -% Define global -\int_new:N \g_@@_report_type_int - -% Define Consts. -\clist_const:Nn \c_@@_report_type_clist - { common, undergraduate_proposal} - -% Define tmp Variables -\seq_new:N \l_@@_right_seq -\seq_new:N \l_@@_left_seq - -\PassOptionsToPackage{AutoFakeBold,AutoFakeSlant}{xeCJK} - -\keys_define:nn { bitreport } - { - option .meta:nn = {bitreport / option } {#1}, - cover .meta:nn = { bitreport / cover } {#1}, - info .meta:nn = { bitreport / info } {#1}, - misc .meta:nn = { bitreport / misc } {#1} - } - -\keys_define:nn { bitreport / option } - { - type .choice:, - type .value_required:n = true, - type .choices:Vn = - \c_@@_report_type_clist - { - \int_set_eq:NN \g_@@_report_type_int \l_keys_choice_int - }, - type .initial:n = common, - ctex .tl_set:N = \l_@@_options_to_ctex_tl, - } - - -% Pass every option not explicitly defined to `ctexbeamer`. -\DeclareOption*{ - \PassOptionsToClass{\l_@@_options_to_ctex_tl}{ctexart} -} -% Executes the code for each option. -\ProcessOptions\relax -% Load -\LoadClass[zihao=-4]{ctexart} - -\RequirePackage[a4paper,left=3cm,right=2.4cm,top=2.6cm,bottom=2.38cm,includeheadfoot]{geometry} -\RequirePackage{fancyhdr} -\RequirePackage{setspace} -\RequirePackage{caption} -\RequirePackage{booktabs} -\RequirePackage{pdfpages} - - -\keys_define:nn { bitreport / cover } - { - imagePath .tl_set:N = \l_bit_coverimagepath_tl, - date .tl_set:N = \l_@@_cover_date_tl, - %% cover entry - dilimiter .tl_set:N = \l_@@_cover_dilimiter_tl, - labelAlign .tl_set:N = \l_@@_cover_label_align_tl, - labelAlign .initial:n = {r}, - valueAlign .tl_set:N = \l_@@_cover_value_align_tl, - valueAlign .initial:n = {c}, - labelMaxWidth .dim_set:N = \l_@@_cover_label_max_width_dim, - valueMaxWidth .dim_set:N = \l_@@_cover_value_max_width_dim, - autoWidth .bool_set:N = \l_@@_cover_auto_width_bool, - autoWidth .initial:n = {true}, - underlineThickness .dim_set:N = \l_@@_cover_underline_thickness_dim, - underlineThickness .initial:n = {1pt}, - underlineOffset .dim_set:N = \l_@@_cover_underline_offset_dim, - underlineOffset .initial:n = { -10pt }, - } - -\keys_define:nn { bitreport / info } - { - title .tl_set:N = \l_@@_value_title_tl, - school .tl_set:N = \l_@@_value_school_tl, - major .tl_set:N = \l_@@_value_major_tl, - class .tl_set:N = \l_@@_value_class_tl, - author .tl_set:N = \l_@@_value_author_tl, - supervisor .tl_set:N = \l_@@_value_supervisor_tl, - externalSupervisor .tl_set:N = \l_@@_value_external_supervisor_tl, - studentId .tl_set:N = \l_@@_value_student_id_tl, - } - -\keys_define:nn { bitreport / misc } - { - reviewTable .tl_set:N = \l_bit_reviewtable_tl, - } - -\ProcessKeysOptions { bitreport / option } - -\cs_generate_variant:Nn \tl_if_empty:nTF {x} -\cs_generate_variant:Nn \seq_set_split:Nnn {Nnx} - -% #1: position -% #2: line_thickness -% #3: token list -\cs_new:Npn \@@_dunderline:nnn #1#2#3 { - {\setbox0=\hbox{#3}\ooalign{\copy0\cr\rule[\dimexpr#1-#2\relax]{\wd0}{#2}}} -} - -\cs_new:Npn \@@_render_cover_entry:nn #1#2 { - \makebox[\l_@@_cover_label_max_width_dim][\l_@@_cover_label_align_tl]{ - \tl_if_blank:VTF #1 {} {#1\l_@@_cover_dilimiter_tl} - } - \hspace{1ex} - \@@_dunderline:nnn{\l_@@_cover_underline_offset_dim}{\l_@@_cover_underline_thickness_dim}{ - \makebox[\l_@@_cover_value_max_width_dim][\l_@@_cover_value_align_tl]{#2} - }\par -} - -% Get text with from #2, then set to #1. -\cs_new:Npn \@@_get_text_width:Nn #1#2 - { - \hbox_set:Nn \l_tmpa_box {#2} - \dim_set:Nn #1 { \box_wd:N \l_tmpa_box } - } -\cs_generate_variant:Nn \@@_get_text_width:Nn { NV } - -% Get max text width from seq #2, then set to #1. -\cs_new:Npn \@@_get_max_text_width:NN #1#2 - { -% 这里用 |group| 确保局部变量不会被污染。 - \group_begin: - \seq_set_eq:NN \l_@@_tmpa_seq #2 - \dim_zero_new:N \l_@@_tmpa_dim - \bool_until_do:nn { \seq_if_empty_p:N \l_@@_tmpa_seq } - { - \seq_pop_left:NN \l_@@_tmpa_seq \l_@@_tmpa_tl - \@@_get_text_width:NV \l_@@_tmpa_dim \l_@@_tmpa_tl - \dim_gset:Nn #1 { \dim_max:nn {#1} { \l_@@_tmpa_dim } } - } - \group_end: - } - -% process label (#1) and value #2 separately -\cs_new:Npn \@@_parse_entry #1 #2 { - \seq_set_split:Nnx \l_@@_tmp_right_seq {//} {#2} - \seq_clear:N \l_@@_tmp_left_seq - \seq_map_inline:Nn \l_@@_tmp_right_seq { - \seq_put_right:Nn \l_@@_tmp_left_seq {} - } - \seq_put_left:Nn \l_@@_tmp_left_seq {#1} - \seq_pop_right:NN \l_@@_tmp_left_seq \g_@@_trashcan_tl -} - -\cs_new:Npn \@@_render_cover_entry:n #1 { - \seq_set_from_clist:NN \l_@@_input_seq #1 - % parse newline // - \seq_map_inline:Nn \l_@@_input_seq { - \@@_parse_entry ##1 - \seq_concat:NNN \l_@@_right_seq \l_@@_right_seq \l_@@_tmp_right_seq - \seq_concat:NNN \l_@@_left_seq \l_@@_left_seq \l_@@_tmp_left_seq - } - - \bool_if:NT \l_@@_cover_auto_width_bool { - \@@_get_max_text_width:NN \l_@@_cover_label_max_width_dim \l_@@_left_seq - \@@_get_max_text_width:NN \l_@@_cover_value_max_width_dim \l_@@_right_seq - } - - - \group_begin: - \bool_until_do:nn { \seq_if_empty_p:N \l_@@_left_seq } - { - \seq_pop_left:NN \l_@@_left_seq \l_@@_tmpa_tl - \seq_pop_left:NN \l_@@_right_seq \l_@@_tmpb_tl - \tl_if_empty:xTF \l_@@_tmpb_tl {} { - \@@_render_cover_entry:nn {\l_@@_tmpa_tl} {\l_@@_tmpb_tl} - } - } - \group_end: -} - -\DeclareDocumentCommand \BITSetup { m } - { \keys_set:nn { bitreport } { #1 }} -\DeclareDocumentCommand \MakeCover {} - { - \group_begin: - \int_case:nn {\g_@@_report_type_int} { - {1} { - \begin{titlepage} - \centering - \vspace{23mm} - \tl_if_empty:NF \l_bit_coverimagepath_tl { - \includegraphics[width=.5\textwidth]{\l_bit_coverimagepath_tl}\\ - } - \vspace{10mm} - \heiti\fontsize{24pt}{24pt}\selectfont{\l_@@_value_title_tl}\\ - \vspace{67mm} - \begin{spacing}{2.2} - \songti\zihao{3} - \clist_set:Nn \l_@@_input_clist { - {\textbf{学\qquad 院:}} {\l_@@_value_school_tl}, - {\textbf{专\qquad 业:}} {\l_@@_value_major_tl}, - {\textbf{班\qquad 级:}} {\l_@@_value_class_tl}, - {\textbf{学\qquad 号:}} {\l_@@_value_student_id_tl}, - {\textbf{姓\qquad 名:}} {\l_@@_value_author_tl}, - {\textbf{任课教师:}} {\l_@@_value_supervisor_tl}, - } - - \@@_render_cover_entry:n \l_@@_input_clist - - \end{spacing} - \vspace*{\fill} - \centering - \songti\fontsize{12pt}{12pt}\selectfont{ - \tl_if_empty:NTF \l_@@_cover_date_tl { - \today - } { - \l_@@_cover_date_tl - } - } - \end{titlepage} - } - {2} { - % Main code for \MakeCover - \begin{titlepage} - \topskip=0pt - \vspace*{-16mm} - \centering - \hspace{-6mm}\songti\fontsize{22pt}{22pt}\selectfont{北京理工大学}\par - - \vspace{13mm} - - \hspace{-6mm}\heiti\fontsize{24pt}{24pt}\selectfont{本科生毕业设计(论文)开题报告}\par - - \vspace{53mm} - - \begin{spacing}{2.2} - \songti\zihao{3} - \clist_set:Nn \l_@@_input_clist { - {\textbf{学\qquad 院:}} {\l_@@_value_school_tl}, - {\textbf{专\qquad 业:}} {\l_@@_value_major_tl}, - {\textbf{班\qquad 级:}} {\l_@@_value_class_tl}, - {\textbf{姓\qquad 名:}} {\l_@@_value_author_tl}, - {\textbf{指导教师:}} {\l_@@_value_supervisor_tl}, - {\textbf{校外指导教师:}} {\l_@@_value_external_supervisor_tl}, - } - - \@@_render_cover_entry:n \l_@@_input_clist - - \end{spacing} - - \vspace*{\fill} - - \centering - \hspace{-6mm}\songti\fontsize{12pt}{12pt}\selectfont{\today} - \end{titlepage} - } - } - \group_end: - } - -\DeclareDocumentCommand \MakeReviewTable {} - { - \group_begin: - \begin{titlepage} - \includepdf[pages=-]{\l_bit_reviewtable_tl} - \end{titlepage} - \group_end: - } - -% 定义 caption 字体为楷体 -\DeclareCaptionFont{kaiticaption}{\kaishu \normalsize} - -% 设置图片的 caption 格式 -\renewcommand{\thefigure}{\thesection-\arabic{figure}} -\captionsetup[figure]{font=small,labelsep=space,skip=10bp,labelfont=bf,font=kaiticaption} - -% 设置表格的 caption 格式 -\renewcommand{\thetable}{\thesection-\arabic{table}} -\captionsetup[table]{font=small,labelsep=space,skip=10bp,labelfont=bf,font=kaiticaption} - -% 输出大写数字日期 -\ctexset{today=big} - -% 将西文字体设置为 Times New Roman -\setromanfont{Times~New~Roman} - -%% 将中文楷体设置为 SIMKAI.TTF(如果需要) -% \setCJKfamilyfont{zhkai}{[SIMKAI.TTF]} -% \newcommand*{\kaiti}{\CJKfamily{zhkai}} - -% 设置文档标题深度 -\setcounter{tocdepth}{3} -\setcounter{secnumdepth}{3} - -%% -% 设置一级标题、二级标题格式 -% 一级标题:小三,宋体,加粗,段前段后各半行 -\ctexset{section={ - format={\raggedright \bfseries \songti \zihao{-3}}, - beforeskip = 24bp plus 1ex minus .2ex, - afterskip = 24bp plus .2ex, - fixskip = true, - name = {,.\quad} - } -} -% 二级标题:小四,宋体,加粗,段前段后各半行 -\ctexset{subsection={ - format = {\bfseries \songti \raggedright \zihao{4}}, - beforeskip = 24bp plus 1ex minus .2ex, - afterskip = 24bp plus .2ex, - fixskip = true, - } -} -% 页眉和页脚(页码)的格式设定 -\fancyhf{} -\int_case:nn {\g_@@_report_type_int} { - {1} {\fancyhead[R]{\fontsize{10.5pt}{10.5pt}\selectfont{\l_@@_value_title_tl}}} - {2} {\fancyhead[R]{\fontsize{10.5pt}{10.5pt}\selectfont{北京理工大学本科生毕业设计(论文)开题报告}}} -} -\fancyfoot[R]{\fontsize{9pt}{9pt}\selectfont{\thepage}} -\renewcommand{\headrulewidth}{1pt} -\renewcommand{\footrulewidth}{0pt} - -% 正文开始 -\pagestyle{fancy} -\setcounter{page}{1} - -% 正文 22 磅的行距,段前段后间距为 0 -% \setlength{\parskip}{0em} -\cs_set:Npn \baselinestretch {1.53} -% 正文首行悬挂 1.02cm -% \setlength{\parindent}{1.02cm} -% \end{macrocode} -% -% \begin{macrocode} -% -% \end{macrocode} -% \begin{macrocode} -%<*beamer> -% \end{macrocode} -% -% \begin{macrocode} -% Define our keyvalues -\keys_define:nn { bitbeamer } - { - titlegraphic .tl_set:N = \l_bit_titlegraphic_tl, - framelogo .tl_set:N = \l_bit_framelogo_tl, - } -\ProcessKeysOptions { bitbeamer } - -% Pass every option not explicitly defined to `ctexbeamer`. -\DeclareOption*{ - \PassOptionsToClass{\CurrentOption}{ctexbeamer} -} -% Executes the code for each option. -\ProcessOptions\relax - -% Load -\LoadClass{ctexbeamer} - -\RequirePackage{xeCJKfntef} -\RequirePackage{tikz} - -\usetheme{Madrid} -% 设置主题色 -\colorlet{beamer@blendedblue}{green!40!black} - -\cs_new:Npn \CJKhl:nn #1 #2 - { \CJKsout*[thickness=2.5ex, format=\color{#1}]{#2} } - -% Set header if logo path is provided. -\tl_if_empty:NF \l_bit_titlegraphic_tl { - % BIT Logo - \titlegraphic{ - \includegraphics[width=2cm]{\l_bit_titlegraphic_tl} - } -} - -% Set title logo if logo path is provided. -\tl_if_empty:NF \l_bit_framelogo_tl { - \addtobeamertemplate{frametitle}{}{% - \begin{tikzpicture}[remember~picture,overlay] - \node[anchor=north~east,yshift=2pt] at (current~page.north~east) {\includegraphics[height=0.8cm]{\tl_use:N \l_bit_framelogo_tl}}; - \end{tikzpicture} - } -} - -% Expose command to user. -\cs_new_eq:NN \CJKhl \CJKhl:nn -% \end{macrocode} -% \begin{macrocode} -% -% \end{macrocode} - -% \begin{macrocode} -%<*book> -% \end{macrocode} -% \begin{macrocode} - -% 目前只有本科的模板,但仍旧要为可能预留空间。 -\newif\if@bit@bachelor -\newif\if@bit@docTranslation -\newif\if@bit@master -\newif\if@bit@docter - -\RequirePackage{kvoptions} - -\SetupKeyvalOptions{ - family=BIThesis, - prefix=BIThesis@ -} - -\DeclareStringOption[14pt]{footskip} -\DeclareBoolOption{titleNumberHeiti} -\ProcessKeyvalOptions* - - -\DeclareOption{bachelor}{\@bit@bachelortrue} -\DeclareOption{translation}{\@bit@docTranslationtrue} -\DeclareOption*{\PassOptionsToClass{\CurrentOption}{ctexbook}} - -\ExecuteOptions{bachelor} - -\ProcessOptions\relax - -\PassOptionsToPackage{AutoFakeBold,AutoFakeSlant}{xeCJK} -\LoadClass[UTF8,zihao=-4,oneside,openany]{ctexbook} - -% \RequirePackage[a4paper,left=3cm,right=2.6cm,top=3.5cm,bottom=2.9cm]{geometry} -% 目前 29mm 最接近 Word 排版 -\RequirePackage{xeCJK} -\RequirePackage{titletoc} - % \RequirePackage{fontspec} -\RequirePackage{setspace} -\RequirePackage{graphicx} -\RequirePackage{fancyhdr} -\RequirePackage{pdfpages} -\RequirePackage{setspace} -\RequirePackage{booktabs} -\RequirePackage{multirow} -\RequirePackage{tikz} -\RequirePackage{etoolbox} -\RequirePackage{hyperref} -\RequirePackage{xcolor} -\RequirePackage{caption} -\RequirePackage{array} -\RequirePackage{amsmath} -\RequirePackage{amssymb} -\RequirePackage{pdfpages} -\RequirePackage{listings} - -%\PackageError{zzzz}{Main \BIThesis@footskip hellp}{test} - -% 设置参考文献编译后端为 biber,引用格式为 GB/T7714-2015 格式 -% 参考文献使用宏包见 https://github.com/hushidong/biblatex-gb7714-2015 -\RequirePackage[ - backend=biber, - style=gb7714-2015, - gbalign=gb7714-2015, - gbnamefmt=lowercase, - gbpub=false, - doi=false, - url=false, - eprint=false, - isbn=false, -]{biblatex} - -% 参考文献引用文件位于 misc/ref.bib -\addbibresource{./misc/ref.bib} - -% 西文字体默认为 Times New Roman -\setromanfont{Times New Roman} -% 论文题目字体为华文细黑 -\setCJKfamilyfont{xihei}[AutoFakeBold,AutoFakeSlant]{[STXIHEI.TTF]} % 若希望使用本机字体,也可以用 {STXihei} 来调用 -\newcommand{\xihei}{\CJKfamily{xihei}} - -\ifBIThesis@titleNumberHeiti - \newcommand{\arabicHeiti}[1]{\xeCJKsetup{CJKspace=true}\xeCJKDeclareCharClass{CJK}{`0 -> `9}{\heiti\raisebox{-0.1ex}{#1}}\normalspacedchars{0,1,2,3,4,5,6,7,8,9}\xeCJKsetup{CJKspace=false}} -\else - \newcommand{\arabicHeiti}[1]{#1} -\fi - - - -% 主题页面格式:BIThesis -\fancypagestyle{BIThesis}{ - % 页眉高度 - \setlength{\headheight}{20pt} - % 页码高度(不完美,比规定稍微靠下 2mm) - \setlength{\footskip}{\BIThesis@footskip} - - \fancyhf{} - % 定义页眉、页码 - \fancyhead[C]{\zihao{4}\ziju{0.08}\songti{北京理工大学本科生毕业设计(论文)}} - \fancyfoot[C]{\songti\zihao{5} \thepage} - % 页眉分割线稍微粗一些 - \renewcommand{\headrulewidth}{0.6pt} -} - -\if@bit@docTranslation -% 主题页面格式:BIThesis -\fancypagestyle{BIThesis}{ - % 页眉高度 - \setlength{\headheight}{20pt} - % 页码高度(不完美,比规定稍微靠下 2mm) - \setlength{\footskip}{\BIThesis@footskip} - - \fancyhf{} - % 定义页码 - \fancyfoot[C]{\songti\zihao{5} \thepage} - % 页眉分割线稍微粗一些 - \renewcommand{\headrulewidth}{0.6pt} - - % 定义页眉 - \fancyhead[C]{\zihao{4}\ziju{0.08}\songti{北京理工大学本科生毕业设计(论文)外文翻译}} -} -\fi -% 设置章节格式 -% 一级标题:黑体,三号,加粗;间距:段前 0.5 行,段后 1 行; -\ctexset{chapter={ - name = {第,章}, - number = {\arabicHeiti{ \arabic{chapter} }}, - format = {\heiti \bfseries \centering \zihao{3}}, - aftername = \hspace{9bp}, - pagestyle = BIThesis, - beforeskip = 8bp, - afterskip = 32bp, - fixskip = true, - } -} - -% 二级标题:黑体,四号,加粗;间距:段前 0.5 行,段后 0 行; -\ctexset{section={ - number = {\arabicHeiti{\thechapter.\hspace{1bp}\arabic{section}}}, - format = {\heiti \raggedright \bfseries \zihao{4}}, - aftername = \hspace{8bp}, - beforeskip = 20bp plus 1ex minus .2ex, - afterskip = 18bp plus .2ex, - fixskip = true, - } -} - -% 三级标题:黑体、小四、加粗;间距:段前 0.5 行,段后 0 行; -\ctexset{subsection={ - number = {\arabicHeiti{\thechapter.\hspace{1bp}\arabic{section}.\hspace{1bp}\arabic{subsection}}}, - format = {\heiti \bfseries \raggedright \zihao{-4}}, - aftername = \hspace{7bp}, - beforeskip = 17bp plus 1ex minus .2ex, - afterskip = 14bp plus .2ex, - fixskip = true, - } -} - -% 设置目录样式 -% 添加 PDF 链接 -\addtocontents{toc}{\protect\hypersetup{hidelinks}} - -% 解决「目录」二字的格式问题 -\renewcommand{\contentsname}{ - \fontsize{16pt}{\baselineskip} - \normalfont\heiti{目~~~~录} - \vspace{-8pt} -} -% 定义目录样式 -\titlecontents{chapter}[0pt]{\songti \zihao{-4}} -{\thecontentslabel\hspace{\ccwd}}{} -{\hspace{.5em}\titlerule*{.}\contentspage} -\titlecontents{section}[1\ccwd]{\songti \zihao{-4}} -{\thecontentslabel\hspace{\ccwd}}{} -{\hspace{.5em}\titlerule*{.}\contentspage} -\titlecontents{subsection}[2\ccwd]{\songti \zihao{-4}} -{\thecontentslabel\hspace{\ccwd}}{} -{\hspace{.5em}\titlerule*{.}\contentspage} - -% 前置页面(原创性声明、中英文摘要、目录等) -\renewcommand{\frontmatter}{ - \pagenumbering{Roman} - \pagestyle{BIThesis} -} - -% 正文页面 -\renewcommand{\mainmatter}{ - \pagenumbering{arabic} - \pagestyle{BIThesis} -} - -% 设置 caption 与 figure 之间的距离 -\setlength{\abovecaptionskip}{11pt} -\setlength{\belowcaptionskip}{9pt} - -% 设置图片的 caption 格式 -\renewcommand{\thefigure}{\thechapter-\arabic{figure}} -\captionsetup[figure]{font=small,labelsep=space} - -% 设置 listings 源代码高亮的格式 -\AtBeginDocument{ - \renewcommand{\lstlistingname}{代码} - \renewcommand{\thelstlisting}{\arabic{chapter}-\arabic{lstlisting}} -} - -\definecolor{codegreen}{rgb}{0,0.6,0} -\definecolor{codegray}{rgb}{0.5,0.5,0.5} -\definecolor{codepurple}{rgb}{0.58,0,0.82} -\definecolor{backcolour}{rgb}{0.95,0.95,0.92} -\lstdefinestyle{examplestyle}{ - backgroundcolor=\color{backcolour}, - commentstyle=\color{codegreen}, - keywordstyle=\color{magenta}, - numberstyle=\tiny\color{codegray}, - stringstyle=\color{codepurple}, - basicstyle=\ttfamily\footnotesize, - breakatwhitespace=false, - breaklines=true, - captionpos=b, - keepspaces=true, - numbers=left, - numbersep=5pt, - showspaces=false, - showstringspaces=false, - showtabs=false, - tabsize=2 -} -\lstset{style=examplestyle} - - -% 设置表格的 caption 格式和 caption 与 table 之间的垂直距离 -\renewcommand{\thetable}{\thechapter-\arabic{table}} -\captionsetup[table]{font=small,labelsep=space,skip=2pt} - -% 调整底层 TeX 排版引擎参数以保证所有段落能够很好地以两端对齐的方式呈现 -\tolerance=1 -\emergencystretch=\maxdimen -\hyphenpenalty=10000 -\hbadness=10000 - -% 设置数学公式编号格式 -\renewcommand{\theequation}{\arabic{chapter}-\arabic{equation}} - -\newcommand{\unnumchapter}[1]{ - \chapter*{\vskip 10bp\textmd{#1} \vskip -6bp} - \addcontentsline{toc}{chapter}{#1} - \stepcounter{chapter} -} - - - -% \end{macrocode} -% \begin{macrocode} -% -% \end{macrocode} -% \begin{macrocode} -%<*article> -% \end{macrocode} -% \begin{macrocode} - -\newif\if@bit@labreport -\newif\if@bit@proposalreport - -\DeclareOption{lab-report}{\@bit@labreporttrue\@bit@proposalreportfalse} -\DeclareOption{proposal-report}{\@bit@labreportfalse\@bit@proposalreporttrue} -\DeclareOption*{\PassOptionsToClass{\CurrentOption}{ctexart}} -\ExecuteOptions{lab-report} -\ProcessOptions\relax - -\PassOptionsToPackage{AutoFakeBold,AutoFakeSlant}{xeCJK} -\LoadClass[UTF8,zihao=-4]{ctexart}% - -\if@bit@labreport - \RequirePackage[a4paper,left=3.18cm,right=3.18cm,top=2.54cm,bottom=2.54cm,includeheadfoot]{geometry}% -\else - \RequirePackage[a4paper,left=3cm,right=2.4cm,top=2.6cm,bottom=2.38cm,includeheadfoot]{geometry} -\fi - -\RequirePackage{fontspec}% -\RequirePackage{setspace}% -\RequirePackage{graphicx}% -\RequirePackage{fancyhdr}% -\RequirePackage{pdfpages}% -\RequirePackage{setspace}% -\RequirePackage{booktabs}% -\RequirePackage{multirow}% -\RequirePackage{caption}% - -\if@bit@labreport - \RequirePackage{titlesec}% - \RequirePackage{float}% - \RequirePackage{etoolbox} -\fi - -% 设置参考文献编译后端为 biber,引用格式为 GB/T7714-2015 格式 -% 参考文献使用宏包见 https://github.com/hushidong/biblatex-gb7714-2015 -\RequirePackage[style=gb7714-2015,backend=biber]{biblatex} - -\if@bit@labreport - % 将西文字体设置为 Times New Roman - \setromanfont{Times New Roman}% - - % 设置文档标题深度 - \setcounter{tocdepth}{3}% - \setcounter{secnumdepth}{3}% - - %% - % 设置一级标题、二级标题格式 - \ctexset{section={% - format={\raggedright \bfseries \songti \zihao{-3}},% - name = {,.},% - number = \chinese{section}% - }% - }% - \ctexset{subsection={% - format = {\bfseries \songti \raggedright \zihao{-4}},% - }% - }% - - % 页眉和页脚(页码)的格式设定 - \fancyhf{}% - \fancyhead[L]{\fontsize{10.5pt}{10.5pt}\selectfont\kaishu{\reportName}}% - \fancyfoot[C]{\fontsize{9pt}{9pt}\selectfont\kaishu{\thepage}}% - \renewcommand{\headrulewidth}{0.5pt}% - \renewcommand{\footrulewidth}{0pt}% - - \AtBeginDocument{ - } -\fi - -\if@bit@proposalreport - % 定义 caption 字体为楷体 - \DeclareCaptionFont{kaiticaption}{\kaishu \normalsize} - - % 设置图片的 caption 格式 - \renewcommand{\thefigure}{\thesection-\arabic{figure}} - \captionsetup[figure]{font=small,labelsep=space,skip=10bp,labelfont=bf,font=kaiticaption} - - % 设置表格的 caption 格式 - \renewcommand{\thetable}{\thesection-\arabic{table}} - \captionsetup[table]{font=small,labelsep=space,skip=10bp,labelfont=bf,font=kaiticaption} - - % 输出大写数字日期 - \ctexset{today=big} - - % 将西文字体设置为 Times New Roman - \setromanfont{Times New Roman} - - %% 将中文楷体设置为 SIMKAI.TTF(如果需要) - % \setCJKfamilyfont{zhkai}{[SIMKAI.TTF]} - % \newcommand*{\kaiti}{\CJKfamily{zhkai}} - - % 设置文档标题深度 - \setcounter{tocdepth}{3} - \setcounter{secnumdepth}{3} - - %% - % 设置一级标题、二级标题格式 - % 一级标题:小三,宋体,加粗,段前段后各半行 - \ctexset{section={ - format={\raggedright \bfseries \songti \zihao{-3}}, - beforeskip = 24bp plus 1ex minus .2ex, - afterskip = 24bp plus .2ex, - fixskip = true, - name = {,.\quad} - } - } - % 二级标题:小四,宋体,加粗,段前段后各半行 - \ctexset{subsection={ - format = {\bfseries \songti \raggedright \zihao{4}}, - beforeskip =24bp plus 1ex minus .2ex, - afterskip = 24bp plus .2ex, - fixskip = true, - } - } - % 页眉和页脚(页码)的格式设定 - \fancyhf{} - \fancyhead[R]{\fontsize{10.5pt}{10.5pt}\selectfont{北京理工大学本科生毕业设计(论文)开题报告}} - \fancyfoot[R]{\fontsize{9pt}{9pt}\selectfont{\thepage}} - \renewcommand{\headrulewidth}{1pt} - \renewcommand{\footrulewidth}{0pt} -\fi - - -\AtBeginDocument{ - \if@bit@labreport - \input{misc/cover_v1.tex} - % 正文开始 - \pagestyle{fancy} - \setcounter{page}{1}% - \fi - \if@bit@proposalreport - % 报告封面 - \input{misc/cover.tex} - \fi - -} - -% \end{macrocode} -% -% \begin{macrocode} -% \end{macrocode} -% -% \begin{macrocode} -%
-% \end{macrocode} -% \begin{macrocode} -%<*graduate> -% \end{macrocode} -% \begin{macrocode} - -%% ================================================== -%% BIT-thesis-grd.cls for BIT Thesis -%% modified by yang yating -%% version: 1.4 -%% last update: Mar 25th, 2018 -%% ================================================== - -%% math packages -- conflict with xunicode -\RequirePackage{amsmath,amsthm,amsfonts,amssymb,bm,mathrsfs} -% 直立希腊字母字体 -\RequirePackage{upgreek} - -\DeclareOption*{\PassOptionsToClass{\CurrentOption}{ctexbook}} -\newif\ifBIT@master\BIT@masterfalse -\newif\ifBIT@doctor\BIT@doctorfalse -\newif\ifBIT@istwoside\BIT@istwosidefalse -\DeclareOption{twoside}{\BIT@istwosidetrue} -\DeclareOption{master}{\BIT@mastertrue} -\DeclareOption{doctor}{\BIT@doctortrue} - -\ProcessOptions\relax -\ifBIT@istwoside -\LoadClass[zihao=-4,a4paper,UTF8,space=auto]{ctexbook} -\else -\LoadClass[zihao=-4,a4paper,oneside,openany,UTF8,space=auto]{ctexbook} -\fi - -%% -%% the setup of ctex package -%% -\def\contentsname{目\BITspace 录} -\def\listfigurename{插\BITspace 图} -\def\listtablename{表\BITspace 格} - -%% -%% 封面标题 -%% -\def\BIT@label@major{学~~~~科~~~~专~~~~业} -\def\BIT@label@title{论文题目} -\def\BIT@label@author{作~~~~者~~~~姓~~~~名} -\def\BIT@label@classification{中图分类号:} -\def\BIT@label@confidential{密级} -\def\BIT@label@UDC{UDC\!分类号:} -\def\BIT@label@serialnumber{编号} -\def\BIT@label@thesis{学位论文} -\def\BIT@label@advisor{指~~~~导~~~~教~~~~师} -\def\BIT@label@degree{申~~~~请~~~~学~~~~位} -\def\BIT@label@submitdate{论文提交日期} -\def\BIT@label@defenddate{论~文~答~辩~日~期} -\def\BIT@label@institute{学~~~~院~~~~名~~~~称} -\def\BIT@label@school{学~位~授~予~单~位} -\def\BIT@label@chairman{答辩委员会主席} - -%% -%% 封面内容 -%% - -\def\BIT@value@classification{} -\def\BIT@value@confidential{} -\def\BIT@value@UDC{} -\def\BIT@value@serialnumber{} -\def\BIT@value@school{} -\def\BIT@value@degree{} -\def\BIT@value@title{~~~~~(论~文~题~目)~~~~~} -\def\BIT@value@vtitle{竖排论文题目} -\def\BIT@value@titlemark{\BIT@value@title} -\def\BIT@value@author{(作~者~姓~名)} -\def\BIT@value@advisor{(姓名、专业技术职务、学位)} -\def\BIT@value@advisorinstitute{(单位)} -\def\BIT@value@major{} -\def\BIT@value@studentnumber{} % _ added by wei.jianwen@gmail.com -\def\BIT@value@submitdate{} -\def\BIT@value@defenddate{} -\def\BIT@value@institute{} -\def\BIT@value@chairman{} -\def\BIT@label@statement{} - -%% 设置圆圈的格式 或使用\textcircled -\usepackage{tikz} -\usepackage{etoolbox} -\newcommand{\circled}[2][]{\tikz[baseline=(char.base)] - {\node[shape = circle, draw, inner sep = 1pt] - (char) {\phantom{\ifblank{#1}{#2}{#1}}}; - \node at (char.center) {\makebox[0pt][c]{#2}};}} -\robustify{\circled} - -%% 论文原创性声明 -\def\BIT@label@original{研究成果声明} -\def\BIT@label@authorization{关于学位论文使用权的说明} -\def\BIT@label@authorsign{作者签名:} -\def\BIT@label@Supervisorsign{导师签名:} -\def\BIT@label@originalDate{签字日期:} -\def\BIT@label@originalcontent{\BITspace\BITspace 本人郑重声明:所提交的学位论文是我本人在指导教师的指导下进行的研究工作获得的研究成果。尽我所知,文中除特别标注和致谢的地方外,学位论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得北京理工大学或其它教育机构的学位或证书所使用过的材料。与我一同工作的合作者对此研究工作所做的任何贡献均已在学位论文中作了明确的说明并表示了谢意。\par 特此申明。} -\def\BIT@label@authorizationcontent{\BITspace\BITspace 本人完全了解北京理工大学有关保管、使用学位论文的规定,其中包括:\circled{1} 学校有权保管、并向有关部门送交学位论文的原件与复印件;\circled{2} 学校可以采用影印、缩印或其它复制手段复制并保存学位论文;\circled{3} 学校可允许学位论文被查阅或借阅;\circled{4} 学校可以学术交流为目的,复制赠送和交换学位论文;\circled{5} 学校可以公布学位论文的全部或部分内容(保密学位论文在解密后遵守此规定)。} - -%% -%% 英语封面标题 -%% -\def\BIT@label@englishadvisor{Supervisor:} -\def\BIT@label@englishstatement{Submitted in total fulfilment - of the requirements for the degree of \BIT@value@englishdegree \\ - in \BIT@value@englishmajor} -\def\BIT@label@englishauthor{Candidate Name:} -\def\BIT@label@englishadvisor{Faculty Mentor:} -\def\BIT@label@englishchairman{Chair, Thesis Committee:} -\def\BIT@label@englishinstitute{School or Department:} -\def\BIT@label@englishdegree{Degree Applied:} -\def\BIT@label@englishmajor{Major:} -\def\BIT@label@englishschool{Degree by:} -\def\BIT@label@englishdate{The Date of Defence:} - - -%% -%% 英语封面内容 -%% -\def\BIT@value@englishtitle{(English Title of Thesis)} -\def\BIT@value@englishauthor{(Author Name)} -\def\BIT@value@englishadvisor{(Supervisor Name)} -\def\BIT@value@englishinstitute{(Institute Name)} -\def\BIT@value@englishscholl{(BIT)} -\def\BIT@value@englishchair{(someone)} -\def\BIT@value@englishdate{} -\def\BIT@value@englishdegree{} -\def\BIT@value@englishmajor{} - - - -\def\BIT@label@abstract{摘要} -\def\BIT@label@englishabstract{Abstract} -\def\BIT@label@keywords{关键词:} -\def\BIT@label@englishkeywords{Key Words:~} -\def\BIT@label@conclusion{结论} -\def\BIT@label@appendix{附录} -\def\BIT@label@publications{攻读学位期间发表论文与研究成果清单} -\def\BIT@label@projects{攻读学位期间参与的项目} -\def\BIT@label@resume{作者简介} -\def\BIT@label@reference{参考文献!!!!} -\def\BIT@label@thanks{致谢} -\def\BIT@value@templateversion{v1.2} -%% -%% label in the head 页眉页脚 -%% -\def\BIT@label@headschoolname{北京理工大学硕士学位论文} - -%% 当前模板的版本 -\newcommand{\version}{\BIT@value@templateversion} - -%% ==============引用geometry 宏包设置纸张和页面======================== -% 设置版面:上3.5cm,下2.5cm,左2.7cm,右2.7cm,页眉2.5cm,页脚1.8cm,装订线0cm -\usepackage[% -paper=a4paper,% -top=3.5cm,% 上 3.5cm % -bottom=2.5cm,% 下 2.5cm % -left=2.7cm,% 左 2.7cm % -right=2.7cm,% 右 2.7cm % -headheight=1.0cm,% 页眉 2.5cm % -footskip=0.7cm% 页脚 1.8cm % -]{geometry} % 页面设置 % - -\parskip 0.5ex plus 0.25ex minus 0.25ex -%% Command -- Clear Double Page -\def\cleardoublepage{\clearpage\if@twoside \ifodd\c@page\else - \thispagestyle{empty}% - \hbox{}\newpage\if@twocolumn\hbox{}\newpage\fi\fi\fi} -% 设置行距,大概为22榜 -\RequirePackage{setspace} -\setstretch{1.523} - -%% 设置章节格式, 黑体三号加粗居中,行距22磅,与正文或节标题的间距设定为段后间距1行。章序号与章名间空一格。 -\ctexset{chapter={ - name = {第,章}, - number = {\arabic{chapter}}, - format = {\bfseries \sffamily \centering \zihao{3}}, - pagestyle = {BIT@headings}, - beforeskip = 16 bp, - afterskip = 32 bp, - fixskip = true, - } -} -%% 设置一级章节格式 -% 黑体四号加粗顶左,行距22磅,与上一节的间距为1行,与下面正文或节标题的段间间距为0.5行。序号与题目间空一格。 - -\ctexset{section={ - format={\raggedright \bfseries \sffamily \zihao{4}}, - beforeskip = 28bp plus 1ex minus .2ex, - afterskip = 24bp plus .2ex, - fixskip = true, - } -} - -% 设置二级标题格式 - -% 黑体小四加粗顶左,行距22磅,与上一节的间距为1行,与下面正文或节标题的段间间距为0.5行。序号与题目间空一格。 - -\ctexset{subsection={ - format = {\bfseries \sffamily \raggedright \zihao{-4}}, - beforeskip =28bp plus 1ex minus .2ex, - afterskip = 24bp plus .2ex, - fixskip = true, - } -} - -% 设置三节标题格式 - -\ctexset{subsubsection={ - format={\heiti \raggedright \zihao{-4}}, - beforeskip=28bp plus 1ex minus .2ex, - afterskip=24bp plus .2ex, - fixskip=true, - } -} - -%% 设定目录格式。目录颜色更改黑色 -\addtocontents{toc}{\protect\hypersetup{hidelinks}} -\addtocontents{lot}{\protect\hypersetup{hidelinks}} -\addtocontents{lof}{\protect\hypersetup{hidelinks}} - -\RequirePackage{titletoc} -\titlecontents{chapter}[0pt]{\songti \zihao{4}} - {\bf\thecontentslabel\hspace{\ccwd}}{\bf} - {\hspace{.5em}\titlerule*{.}\contentspage} -\titlecontents{section}[2\ccwd]{\songti \zihao{-4}} - {\thecontentslabel\hspace{\ccwd}}{} - {\hspace{.5em}\titlerule*{.}\contentspage} -\titlecontents{subsection}[4\ccwd]{\songti \zihao{-4}} - {\thecontentslabel\hspace{\ccwd}}{} - {\hspace{.5em}\titlerule*{.}\contentspage} - -\titlecontents{figure}[0pt]{\songti\zihao{-4}} - {\figurename~\thecontentslabel\quad}{\hspace*{-1.5cm}} - {\hspace{.5em}\titlerule*{.}\contentspage} - -\titlecontents{table}[0pt]{\songti\zihao{-4}} - {\tablename~\thecontentslabel\quad}{\hspace*{-1.5cm}} - {\hspace{.5em}\titlerule*{.}\contentspage} - -%% 选择编译 -\RequirePackage{ifthen} - -%% check pdfTeX mode -\RequirePackage{ifpdf} - -%% fancyhdr 页眉页脚控制 -\RequirePackage{fancyhdr} - -% 空 页眉页脚 -\fancypagestyle{BIT@empty}{% - \fancyhf{}} - -% ======正文页眉页脚================= -\fancypagestyle{BIT@headings}{% - \fancyhf{} - \fancyfoot[C]{\songti\zihao{5} \thepage} - \fancyhead[C]{\ifBIT@master\zihao{5}{\songti 北京理工大学硕士学位论文} - \else\zihao{5}{\songti 北京理工大学博士学位论文}\fi} - } - -% ==================================对于openright 选项,必须保证章页右开,且如果前章末页内容须清空其页眉页脚。=================== -\let\BIT@cleardoublepage\cleardoublepage -\newcommand{\BIT@clearemptydoublepage}{% - \clearpage{\pagestyle{BIT@empty}\BIT@cleardoublepage}} -\let\cleardoublepage\BIT@clearemptydoublepage - - % ================修该frontmatter 的页码为大写罗马格式,并调整页面风格=============== -\renewcommand{\frontmatter}{ - \if@openright\cleardoublepage\else\clearpage\fi - \@mainmatterfalse - \pagenumbering{Roman} - \pagestyle{BIT@headings} -} -% =======================修改mainmatter 的页码为阿拉伯格式,并调整页面风格======================== -\renewcommand{\mainmatter}{ - \if@openright\cleardoublepage\else\clearpage\fi - \@mainmattertrue - \pagenumbering{arabic} - \pagestyle{BIT@headings} -} - - -%% 复杂表格 -\RequirePackage{threeparttable} -\RequirePackage{dcolumn} -\RequirePackage{multirow} -\RequirePackage{booktabs} -\newcolumntype{d}[1]{D{.}{.}{#1}}% or D{.}{,}{#1} or D{.}{\cdot}{#1} - - -%% 定义几个常用的数学常量符号 -\newcommand{\me}{\mathrm{e}} % 定义 对数常数e,虚数符号i,j以及微分算子d为直立体。 -\newcommand{\mi}{\mathrm{i}} -\newcommand{\mj}{\mathrm{j}} -\newcommand{\dif}{\,\mathrm{d}} - -\theoremstyle{plain} - \newtheorem{algo}{算法~}[chapter] - \newtheorem{thm}{定理~}[chapter] - \newtheorem{lem}[thm]{引理~} - \newtheorem{prop}[thm]{命题~} - \newtheorem{cor}[thm]{推论~} -\theoremstyle{definition} - \newtheorem{defn}{定义~}[chapter] - \newtheorem{conj}{猜想~}[chapter] - \newtheorem{exmp}{例~}[chapter] - \newtheorem{rem}{注~} - \newtheorem{case}{情形~} -\renewcommand{\proofname}{\bf 证明} - -%% 英文字体使用 Times New Roman -\RequirePackage{xltxtra} % \XeTeX Logo -\setmainfont{Times New Roman} -\setsansfont{Arial} -\setmonofont{Courier New} - - -%% graphics packages -\RequirePackage{graphicx} -%% 并列子图 -\RequirePackage{subfigure} - -\RequirePackage{wrapfig} -%% ===========================设置图表标题选项========================== -\RequirePackage{amsmath} -\RequirePackage{caption} -\DeclareCaptionLabelSeparator{zhspace}{\hspace{1\ccwd}} -\DeclareCaptionFont{fontsize}{\zihao{5}} -\captionsetup{ - font = {fontsize}, - labelsep = zhspace, -} -\captionsetup[table]{ - position = top, - aboveskip = 6bp, - belowskip = 6bp, -} -\numberwithin{table}{chapter} -\captionsetup[figure]{ - position = bottom, - aboveskip = 6bp, - belowskip = 6bp, -} - -%% 如果插入的图片没有指定扩展名,那么依次搜索下面的扩展名所对应的文件 -\DeclareGraphicsExtensions{.pdf,.eps,.png,.jpg,.jpeg} -% ccaption -- bicaption -% \RequirePackage{ccaption} -% \captiondelim{\ } -% \captionnamefont{\songti\zihao{5}} -% \captiontitlefont{\songti\zihao{5}} - -\RequirePackage[ - backend=biber, - style=gb7714-2015, - gbalign=gb7714-2015, - gbnamefmt=lowercase, - gbpub=false, - doi=false, - url=false, - eprint=false, - isbn=false, -]{biblatex} - -% 将浮动参数设为较宽松的值 -\renewcommand{\textfraction}{0.15} -\renewcommand{\topfraction}{0.85} -\renewcommand{\bottomfraction}{0.65} -\renewcommand{\floatpagefraction}{0.60} - - -% 定公式、图、表编号为"3-1"的形式,即分隔符由.变为短杠 -\renewcommand\theequation{\arabic{chapter}.\arabic{equation}} -\renewcommand\thefigure{\arabic{chapter}.\arabic{figure}} -\renewcommand\thetable{\arabic{chapter}.\arabic{table}} - -% 颜色宏包 -\RequirePackage{xcolor} - - -% 中文破折号 -\newcommand{\cndash}{\rule{0.0em}{0pt}\rule[0.35em]{1.4em}{0.05em}\rule{0.2em}{0pt}} - -% listings 源代码显示宏包 -\RequirePackage{listings} -\lstset{tabsize=4, % - frame=shadowbox, % 把代码用带有阴影的框圈起来 - commentstyle=\color{red!50!green!50!blue!50},% 浅灰色的注释 - rulesepcolor=\color{red!20!green!20!blue!20},% 代码块边框为淡青色 - keywordstyle=\color{blue!90}\bfseries, % 代码关键字的颜色为蓝色,粗体 - showstringspaces=false,% 不显示代码字符串中间的空格标记 - stringstyle=\ttfamily, % 代码字符串的特殊格式 - keepspaces=true, % - breakindent=22pt, % - numbers=left,% 左侧显示行号 - stepnumber=1,% - numberstyle=\tiny, % 行号字体用小号 - basicstyle=\footnotesize, % - showspaces=false, % - flexiblecolumns=true, % - breaklines=true, % 对过长的代码自动换行 - postbreak=\mbox{\textcolor{red}{$\hookrightarrow$}\space}, - aboveskip=1em, % 代码块边框 - %% added by http://bbs.ctex.org/viewthread.php?tid=53451 - fontadjust, - captionpos=t, - framextopmargin=2pt,framexbottommargin=2pt,abovecaptionskip=-3pt,belowcaptionskip=3pt, - xleftmargin=4em,xrightmargin=4em, % 设定listing左右的空白 - texcl=true, - % 设定中文冲突,断行,列模式,数学环境输入,listing数字的样式 - extendedchars=false,columns=flexible,mathescape=true - numbersep=-1em -} -\renewcommand{\lstlistingname}{代码} %% 重命名Listings标题头 - -%% hyperref package -\definecolor{navyblue}{RGB}{0,0,128} -\RequirePackage{hyperref} -\hypersetup{ - bookmarksnumbered,% - linktoc=all, - colorlinks=true, - citecolor=navyblue, - filecolor=cyan, - linkcolor=navyblue, - linkbordercolor=navyblue, - urlcolor=navyblue, - plainpages=false,% - pdfstartview=FitH -} - -%% enumerate 列表环境间距调节 -\usepackage{enumitem} -% \setenumerate[1]{itemsep=0pt,partopsep=0pt,parsep=\parskip,topsep=5pt} -% \setitemize[1]{itemsep=0pt,partopsep=0pt,parsep=\parskip,topsep=0pt} -% \setdescription{itemsep=0pt,partopsep=0pt,parsep=\parskip,topsep=5pt} - -% _ BITspace -% \newcommand\BITspace{\protect\CTEX@spaceChar\protect\CTEX@spaceChar} -\newcommand{\BITspace}[1][1]{\hspace{#1\ccwd}} - -\def\BIT@getfileinfo#1 #2 #3\relax#4\relax{% - \def\BITfiledate{#1}% - \def\BITfileversion{#2}% - \def\BITfileinfo{#3}}% -\expandafter\ifx\csname ver@bitmaster-xetex.cls\endcsname\relax - \edef\reserved@a{\csname ver@ctextemp_bitmaster-xetex.cls\endcsname} -\else - \edef\reserved@a{\csname ver@bitmaster-xetex.cls\endcsname} -\fi -\expandafter\BIT@getfileinfo\reserved@a\relax? ? \relax\relax -\def\BIT@underline[#1]#2{% - \underline{\hbox to #1{\hfill#2\hfill}}} -\def\BITunderline{\@ifnextchar[\BIT@underline\underline} - -% 中文标题页的可用命令 -\newcommand\classification[1]{\def\BIT@value@classification{#1}} -\newcommand\studentnumber[1]{\def\BIT@value@studentnumber{#1}} -\newcommand\confidential[1]{\def\BIT@value@confidential{#1}} -\newcommand\UDC[1]{\def\BIT@value@UDC{#1}} -\newcommand\serialnumber[1]{\def\BIT@value@serialnumber{#1}} -\newcommand\school[1]{\def\BIT@value@school{#1}} -\newcommand\degree[1]{\def\BIT@value@degree{#1}} -\renewcommand\title[2][\BIT@value@title]{% - \def\BIT@value@title{#2} - \def\BIT@value@titlemark{\MakeUppercase{#1}}} - -\newcommand\vtitle[1]{\def\BIT@value@vtitle{#1}} -\renewcommand\author[1]{\def\BIT@value@author{#1}} -\newcommand\advisor[1]{\def\BIT@value@advisor{#1}} -\newcommand\advisorinstitute[1]{\def\BIT@value@advisorinstitute{#1}} -\newcommand\major[1]{\def\BIT@value@major{#1}} -\newcommand\submitdate[1]{\def\BIT@value@submitdate{#1}} -\newcommand\defenddate[1]{\def\BIT@value@defenddate{#1}} -\newcommand\institute[1]{\def\BIT@value@institute{#1}} -\newcommand\chairman[1]{\def\BIT@value@chairman{#1}} - -%% 第一页和第二页 -% “绘制”BIT中文标题页 -\renewcommand\maketitle[1]{% - \cleardoublepage - \thispagestyle{empty} - \begin{center} - \vspace*{60mm} - {\heiti\zihao{-2} \BIT@value@title} - \vskip 40mm - {\heiti \zihao{-3} \BIT@value@author} % 黑体 小三 - \vskip 4mm - {\heiti \zihao{-3} \BIT@value@defenddate} % 黑体 小三 - \end{center} - \clearpage - \if@twoside - \thispagestyle{empty} - \cleardoublepage - \fi - } - -\newcommand\makeInfo[1]% - { - \newpage - \cleardoublepage - \thispagestyle{empty} - -% udc ltz -{ % - {\heiti \zihao{5} \noindent \BIT@label@classification} \BIT@value@classification \\ - {\heiti \zihao{5} \BIT@label@UDC} \BIT@value@UDC -} - - \begin{center} - - \vskip \stretch{1} - {\heiti\zihao{-2} \BIT@value@title} - \vskip \stretch{1} - - {\fangsong\zihao{4}} - \def\tabcolsep{1pt} - \def\arraystretch{1.5} - - % 黑体 小三 - {\heiti\zihao{-3} - \begin{tabular}{l p{3mm} c} - \BIT@label@author & &\BITunderline[180pt]{\BIT@value@author} - \\ - \BIT@label@institute & & \BITunderline[180pt]{\BIT@value@institute} - \\ - \BIT@label@advisor & & \BITunderline[180pt]{\BIT@value@advisor} - \\ - \BIT@label@chairman & & \BITunderline[180pt]{\BIT@value@chairman} - \\ - \BIT@label@degree & & \BITunderline[180pt]{\BIT@value@degree} - \\ - \BIT@label@major & & \BITunderline[180pt]{\BIT@value@major} - \\ - \BIT@label@school & & \BITunderline[180pt]{\BIT@value@school} - \\ - \BIT@label@defenddate & & \BITunderline[180pt]{\BIT@value@defenddate} - \end{tabular}} - - \end{center} - - \vskip \stretch{0.5} - \clearpage - \if@twoside - \thispagestyle{empty} - \cleardoublepage - \fi -} - -% English Title Page -% 英文标题页可用命令 -\newcommand\englishtitle[1]{\def\BIT@value@englishtitle{#1}} -\newcommand\englishauthor[1]{\def\BIT@value@englishauthor{#1}} -\newcommand\englishadvisor[1]{\def\BIT@value@englishadvisor{#1}} -\newcommand\englishschool[1]{\def\BIT@value@englishschool{#1}} -\newcommand\englishinstitute[1]{\def\BIT@value@englishinstitute{#1}} -\newcommand\englishdate[1]{\def\BIT@value@englishdate{#1}} -\newcommand\englishdegree[1]{\def\BIT@value@englishdegree{#1}} -\newcommand\englishmajor[1]{\def\BIT@value@englishmajor{#1}} -\newcommand\englishchairman[1]{\def\BIT@value@englishchairman{#1}} - -% "绘制"英文标题页 -\newcommand\makeEnglishInfo[1]{% - \cleardoublepage - \thispagestyle{empty} - - \begin{center} - - - \vspace*{10em} -% 论文题目 Times New Roman 小二 加粗 - {\zihao{-2}\textbf{\BIT@value@englishtitle}} - % \bfseries - \vskip \stretch{1} - -% Times New Roman 小三 - {\zihao{-3} - \begin{tabular}{ll} - \BIT@label@englishauthor & \BITunderline[200pt]{\BIT@value@englishauthor} - \\ - \BIT@label@englishinstitute & \BITunderline[200pt]{\BIT@value@englishinstitute} - \\ - \BIT@label@englishadvisor & \BITunderline[200pt]{\BIT@value@englishadvisor} - \\ - \BIT@label@englishchairman & \BITunderline[200pt]{\BIT@value@englishchairman} - \\ - \BIT@label@englishdegree & \BITunderline[200pt]{\BIT@value@englishdegree} - \\ - \BIT@label@englishmajor & \BITunderline[200pt]{\BIT@value@englishmajor} - \\ - \BIT@label@englishschool & \BITunderline[200pt]{\BIT@value@englishschool} - \\ - \BIT@label@englishdate & \BITunderline[200pt]{\BIT@value@englishdate} - \end{tabular}} - - \end{center} - - \vskip \stretch{0.5} - \clearpage - \if@twoside - \thispagestyle{empty} - \cleardoublepage - \fi -} - -% 绘制树立排放的论文题目和学校名称 - -\newcommand\makeVerticalTitle{ - \cleardoublepage - \thispagestyle{empty} - \vskip 5cm - \begin{center} - \setstretch{1.1} - \begin{minipage}{2em} - \begin{center} - {\heiti\zihao{3}\BIT@value@vtitle} - \vskip 2em - {\heiti\zihao{3}\BIT@value@school} - \end{center} - \end{minipage} - \end{center} - \clearpage - \if@twoside - \thispagestyle{empty} - \cleardoublepage - \fi -} - -% 原创性声明 -\newcommand\makeDeclareOriginal{% - \cleardoublepage - \pdfbookmark[0]{声明}{statement} - \thispagestyle{empty} - \begin{center} - {\bf\zihao{3} \BIT@label@original} - \end{center} - \vskip 10pt - {\zihao{4}\BIT@label@originalcontent} - \vskip 10pt - \hspace{8em}{\zihao{4}\BIT@label@authorsign} \BITunderline[6em]{} \hspace{2em} {\zihao{4}\BIT@label@originalDate} \BITunderline[6em]{} - - \vskip 30mm - - \begin{center} - {\bf\zihao{3} \BIT@label@authorization} - \end{center} - \vskip 10pt - {\zihao{4} \BIT@label@authorizationcontent} - \vskip 40pt - - \hspace{8em}{\zihao{4}\BIT@label@authorsign} \BITunderline[6em]{} \hspace{2em} {\zihao{4}\BIT@label@Supervisorsign} \BITunderline[6em]{} - \vskip 15pt - \hspace{8em}{\zihao{4}\BIT@label@originalDate} \BITunderline[6em]{} \hspace{2em} {\zihao{4}\BIT@label@originalDate} \BITunderline[6em]{} - \clearpage - \if@twoside - \thispagestyle{empty} - \cleardoublepage - \fi - -} - - -% 页眉页脚 -\pagestyle{fancy} -\fancyhf{} -\fancyhead[C]{\songti \zihao{5} \BIT@label@headschoolname} % 奇数页左页眉 -\fancyfoot[C]{\songti \zihao{5} {\thepage}} % 页脚 - - -\fancypagestyle{plain}{% 设置开章页页眉页脚风格(只有页码作为页脚) - \fancyhf{}% - \fancyfoot[C]{\songti \zihao{5} \BIT@label@headschoolname} - \fancyfoot[C]{\songti \zihao{5} ~---~{\thepage}~---~} % 首页页脚格式 -} - - - % 中文摘要 - \newenvironment{abstract} - { - \cleardoublepage - \chapter{\BIT@label@abstract} - } - {} -% 下一页从偶数页开始 - \newcommand\beginatevenpage{ - \clearpage - \if@twoside - \thispagestyle{empty} - \cleardoublepage - \fi - } - % 中文关键词 - \newcommand\keywords[1]{% - \vspace{2ex}\noindent{\bf \BIT@label@keywords} #1} - - % 英文摘要 - \newenvironment{englishabstract} - { - \clearpage - \chapter{\BIT@label@englishabstract} - } - {} - - % 英文摘要 - \newcommand\englishkeywords[1]{% - \vspace{2ex}\noindent{\bf \BIT@label@englishkeywords} #1} - - -% 目录 -\renewcommand\tableofcontents{% - \if@twocolumn - \@restonecoltrue\onecolumn - \else - \@restonecolfalse - \fi - \chapter*{\contentsname}% 目录里显示“目录”,否则\chapter* - \@mkboth{\MakeUppercase\contentsname}{\MakeUppercase\contentsname}% - \pdfbookmark[0]{目录}{bittoc} - \@starttoc{toc}% - \if@restonecol\twocolumn\fi -} - - -% 参考文献环境 -\renewenvironment{thebibliography}[1] - {\zihao{5} - \chapter*{\bibname} - \@mkboth{\MakeUppercase\bibname}{\MakeUppercase\bibname}% - \addcontentsline{toc}{chapter}{参考文献} - \list{\@biblabel{\@arabic\c@enumiv}}% - {\settowidth\labelwidth{\@biblabel{#1}}% - \leftmargin\labelwidth - \advance\leftmargin\labelsep - \setlength{\parsep}{1mm} - \setlength{\labelsep}{0.5em} - \setlength{\itemsep}{0.05pc} - \setlength{\listparindent}{0in} - \setlength{\itemindent}{0in} - \setlength{\rightmargin}{0in} - \@openbib@code - \usecounter{enumiv}% - \let\p@enumiv\@empty - \renewcommand\theenumiv{\@arabic\c@enumiv}}% - \sloppy - \clubpenalty4000 - \@clubpenalty \clubpenalty - \widowpenalty4000% - \sfcode`\.\@m} - {\def\@noitemerr - {\@latex@warning{Empty `thebibliography' environment}}% - \endlist} - - -\newenvironment{publications}[1] - {\chapter{\BIT@label@publications}% - \@mkboth{\MakeUppercase\BIT@label@publications} - {\MakeUppercase\BIT@label@publications}% - \list{\@biblabel{\@arabic\c@enumiv}}% - {\settowidth\labelwidth{\@biblabel{#1}}% - \leftmargin\labelwidth - \advance\leftmargin\labelsep - \setlength{\parsep}{1mm} - \setlength{\labelsep}{0.5em} - \setlength{\itemsep}{0.05pc} - \setlength{\listparindent}{0in} - \setlength{\itemindent}{0in} - \setlength{\rightmargin}{0in} - \@openbib@code - \usecounter{enumiv}% - \let\p@enumiv\@empty - \renewcommand\theenumiv{\@arabic\c@enumiv}}% - \sloppy - \clubpenalty4000 - \@clubpenalty \clubpenalty - \widowpenalty4000% - \sfcode`\.\@m} - {\def\@noitemerr - {\@latex@warning{Empty `publications' environment}}% - \endlist} - - -\newenvironment{projects}[1] - {\chapter{\BIT@label@projects}% - \@mkboth{\MakeUppercase\BIT@label@projects} - {\MakeUppercase\BIT@label@projects}% - \list{\@biblabel{\@arabic\c@enumiv}}% - {\settowidth\labelwidth{\@biblabel{#1}}% - \leftmargin\labelwidth - \advance\leftmargin\labelsep - \@openbib@code - \usecounter{enumiv}% - \let\p@enumiv\@empty - \renewcommand\theenumiv{\@arabic\c@enumiv}}% - \sloppy - \clubpenalty4000 - \@clubpenalty \clubpenalty - \widowpenalty4000% - \sfcode`\.\@m} - {\def\@noitemerr - {\@latex@warning{Empty `projects' environment}}% - \endlist} - - \newenvironment{resume} - {\chapter{\BIT@label@resume}} - {} - -\newenvironment{resumesection}[1] - {{\noindent\normalfont\bfseries #1} - \list{}{\labelwidth\z@ - \leftmargin 2\ccwd} - \item\relax} - {\endlist} - -\newenvironment{resumeli}[1] - {{\noindent\normalfont\bfseries #1} - \list{}{\labelwidth\z@ - \leftmargin 4\ccwd - \itemindent -2\ccwd - \listparindent\itemindent} - \item\relax} - {\endlist} - -\newenvironment{conclusion} - {\chapter*{结论} - \@mkboth{结论}{结论}% - \addcontentsline{toc}{chapter}{结论}} - {} - -\renewenvironment{thanks} - {\chapter{\BIT@label@thanks} - \fangsong - } - {} - -\newenvironment{symbolnote} - {\chapter{\BIT@label@symbolnote} - \fangsong} - {} - - %% ===========================术语===================== - \newcommand{\bit@denotation@name}{主要符号对照表} - \newenvironment{denotation}[1][2.5cm]{ - \chapter{\bit@denotation@name} % no tocline - \noindent\begin{list}{}% - {\vskip-30bp\zihao{-4} - \renewcommand\makelabel[1]{##1\hfil} - \setlength{\labelwidth}{#1} % 标签盒子宽度 - \setlength{\labelsep}{0.5cm} % 标签与列表文本距离 - \setlength{\itemindent}{0cm} % 标签缩进量 - \setlength{\leftmargin}{\labelwidth+\labelsep} % 左边界 - \setlength{\rightmargin}{0cm} - \setlength{\parsep}{0cm} % 段落间距 - \setlength{\itemsep}{0cm} % 标签间距 - \setlength{\listparindent}{0cm} % 段落缩进量 - \setlength{\topsep}{0pt} % 标签与上文的间距 - }}{\end{list}} -% ====增加化学、国际单位宏包 - \RequirePackage[version=4]{mhchem} - \RequirePackage{siunitx} -\setcounter{secnumdepth}{4} % 章节编号深度 (part 对应 -1) -\setcounter{tocdepth}{2} % 目录深度 (part 对应 -1) - -%% End of file `bitmaster-xetex.cls'. - -%% ========================================================= - -% \end{macrocode} -% \begin{macrocode} -% -% \end{macrocode} -% -% \iffalse -%<*dtx-style> -\ProvidesPackage{dtx-style} -\RequirePackage{hypdoc} -\RequirePackage{ifthen} -\RequirePackage{fontspec} -\RequirePackage{amsmath} -\RequirePackage{unicode-math} -\RequirePackage[UTF8,scheme=chinese,heading,sub3section]{ctex} -\RequirePackage[ - top=2.5cm, bottom=2.5cm, - left=5cm, right=2cm, - headsep=3mm]{geometry} -\RequirePackage{graphicx} -\RequirePackage{multirow} -\RequirePackage{wrapfig} -\RequirePackage{hologo} -\RequirePackage{array,longtable,booktabs} -\RequirePackage{listings} -\RequirePackage{fancyhdr} -\RequirePackage[dvipsnames]{xcolor} -\RequirePackage{awesomebox} -% \RequirePackage{etoolbox} -\RequirePackage{dirtree} -\RequirePackage{metalogo} -\RequirePackage[tightLists=false]{markdown} -\RequirePackage{caption} -\RequirePackage{tikz} -\usetikzlibrary{positioning} -\RequirePackage{framed} -\RequirePackage{menukeys} -\RequirePackage{float} -\RequirePackage{subfig} - - % 设置列表无间隔 -\usepackage{enumitem} -\setlist{nosep} - -\markdownSetup{ - renderers = { - link = {\href{#2}{#1}}, - } -} - -\hypersetup{ - pdflang = zh-CN, - pdftitle = {BIThesis:北京理工大学学位论文及报告模板}, - pdfauthor = {冯开宇}, - pdfsubject = {北京理工大学学位论文及报告模板使用说明}, - pdfkeywords = {论文模板; 北京理工大学; 使用说明}, - pdfdisplaydoctitle = true -}% - -\newcommand{\BIThesisLaTeX}{{\BIThesis}北京理工大学学位论文及报告{\LaTeX}模板} -\newcommand{\BIThesisMacroPackage}{{\BIThesis}宏集} -\newcommand{\BIThesisWiki}{{\BIThesis}在线文档} -\newcommand{\BIThesisScaffold}{{\BIThesis}模板} -\newcommand{\BIThesisRelease}{{\BIThesis}模板} -\newcommand{\LPPL}{{\href{https://www.latex-project.org/lppl/lppl-1-3c.txt}{\LaTeX{} Project Public License (1.3.c)}}} -\newcommand{\versionold}{v2.0 BirthdayCake} -\newcommand{\version}{v3 Summer Time} - -\ExplSyntaxOn - -\AtBeginEnvironment { bitsyntax } { - \cs_set:Npn \lparen { \textup { ( } } - \cs_set:Npn \rparen { \textup { ) } } - \char_set_catcode_active:N | - \char_set_catcode_active:N < - \char_set_catcode_active:N ( - \char_set_active_eq:NN | \orbar - \char_set_active_eq:NN < \syntaxopt@aux - \char_set_active_eq:NN ( \defaultval@aux -} - -\NewDocumentCommand \BIThesisTemplates {m} { - \str_case:nn {#1} { - {UT}{本科生毕业论文模板(undergraduate-thesis)} - {UTE}{本科生全英文专业毕业论文模板(undergraduate-thesis-en)} - {GT}{研究生学位论文模板(graduate-thesis)} - {LR}{简易使用报告模板(lab-report)} - {PT}{本科生毕业设计外文翻译模板(paper-translation)} - {PS}{北理工主题的 Beamer 模板(presentation-slide)} - {UP}{本科生毕业设计开题报告(undergraduate-proposal)} - } -} - -% 允许换行的细间距。 -\def\breakablethinspace{\hskip 0.16667em\relax} - - -\DeclareDocumentCommand\kvopt{mm} - {\texttt{#1\breakablethinspace=\breakablethinspace#2}} - -\ExplSyntaxOff - -\ctexset{ - today=big, - abstractname=简介, -} - -\ctexset{section={ - format={\raggedright \bfseries \zihao{-3}}, - name = {第,章} - } -} - -\ctexset{subsection={ - format = {\bfseries \raggedright \zihao{4}} - } -} - - - -\ifthenelse{\equal{\@nameuse{g__ctex_fontset_tl}}{mac}}{ - \setmainfont{Palatino} - \setsansfont[Scale=MatchLowercase]{Helvetica} - \setmonofont[Scale=MatchLowercase]{Menlo} - \xeCJKsetwidth{‘’“”}{1em} -}{ - \setmainfont[ - Extension = .otf, - UprightFont = *-regular, - BoldFont = *-bold, - ItalicFont = *-italic, - BoldItalicFont = *-bolditalic, - ]{texgyrepagella} - \setsansfont[ - Extension = .otf, - UprightFont = *-regular, - BoldFont = *-bold, - ItalicFont = *-italic, - BoldItalicFont = *-bolditalic, - ]{texgyreheros} - \setmonofont[ - Extension = .otf, - UprightFont = *-regular, - BoldFont = *-bold, - ItalicFont = *-italic, - BoldItalicFont = *-bolditalic, - Scale = MatchLowercase, - Ligatures = CommonOff, - ]{texgyrecursor} -} -\unimathsetup{ - math-style=ISO, - bold-style=ISO, -} -\IfFontExistsTF{XITSMath-Regular.otf}{ - \setmathfont[ - Extension = .otf, - BoldFont = XITSMath-Bold, - StylisticSet = 8, - ]{XITSMath-Regular} - \setmathfont[range={cal,bfcal},StylisticSet=1]{XITSMath-Regular.otf} -}{ - \setmathfont[ - Extension = .otf, - BoldFont = *bold, - StylisticSet = 8, - ]{xits-math} - \setmathfont[range={cal,bfcal},StylisticSet=1]{xits-math.otf} -} - -\colorlet{bit@macro}{blue!60!black} -\colorlet{bit@env}{blue!70!black} -\colorlet{bit@option}{purple} -\patchcmd{\PrintMacroName}{\MacroFont}{\MacroFont\bfseries\color{bit@macro}}{}{} -\patchcmd{\PrintDescribeMacro}{\MacroFont}{\MacroFont\bfseries\color{bit@macro}}{}{} -\patchcmd{\PrintDescribeEnv}{\MacroFont}{\MacroFont\bfseries\color{bit@env}}{}{} -\patchcmd{\PrintEnvName}{\MacroFont}{\MacroFont\bfseries\color{bit@env}}{}{} - -\def\DescribeOption{% - \leavevmode\@bsphack\begingroup\MakePrivateLetters% - \Describe@Option} -\def\Describe@Option#1{\endgroup - \marginpar{\raggedleft\PrintDescribeOption{#1}}% - \bit@special@index{option}{#1}\@esphack\ignorespaces} -\def\PrintDescribeOption#1{\strut \MacroFont\bfseries\sffamily\color{bit@option} #1\ } -\def\bit@special@index#1#2{\@bsphack - \begingroup - \HD@target - \let\HDorg@encapchar\encapchar - \edef\encapchar usage{% - \HDorg@encapchar hdclindex{\the\c@HD@hypercount}{usage}% - }% - \index{#2\actualchar{\string\ttfamily\space#2} - (#1)\encapchar usage}% - \index{#1:\levelchar#2\actualchar - {\string\ttfamily\space#2}\encapchar usage}% - \endgroup - \@esphack} - -\lstdefinestyle{lstStyleBase}{% - basicstyle=\small\ttfamily, - aboveskip=\medskipamount, - belowskip=\medskipamount, - lineskip=0pt, - boxpos=c, - showlines=false, - extendedchars=true, - escapeinside = {(*}{*)}, - upquote=true, - tabsize=2, - showtabs=false, - showspaces=false, - showstringspaces=false, - numbers=none, - linewidth=\linewidth, - xleftmargin=4pt, - xrightmargin=0pt, - resetmargins=false, - breaklines=true, - breakatwhitespace=false, - breakindent=0pt, - breakautoindent=true, - columns=flexible, - keepspaces=true, - gobble=4, - framesep=3pt, - rulesep=1pt, - framerule=1pt, - backgroundcolor=\color{gray!5}, - stringstyle=\color{green!40!black!100}, - keywordstyle=\bfseries\color{blue!50!black}, - commentstyle=\slshape\color{black!60}} - -\lstdefinestyle{lstStyleShell}{% - style=lstStyleBase, - frame=l, - rulecolor=\color{purple}, - language=bash, -} - -\lstdefinestyle{lstStyleLaTeX}{% - style=lstStyleBase, - frame=l, - rulecolor=\color{violet}, - language=[LaTeX]TeX, - emphstyle=[1]\color{teal}, -} - -\lstdefinestyle{lstStyleSyntax}{% - style=lstStyleBase, - frame=l, - rulecolor=\color{violet}, - language=[LaTeX]TeX, - emphstyle=[1]\color{teal}, -} - -\lstnewenvironment{latex}[1][]{\lstset{style=lstStyleLaTeX, #1}}{} -\lstnewenvironment{shell}{\lstset{style=lstStyleShell}}{} -\lstnewenvironment{bitsyntax}[1][]{\lstset{style=lstStyleSyntax, #1}}{} - -\def\orbar{\textup{\textbar}} -\def\syntaxopt#1{\textit{#1}} -\def\defaultval#1{\textbf{\textup{#1}}} -\def\syntaxopt@aux#1>{\syntaxopt{#1}} -\def\defaultval@aux#1){\defaultval{#1}} - - -\setlist{nosep} - -\DeclareDocumentCommand{\option}{m}{\textsf{#1}} -\DeclareDocumentCommand{\env}{m}{\texttt{#1}} -\newcommand{\myentry}[1]{% - \marginpar{\raggedleft\color{purple}\bfseries\strut #1}} -\newcommand{\note}[2][Note]{{% - \color{magenta}{\bfseries #1}\emph{#2}}} - -\DeclareDocumentCommand{\githubuser}{m}{\href{https://github.com/#1}{@#1}} - - - % 设置 caption 与 figure 之间的距离 -\setlength{\abovecaptionskip}{11pt} -\setlength{\belowcaptionskip}{9pt} - - % 设置图片的 caption 格式 -\renewcommand{\thefigure}{\thesection-\arabic{figure}} -\captionsetup[figure]{font=small,labelsep=space} - - % 设置表格的 caption 与 table 之间的垂直距离 -\captionsetup[table]{skip=2pt} - - % 设置表格的 caption 格式 -\renewcommand{\thetable}{\thesection-\arabic{table}} -\captionsetup[table]{font=small,labelsep=space} - - % 定义 BIThesis \LaTeX 风格的 Logo -\usepackage{relsize} -\makeatletter -\def\matex@ssize{\larger[-1]\scshape} -\DeclareRobustCommand{\BIThesis}{ - \mbox{ - \kern-0.5em{B}\kern-0.05em - {I}\kern-0.05em - {T}\kern-0.1em - \raisebox{-0.38ex}{\matex@ssize {H}}\kern-0.1em - {\matex@ssize {E}}\kern-0.05em - \raisebox{-0.38ex}{\matex@ssize {S}}\kern-0.05em - {\matex@ssize {I}}\kern-0.05em - \raisebox{-0.35ex}{\matex@ssize {S}}\kern-0.5em - \kern 1ex - } -} - -\makeatother - -% -% \fi -% -% -% \Finale -\endinput -% \iffalse -% Local Variables: -% mode: doctex -% TeX-master: t -% End: -% \fi diff --git a/macros/latex/contrib/bithesis/bithesis.ins b/macros/latex/contrib/bithesis/bithesis.ins deleted file mode 100644 index 27ae5ee939..0000000000 --- a/macros/latex/contrib/bithesis/bithesis.ins +++ /dev/null @@ -1,80 +0,0 @@ -%% Copyright (C) 2022 -%% Association of Bit Network Pioneer and any individual authors listed elsewhere in this file. -%% -------------------------------------------------------------------------- -%% -%% This work may be distributed and/or modified under the -%% conditions of the LaTeX Project Public License, either -%% version 1.3c of this license or (at your option) any later -%% version. This version of this license is in -%% http://www.latex-project.org/lppl/lppl-1-3c.txt -%% and the latest version of this license is in -%% http://www.latex-project.org/lppl.txt -%% and version 1.3 or later is part of all distributions of -%% LaTeX version 2020/11/27 or later. -%% -%% This work has the LPPL maintenance status `maintained'. -%% -%% The Current Mainteiner of this work is Feng Kaiyu. -%% -------------------------------------------------------------------------- - -\input docstrip.tex -\keepsilent - -\preamble - - Copyright (C) 2022 - Association of Bit Network Pioneer and any individual authors listed in the documentation. ------------------------------------------------------------------------------- - - This work may be distributed and/or modified under the - conditions of the LaTeX Project Public License, either - version 1.3c of this license or (at your option) any later - version. This version of this license is in - http://www.latex-project.org/lppl/lppl-1-3c.txt - and the latest version of this license is in - http://www.latex-project.org/lppl.txt - and version 1.3 or later is part of all distributions of - LaTeX version 2020/11/27 or later. - - This work has the LPPL maintenance status `maintained'. - - The Current Maintainer of this work is Feng Kaiyu. ------------------------------------------------------------------------------- - -\endpreamble - -\generate - { - \usedir{tex/latex/bithesis} - \file{bitart.cls} {\from{\jobname.dtx}{oldcls,article}} - \file{bitbook.cls} {\from{\jobname.dtx}{oldcls,book}} - \file{bitgrad.cls} {\from{\jobname.dtx}{oldcls,graduate}} - \file{bithesis.cls} {\from{\jobname.dtx}{cls,thesis}} - \file{bitbeamer.cls} {\from{\jobname.dtx}{cls,beamer}} - \file{bitreport.cls} {\from{\jobname.dtx}{cls,report}} - \file{dtx-style.sty} {\from{\jobname.dtx}{dtx-style}} - } - -\obeyspaces -\Msg{*************************************************************} -\Msg{* *} -\Msg{* To finish the installation you have to move the following *} -\Msg{* file into proper directories searched by TeX: *} -\Msg{* *} -\Msg{* The recommended directory is TDS:tex/latex/bithesis *} -\Msg{* *} -\Msg{* bithesis.cls *} -\Msg{* bitreport.cls *} -\Msg{* bitbeamer.cls *} -\Msg{* bitart.cls (deprecated) *} -\Msg{* bitbook.cls (deprecated) *} -\Msg{* bitgrad.cls (deprecated) *} -\Msg{* *} -\Msg{* To produce the documentation run the file bithesis.dtx *} -\Msg{* through XeLaTeX. *} -\Msg{* *} -\Msg{* Happy BIThesis! *} -\Msg{* *} -\Msg{*************************************************************} - -\endbatchfile diff --git a/macros/latex/contrib/bithesis/bithesis.pdf b/macros/latex/contrib/bithesis/bithesis.pdf deleted file mode 100644 index 83d3151ff5..0000000000 Binary files a/macros/latex/contrib/bithesis/bithesis.pdf and /dev/null differ diff --git a/macros/latex/contrib/bithesis/contributing-zh.md b/macros/latex/contrib/bithesis/contributing-zh.md deleted file mode 100644 index 52a09bae99..0000000000 --- a/macros/latex/contrib/bithesis/contributing-zh.md +++ /dev/null @@ -1,54 +0,0 @@ -# 贡献者指南 - -[![English version](assets/english.svg)](./contributing.md) - -:tada: 首先,感谢你为本项目付出的宝贵时间!:tada: - -以下是有关如何为本项目贡献力量的一些指导建议。 - -以下内容大多是指导性质的建议,并非强制要求。总之,在行动之前确保你知道自己要做什么。 - -本文档目前仍处于完善阶段,欢迎通过提出你自己的意见或者提交 PR 来帮助我们。 - -## Guidance - -**[我不想看下面的内容,我只是想问个小问题!!!](#加入我们的-QQ-群)** - -| | 普通使用者 | 开发者 | -| ---------- | ------------------------------- | ------------------------------------------- | -| 提出问题 | [QQ 群](#加入我们的-qq-群) | [QQ 群](#加入我们的-qq-群) | -| 提交 Bug | [QQ 群](#加入我们的-qq-群) | [Github - Issues](#在-github-上提交-bug) | -| 有好的想法 | [QQ 群](#加入我们的-qq-群) | Github - Issues | -| 提交 PR | | [Github - Pull Request](#提交-pull-request) | -| 有信心维护代码 | | [加入QQ 群并联系我们](#加入我们的-qq-群) | - -## 加入我们的 QQ 群 - -在我们提供的[QQ 群(737548118)][QQ chat group invitation]中有**很多活跃的维护者**和**友好的社区氛围**。在这里你能获得很多与本项目有关的帮助。 - -[![Join on QQ Chat Group](https://img.shields.io/badge/QQ%E7%BE%A4-737548118-green)](https://jq.qq.com/?_wv=1027&k=KYDrmS5z) - -> 提示:关于具体如何提出问题并没有明确的要求。总之请提供尽可能详细的信息,并且思考一下这个问题是不是已经被解决了。 - -## 在 Github 上提交 Bug - -如果你能更精确的定位问题所在,或者能够提供更详细的信息;你可以向我们[提交一个 issue][issue reporting link]。 - -## 提交 Pull Request - -欢迎提交 Pull Request! - -以下流程将会帮助你完成一次 PR。 - -1. Fork 这个项目。 -2. 使用 `git clone` 将项目拉取到本地。 -3. 使用最少的修改来解决 bug。 -4. 使用 `git commit` 提交变更。 -5. 创建一个 PR,并添加相应的说明。 -6. 在 PR 被合并之前请保持关注,以便进行修改。 - -更细致的流程请参考 -_[Github Help](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests)_。 - -[QQ chat group invitation]: https://jq.qq.com/?_wv=1027&k=KYDrmS5z -[issue reporting link]: https://github.com/BITNP/BIThesis/issues/new diff --git a/macros/latex/contrib/bithesis/contributing.md b/macros/latex/contrib/bithesis/contributing.md deleted file mode 100644 index 3dcd006aaa..0000000000 --- a/macros/latex/contrib/bithesis/contributing.md +++ /dev/null @@ -1,56 +0,0 @@ -# Contributing - -[![Chinese version](./assets/chinese.svg)](./contributing-zh.md) - -:tada: First off, thanks for taking the time to contribute! :tada: - -The following is a set of guidelines for contributing to BIThesis. - -These are mostly guidelines, not rules. Use your best judgment, -and feel free to propose changes to this document in a pull request. - -## Guidance - -**[I don't want to read this whole thing, I just have a small question!!!](#join-our-QQ-chat-group)** - -| | For Users | For Developers | -| --------------- | -------------------------------- | ---------------------------------------------- | -| Have a Question | [QQ Chat Group](#join-our-QQ-chat-group) | [QQ Chat Group](#join-our-QQ-chat-group) | -| Bug Report | [QQ Chat Group](#join-our-QQ-chat-group) | [Github - Issues](#bug-report-on-github) | -| Feature Request | [QQ Chat Group](#join-our-QQ-chat-group) | [QQ Chat Group](#join-our-QQ-chat-group) | -| Pull Request | | [Github - Pull Request](#pull-request-process) | - -## Join Our QQ Chat Group - -We provide an [QQ Chat Group][QQ chat group invitation] -with **a bunch of active maintainers** and **a friendly community** -to give helpful advice **if you have any questions**. - -[![Join on QQ Chat Group](https://img.shields.io/badge/QQ%E7%BE%A4-737548118-green)](https://jq.qq.com/?_wv=1027&k=KYDrmS5z) - -> note: there is no detailed rules about how to ask question, just provide enough information and -rethink before write. - -## Bug Report on Github - -If you can locate the bug or provide more detailed information, you may -_[report an issue here][issue reporting link]_. - -## Pull Request Process - -Pull Request are welcomed! - -The following steps will help you finish a pull request. - -1. Fork this repo. -2. `git clone` your forked repo. -3. Make changes until the bug is fixed. -4. Commit your changes. -5. Create a pull request with related information. -6. Keep in touch with further discussion and refine. - -For more information, refer to the -_[Github Help](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests)_. - -[QQ chat group invitation]: https://jq.qq.com/?_wv=1027&k=KYDrmS5z -[issue reporting link]: https://github.com/BITNP/BIThesis/issues/new diff --git a/macros/latex/contrib/l3build/CHANGELOG.md b/macros/latex/contrib/l3build/CHANGELOG.md index 20d7a61bbb..c83c3fc3b0 100644 --- a/macros/latex/contrib/l3build/CHANGELOG.md +++ b/macros/latex/contrib/l3build/CHANGELOG.md @@ -7,6 +7,11 @@ this project uses date-based 'snapshot' version identifiers. ## [Unreleased] +## [2022-09-15] + +### Fixed +- Copying of nested directories + ## [2022-04-19] ### Changed @@ -598,7 +603,8 @@ this project uses date-based 'snapshot' version identifiers. - Rationalise short option names: removed `-d`, `-E`, `-r` - Target `cmdcheck`: specific to LaTeX kernel work -[Unreleased]: https://github.com/latex3/l3build/compare/2022-04-19...HEAD +[Unreleased]: https://github.com/latex3/l3build/compare/2022-09-15...HEAD +[2022-09-15]: https://github.com/latex3/l3build/compare/2022-04-19...2022-09-15 [2022-04-19]: https://github.com/latex3/l3build/compare/2022-04-12...2022-04-19 [2022-04-12]: https://github.com/latex3/l3build/compare/2022-03-15...2022-04-12 [2022-03-15]: https://github.com/latex3/l3build/compare/2022-02-24...2022-03-15 diff --git a/macros/latex/contrib/l3build/README.md b/macros/latex/contrib/l3build/README.md index ed9a727216..bb05be7e4d 100644 --- a/macros/latex/contrib/l3build/README.md +++ b/macros/latex/contrib/l3build/README.md @@ -1,7 +1,7 @@ l3build: a testing and building system for LaTeX ================================================= -Release 2022-04-19 +Release 2022-09-15 Overview -------- diff --git a/macros/latex/contrib/l3build/l3build-install.lua b/macros/latex/contrib/l3build/l3build-install.lua index baea5a9a42..64d29fc590 100644 --- a/macros/latex/contrib/l3build/l3build-install.lua +++ b/macros/latex/contrib/l3build/l3build-install.lua @@ -327,9 +327,17 @@ function install_files(target,full,dry_run) if errorlevel ~= 0 then return errorlevel end + -- Track created destination directories to avoid overhead from + -- repeatedly creating them + local destination_dirs = {} + -- Files are all copied in one shot: this ensures that cleandir() -- can't be an issue even if there are complex set-ups for _,v in ipairs(installmap) do + if not destination_dirs[v.dest] then + mkdir(v.dest) + destination_dirs[v.dest] = true + end errorlevel = cp(v.file,v.source,v.dest) if errorlevel ~= 0 then return errorlevel end end diff --git a/macros/latex/contrib/l3build/l3build.1 b/macros/latex/contrib/l3build/l3build.1 index f3051302fd..a0b54c3507 100644 --- a/macros/latex/contrib/l3build/l3build.1 +++ b/macros/latex/contrib/l3build/l3build.1 @@ -1,4 +1,4 @@ -.TH l3build 1 "2022-04-19" +.TH l3build 1 "2022-09-15" .SH NAME l3build \- Checking and building packages .SH SYNOPSIS diff --git a/macros/latex/contrib/l3build/l3build.dtx b/macros/latex/contrib/l3build/l3build.dtx index 64ae3c39cf..efdadd7685 100644 --- a/macros/latex/contrib/l3build/l3build.dtx +++ b/macros/latex/contrib/l3build/l3build.dtx @@ -206,7 +206,6 @@ \end{longtable} \endgroup } -\newcommand\code{\texttt} \newcommand\var{\texttt} \usepackage[procnames]{listings} \lstset{ @@ -237,7 +236,7 @@ % }^^A % } % -% \date{Released 2022-04-19} +% \date{Released 2022-09-15} % % \maketitle % \tableofcontents @@ -510,7 +509,7 @@ % The documentation compilation is performed with the \var{typesetexe} binary (default \texttt{pdflatex}), with options \var{typesetopts}. % Additional \TeX{} material defined in \var{typesetcmds} is passed to the document (e.g., for writing |\\PassOptionsToClass{l3doc}{letterpaper}|, and so on---note that backslashes need to be escaped in Lua strings). % -% Files that match |typesetsuppfiles| in the |support| directory (|supportdir|) are copied into the |build/local| directory (|localdir|) for the typesetting compilation process. +% Files that match |typesetsuppfiles| in the |support| directory (|supportdir|) are copied into the |build/doc| directory (|typesetdir|) for the typesetting compilation process. % Additional dependencies listed in the \var{typesetdeps} variable (empty by default) will also be installed. % % Source files specified in \var{sourcefiles} and \var{typesetsourcefiles} @@ -714,7 +713,7 @@ % \label{fig:configs} % \end{figure} % -% To allow selection of a one or more configurations, and to allow saving of +% To allow selection of one or more configurations, and to allow saving of % |.tlg| files in non-standard configurations, the |--config| (|-c|) option may % be used. This works in the same way as |--engine|: it takes a comma list of % configurations to apply, overriding \var{checkconfigs}. @@ -1474,11 +1473,13 @@ % For example, to choose to use \LuaTeX{} for one file when \var{typesetexe} % is |pdftex| % \begin{verbatim} -% specialtypesetting.foo = {cmd = "luatex -interaction=nonstopmode"} +% specialtypesetting = specialtypesetting or {} +% specialtypesetting["foo.tex"] = {cmd = "luatex -interaction=nonstopmode"} % \end{verbatim} % or to select an entirely different typesetting function % \begin{verbatim} -% specialtypesetting.foo = {func = typeset_foo} +% specialtypesetting = specialtypesetting or {} +% specialtypesetting["foo.tex"] = {func = typeset_foo} % \end{verbatim} % % \subsection{Automated upload to CTAN} diff --git a/macros/latex/contrib/l3build/l3build.lua b/macros/latex/contrib/l3build/l3build.lua index 72d67d2e1c..ebca82423f 100755 --- a/macros/latex/contrib/l3build/l3build.lua +++ b/macros/latex/contrib/l3build/l3build.lua @@ -25,7 +25,7 @@ for those people who are interested. --]] -- Version information -release_date = "2022-04-19" +release_date = "2022-09-15" -- File operations are aided by the LuaFileSystem module local lfs = require("lfs") diff --git a/macros/latex/contrib/l3build/l3build.pdf b/macros/latex/contrib/l3build/l3build.pdf index 3f4e8750c2..3420d198a0 100644 Binary files a/macros/latex/contrib/l3build/l3build.pdf and b/macros/latex/contrib/l3build/l3build.pdf differ diff --git a/macros/latex/contrib/newpax/README.md b/macros/latex/contrib/newpax/README.md index 67884fc915..5023423287 100644 --- a/macros/latex/contrib/newpax/README.md +++ b/macros/latex/contrib/newpax/README.md @@ -7,7 +7,7 @@ a lua script first. The package is based on and uses code from [pax](https://ctan.org/pkg/pax) by Heiko Oberdiek. -Packageversion: 0.52 +Packageversion: 0.53 Packagedate: 2021-02-26 Author: Ulrike Fischer diff --git a/macros/latex/contrib/newpax/doc-input1.pdf b/macros/latex/contrib/newpax/doc-input1.pdf index 5502f64f96..49f91f65a5 100644 --- a/macros/latex/contrib/newpax/doc-input1.pdf +++ b/macros/latex/contrib/newpax/doc-input1.pdf @@ -544,7 +544,7 @@ endobj << /Type /Catalog /Pages 36 0 R /Outlines 84 0 R /Names 86 0 R /Lang (en-US)/PageMode /UseOutlines/OpenAction [5 0 R /Fit]/PageLabels <>]>> >> endobj 88 0 obj -<< /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220911155604+02'00') /ModDate (D:20220911155604+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> +<< /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220915203759+02'00') /ModDate (D:20220915203759+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> endobj xref 0 89 @@ -638,7 +638,7 @@ xref 0000028679 00000 n 0000028853 00000 n trailer -<< /Size 89 /Root 87 0 R /Info 88 0 R /ID [ <8F0FB4F0B8248AA1FF4C68AF8F8BFDF5> <8F0FB4F0B8248AA1FF4C68AF8F8BFDF5> ] >> +<< /Size 89 /Root 87 0 R /Info 88 0 R /ID [ <886964798E7A068E2C2C4A354A412824> <886964798E7A068E2C2C4A354A412824> ] >> startxref 29175 %%EOF diff --git a/macros/latex/contrib/newpax/doc-input1.tex b/macros/latex/contrib/newpax/doc-input1.tex index b6da05beae..04c23b4d91 100644 --- a/macros/latex/contrib/newpax/doc-input1.tex +++ b/macros/latex/contrib/newpax/doc-input1.tex @@ -1,6 +1,5 @@ % !Mode:: "TeX:UTF-8:Main" -\RequirePackage{pdfmanagement-testphase} -\DeclareDocumentMetadata{uncompress} +\DocumentMetadata{uncompress} \documentclass{article} \usepackage{hyperref} diff --git a/macros/latex/contrib/newpax/doc-input2.pdf b/macros/latex/contrib/newpax/doc-input2.pdf index f93f64ffc8..dcac6b1f3e 100644 --- a/macros/latex/contrib/newpax/doc-input2.pdf +++ b/macros/latex/contrib/newpax/doc-input2.pdf @@ -540,7 +540,7 @@ endobj << /Type /Catalog /Pages 35 0 R /Outlines 83 0 R /Names 85 0 R /Lang (en-US)/PageMode /UseOutlines/OpenAction [5 0 R /Fit]/PageLabels <>]>> >> endobj 87 0 obj -<< /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220911155626+02'00') /ModDate (D:20220911155626+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> +<< /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220915203828+02'00') /ModDate (D:20220915203828+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> endobj xref 0 88 @@ -633,7 +633,7 @@ xref 0000028411 00000 n 0000028585 00000 n trailer -<< /Size 88 /Root 86 0 R /Info 87 0 R /ID [ <89E0AB23EDFDDB91B45D227A7255B6E9> <89E0AB23EDFDDB91B45D227A7255B6E9> ] >> +<< /Size 88 /Root 86 0 R /Info 87 0 R /ID [ ] >> startxref 28907 %%EOF diff --git a/macros/latex/contrib/newpax/doc-input2.tex b/macros/latex/contrib/newpax/doc-input2.tex index e0d96d307f..a1991db774 100644 --- a/macros/latex/contrib/newpax/doc-input2.tex +++ b/macros/latex/contrib/newpax/doc-input2.tex @@ -1,6 +1,5 @@ % !Mode:: "TeX:UTF-8:Main" -\RequirePackage{pdfmanagement-testphase} -\DeclareDocumentMetadata{uncompress} +\DocumentMetadata{uncompress} \documentclass{article} \usepackage{hyperref} diff --git a/macros/latex/contrib/newpax/doc-use-newpax.pdf b/macros/latex/contrib/newpax/doc-use-newpax.pdf index b66c953778..3a3b35e65d 100644 --- a/macros/latex/contrib/newpax/doc-use-newpax.pdf +++ b/macros/latex/contrib/newpax/doc-use-newpax.pdf @@ -84,7 +84,7 @@ Q endstream endobj 6 0 obj -<< /Type /XObject /Subtype /Form /FormType 1 /PTEX.PageNumber 1 /PTEX.InfoDict << /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220911155604+02'00') /ModDate (D:20220911155604+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> /BBox [ 0 0 595.276 841.89 ] /Resources << /ExtGState 75 0 R /Font << /F15 76 0 R /F16 77 0 R /F28 78 0 R >> /ProcSet [ /PDF /Text ] >> /Length 4811 >> +<< /Type /XObject /Subtype /Form /FormType 1 /PTEX.PageNumber 1 /PTEX.InfoDict << /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220915203759+02'00') /ModDate (D:20220915203759+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> /BBox [ 0 0 595.276 841.89 ] /Resources << /ExtGState 75 0 R /Font << /F15 76 0 R /F16 77 0 R /F28 78 0 R >> /ProcSet [ /PDF /Text ] >> /Length 4811 >> stream /opacity1 gs BT @@ -393,7 +393,7 @@ Q endstream endobj 24 0 obj -<< /Type /XObject /Subtype /Form /FormType 1 /PTEX.PageNumber 2 /PTEX.InfoDict << /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220911155604+02'00') /ModDate (D:20220911155604+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> /BBox [ 0 0 595.276 841.89 ] /Resources << /ExtGState 75 0 R /Font << /F16 77 0 R /F15 76 0 R >> /ProcSet [ /PDF /Text ] >> /Length 303 >> +<< /Type /XObject /Subtype /Form /FormType 1 /PTEX.PageNumber 2 /PTEX.InfoDict << /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220915203759+02'00') /ModDate (D:20220915203759+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> /BBox [ 0 0 595.276 841.89 ] /Resources << /ExtGState 75 0 R /Font << /F16 77 0 R /F15 76 0 R >> /ProcSet [ /PDF /Text ] >> /Length 303 >> stream /opacity1 gs BT @@ -485,10 +485,10 @@ endobj << /Type /Annot /Subtype /Link /Border [0 0 1 ] /H /I /C [0.724708 0.4 0.717646 ] /A <> /BS <> /Rect [ 158.406 569.081 276.275 574.615 ] >> endobj 22 0 obj -<< /Type /Annot /Subtype /Link /Border [0 0 1 ] /H /I /C [0.444706 0.456472 0.680002 ] /A </D[ ]>> /BS <> /Rect [ 165.878 563.163 174.078 568.637 ] >> +<< /Type /Annot /Subtype /Link /Border [0 0 1 ] /H /I /C [0.444706 0.456472 0.680002 ] /A </Subtype/application#2Fpdf/Type/Filespec/UF >>/D(chapter.1)>> /BS <> /Rect [ 165.878 563.163 174.078 568.637 ] >> endobj 23 0 obj -<< /Type /Annot /Subtype /Link /Border [0 0 1 ] /H /I /C [0.444706 0.456472 0.680002 ] /A </D[ ]>> /BS <> /Rect [ 158.406 508.869 165.768 513.432 ] >> +<< /Type /Annot /Subtype /Link /Border [0 0 1 ] /H /I /C [0.444706 0.456472 0.680002 ] /A </Subtype/application#2Fpdf/Type/Filespec/UF >>/D[0 /Fit]>> /BS <> /Rect [ 158.406 508.869 165.768 513.432 ] >> endobj 26 0 obj << /Type /Annot /Subtype /Link /Border [0 0 1 ] /H /I /C [0.724708 0.4 0.717646 ] /A <> /BS <> /Rect [ 282.581 640.697 359.667 646.291 ] >> @@ -530,10 +530,10 @@ endobj << /Type /Annot /Subtype /Link /Border [0 0 1 ] /H /I /C [0.724708 0.4 0.717646 ] /A <> /BS <> /Rect [ 158.406 402.258 276.275 407.792 ] >> endobj 45 0 obj -<< /Type /Annot /Subtype /Link /Border [0 0 1 ] /H /I /C [0.444706 0.456472 0.680002 ] /A </D[ ]>> /BS <> /Rect [ 165.878 396.34 174.078 401.814 ] >> +<< /Type /Annot /Subtype /Link /Border [0 0 1 ] /H /I /C [0.444706 0.456472 0.680002 ] /A </Subtype/application#2Fpdf/Type/Filespec/UF >>/D(chapter.1)>> /BS <> /Rect [ 165.878 396.34 174.078 401.814 ] >> endobj 46 0 obj -<< /Type /Annot /Subtype /Link /Border [0 0 1 ] /H /I /C [0.444706 0.456472 0.680002 ] /A </D[ ]>> /BS <> /Rect [ 158.406 342.046 165.768 346.609 ] >> +<< /Type /Annot /Subtype /Link /Border [0 0 1 ] /H /I /C [0.444706 0.456472 0.680002 ] /A </Subtype/application#2Fpdf/Type/Filespec/UF >>/D[0 /Fit]>> /BS <> /Rect [ 158.406 342.046 165.768 346.609 ] >> endobj 48 0 obj << /Type /Annot /Subtype /Link /Border [0 0 1 ] /H /I /C [0.724708 0.4 0.717646 ] /A <> /BS <> /Rect [ 282.581 473.874 359.667 479.468 ] >> @@ -635,7 +635,7 @@ endobj [ 102 0 R 103 0 R 104 0 R 105 0 R 106 0 R 107 0 R 108 0 R 109 0 R 110 0 R 111 0 R 112 0 R 113 0 R 114 0 R 115 0 R 101 0 R ] endobj 56 0 obj -<< /Type /XObject /Subtype /Form /FormType 1 /PTEX.PageNumber 1 /PTEX.InfoDict << /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220911155626+02'00') /ModDate (D:20220911155626+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> /BBox [ 0 0 595.276 841.89 ] /Resources << /ExtGState 125 0 R /Font << /F15 126 0 R /F16 127 0 R /F28 128 0 R >> /ProcSet [ /PDF /Text ] >> /Length 4742 >> +<< /Type /XObject /Subtype /Form /FormType 1 /PTEX.PageNumber 1 /PTEX.InfoDict << /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220915203828+02'00') /ModDate (D:20220915203828+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> /BBox [ 0 0 595.276 841.89 ] /Resources << /ExtGState 125 0 R /Font << /F15 126 0 R /F16 127 0 R /F28 128 0 R >> /ProcSet [ /PDF /Text ] >> /Length 4742 >> stream /opacity1 gs BT @@ -966,10 +966,10 @@ endobj << /Type /Annot /Subtype /Link /Border [0 0 1] /H /I /C [0.724708 0.4 0.717646] /A <> /Rect [ 150.898 538.673 398.571 549.086 ] >> endobj 114 0 obj -<< /Type /Annot /Subtype /Link /Border [0 0 1] /H /I /C [0.444706 0.456472 0.680002] /A </D[ ]>> /Rect [ 164.957 527.537 180.385 537.838 ] >> +<< /Type /Annot /Subtype /Link /Border [0 0 1] /H /I /C [0.444706 0.456472 0.680002] /A </Subtype/application#2Fpdf/Type/Filespec/UF >>/D(chapter.1)>> /Rect [ 164.957 527.537 180.385 537.838 ] >> endobj 115 0 obj -<< /Type /Annot /Subtype /Link /Border [0 0 1] /H /I /C [0.444706 0.456472 0.680002] /A </D[ ]>> /Rect [ 150.898 425.376 164.751 433.962 ] >> +<< /Type /Annot /Subtype /Link /Border [0 0 1] /H /I /C [0.444706 0.456472 0.680002] /A </Subtype/application#2Fpdf/Type/Filespec/UF >>/D[0 /Fit]>> /Rect [ 150.898 425.376 164.751 433.962 ] >> endobj 101 0 obj << /Type /Annot /Subtype /Link /Border [0 0 1] /H /I /C [0.0 0.0 1.0] /Rect [ 163.961 661.186 172.514 673.704 ]/A << /S /GoTo /D (NEWPAX@doc-input2.newpax@1@B) >> >> @@ -1020,7 +1020,7 @@ endobj [ 148 0 R 149 0 R 150 0 R 151 0 R ] endobj 147 0 obj -<< /Type /XObject /Subtype /Form /FormType 1 /PTEX.PageNumber 2 /PTEX.InfoDict << /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220911155626+02'00') /ModDate (D:20220911155626+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> /BBox [ 0 0 595.276 841.89 ] /Resources << /ExtGState 125 0 R /Font << /F16 127 0 R /F15 126 0 R >> /ProcSet [ /PDF /Text ] >> /Length 303 >> +<< /Type /XObject /Subtype /Form /FormType 1 /PTEX.PageNumber 2 /PTEX.InfoDict << /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220915203828+02'00') /ModDate (D:20220915203828+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> /BBox [ 0 0 595.276 841.89 ] /Resources << /ExtGState 125 0 R /Font << /F16 127 0 R /F15 126 0 R >> /ProcSet [ /PDF /Text ] >> /Length 303 >> stream /opacity1 gs BT @@ -1079,7 +1079,7 @@ endobj [ 158 0 R ] endobj 157 0 obj -<< /Type /XObject /Subtype /Form /FormType 1 /PTEX.PageNumber 3 /PTEX.InfoDict << /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220911155626+02'00') /ModDate (D:20220911155626+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> /BBox [ 0 0 595.276 841.89 ] /Resources << /ExtGState 125 0 R /Font << /F15 126 0 R >> /ProcSet [ /PDF /Text ] >> /Length 173 >> +<< /Type /XObject /Subtype /Form /FormType 1 /PTEX.PageNumber 3 /PTEX.InfoDict << /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220915203828+02'00') /ModDate (D:20220915203828+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> /BBox [ 0 0 595.276 841.89 ] /Resources << /ExtGState 125 0 R /Font << /F15 126 0 R >> /ProcSet [ /PDF /Text ] >> /Length 173 >> stream /opacity1 gs BT @@ -1124,7 +1124,7 @@ endobj << /Type /Page /Contents 167 0 R /Resources 165 0 R /MediaBox [ 0 0 612 792 ] /Parent 72 0 R >> endobj 164 0 obj -<< /Type /XObject /Subtype /Form /FormType 1 /PTEX.PageNumber 4 /PTEX.InfoDict << /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220911155626+02'00') /ModDate (D:20220911155626+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> /BBox [ 0 0 595.276 841.89 ] /Resources << /ExtGState 125 0 R /Font << /F15 126 0 R >> /ProcSet [ /PDF /Text ] >> /Length 123 >> +<< /Type /XObject /Subtype /Form /FormType 1 /PTEX.PageNumber 4 /PTEX.InfoDict << /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220915203828+02'00') /ModDate (D:20220915203828+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> /BBox [ 0 0 595.276 841.89 ] /Resources << /ExtGState 125 0 R /Font << /F15 126 0 R >> /ProcSet [ /PDF /Text ] >> /Length 123 >> stream /opacity1 gs BT @@ -1219,20 +1219,20 @@ endobj << /Type /Catalog /Pages 72 0 R /Names 176 0 R /Lang (en-US)/PageMode /UseOutlines/OpenAction [5 0 R /Fit]/PageLabels <>]>> >> endobj 178 0 obj -<< /Creator /Producer (LuaTeX-1.15.0) /CreationDate (D:20220911155738+02'00') /ModDate (D:20220911155738+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> +<< /Creator /Producer (LuaTeX-1.15.0) /CreationDate (D:20220915203954+02'00') /ModDate (D:20220915203954+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> endobj xref 0 179 0000000002 65535 f -0000062659 00000 n +0000063994 00000 n 0000000003 00000 f 0000000004 00000 f 0000000053 00000 f 0000000668 00000 n 0000001304 00000 n 0000001090 00000 n -0000030643 00000 n -0000030854 00000 n +0000031533 00000 n +0000031744 00000 n 0000023523 00000 n 0000023745 00000 n 0000023967 00000 n @@ -1246,56 +1246,56 @@ xref 0000025742 00000 n 0000025964 00000 n 0000026186 00000 n -0000026589 00000 n +0000026877 00000 n 0000021739 00000 n 0000021524 00000 n -0000026864 00000 n -0000031065 00000 n -0000031276 00000 n -0000031487 00000 n +0000027309 00000 n +0000031955 00000 n +0000032166 00000 n +0000032377 00000 n 0000022677 00000 n -0000031698 00000 n -0000031911 00000 n -0000027086 00000 n -0000027307 00000 n -0000027529 00000 n -0000027750 00000 n -0000027972 00000 n -0000028194 00000 n -0000028416 00000 n -0000028636 00000 n -0000028858 00000 n -0000029079 00000 n -0000029301 00000 n -0000029522 00000 n -0000029744 00000 n -0000030146 00000 n +0000032588 00000 n +0000032801 00000 n +0000027531 00000 n +0000027752 00000 n +0000027974 00000 n +0000028195 00000 n +0000028417 00000 n +0000028639 00000 n +0000028861 00000 n +0000029081 00000 n +0000029303 00000 n +0000029524 00000 n +0000029746 00000 n +0000029967 00000 n +0000030189 00000 n +0000030879 00000 n 0000022958 00000 n -0000030421 00000 n -0000032122 00000 n -0000032335 00000 n -0000032548 00000 n +0000031311 00000 n +0000033012 00000 n +0000033225 00000 n +0000033438 00000 n 0000023240 00000 n 0000000054 00000 f 0000000055 00000 f 0000000000 00000 f -0000034124 00000 n -0000033490 00000 n +0000035014 00000 n +0000034380 00000 n 0000000020 00000 n -0000032761 00000 n -0000032821 00000 n -0000032882 00000 n -0000032943 00000 n -0000033003 00000 n -0000033064 00000 n -0000033125 00000 n -0000033186 00000 n -0000033247 00000 n -0000033307 00000 n -0000033368 00000 n -0000033429 00000 n -0000064461 00000 n -0000064820 00000 n +0000033651 00000 n +0000033711 00000 n +0000033772 00000 n +0000033833 00000 n +0000033893 00000 n +0000033954 00000 n +0000034015 00000 n +0000034076 00000 n +0000034137 00000 n +0000034197 00000 n +0000034258 00000 n +0000034319 00000 n +0000065796 00000 n +0000066155 00000 n 0000000792 00000 n 0000021458 00000 n 0000006694 00000 n @@ -1324,86 +1324,86 @@ xref 0000022892 00000 n 0000023173 00000 n 0000023456 00000 n -0000057331 00000 n -0000054254 00000 n -0000054458 00000 n -0000054661 00000 n -0000054864 00000 n -0000055067 00000 n -0000055269 00000 n -0000055472 00000 n -0000055675 00000 n -0000055878 00000 n -0000056080 00000 n -0000056283 00000 n -0000056485 00000 n -0000056689 00000 n -0000057074 00000 n -0000057834 00000 n -0000033854 00000 n -0000033651 00000 n -0000057516 00000 n -0000057580 00000 n -0000057644 00000 n -0000057707 00000 n -0000057771 00000 n -0000033983 00000 n -0000039450 00000 n -0000039501 00000 n -0000039658 00000 n -0000039814 00000 n -0000039968 00000 n -0000040171 00000 n -0000041454 00000 n -0000041656 00000 n -0000042635 00000 n -0000042835 00000 n -0000043635 00000 n -0000043874 00000 n -0000044233 00000 n -0000044471 00000 n -0000044680 00000 n -0000044917 00000 n -0000044998 00000 n -0000050284 00000 n -0000050352 00000 n -0000052850 00000 n -0000052917 00000 n -0000054188 00000 n -0000058304 00000 n -0000059179 00000 n -0000059383 00000 n -0000059568 00000 n -0000059753 00000 n -0000060001 00000 n -0000058122 00000 n -0000057919 00000 n -0000059938 00000 n -0000058251 00000 n -0000060448 00000 n -0000061180 00000 n -0000061426 00000 n -0000060290 00000 n -0000060087 00000 n -0000061363 00000 n -0000060419 00000 n -0000061828 00000 n -0000062573 00000 n -0000061715 00000 n -0000061512 00000 n -0000062510 00000 n -0000062706 00000 n -0000063469 00000 n -0000062738 00000 n -0000062810 00000 n -0000063708 00000 n -0000064617 00000 n -0000064913 00000 n -0000065614 00000 n -0000065652 00000 n -0000065811 00000 n +0000058666 00000 n +0000055144 00000 n +0000055348 00000 n +0000055551 00000 n +0000055754 00000 n +0000055957 00000 n +0000056159 00000 n +0000056362 00000 n +0000056565 00000 n +0000056768 00000 n +0000056970 00000 n +0000057173 00000 n +0000057375 00000 n +0000057579 00000 n +0000058252 00000 n +0000059169 00000 n +0000034744 00000 n +0000034541 00000 n +0000058851 00000 n +0000058915 00000 n +0000058979 00000 n +0000059042 00000 n +0000059106 00000 n +0000034873 00000 n +0000040340 00000 n +0000040391 00000 n +0000040548 00000 n +0000040704 00000 n +0000040858 00000 n +0000041061 00000 n +0000042344 00000 n +0000042546 00000 n +0000043525 00000 n +0000043725 00000 n +0000044525 00000 n +0000044764 00000 n +0000045123 00000 n +0000045361 00000 n +0000045570 00000 n +0000045807 00000 n +0000045888 00000 n +0000051174 00000 n +0000051242 00000 n +0000053740 00000 n +0000053807 00000 n +0000055078 00000 n +0000059639 00000 n +0000060514 00000 n +0000060718 00000 n +0000060903 00000 n +0000061088 00000 n +0000061336 00000 n +0000059457 00000 n +0000059254 00000 n +0000061273 00000 n +0000059586 00000 n +0000061783 00000 n +0000062515 00000 n +0000062761 00000 n +0000061625 00000 n +0000061422 00000 n +0000062698 00000 n +0000061754 00000 n +0000063163 00000 n +0000063908 00000 n +0000063050 00000 n +0000062847 00000 n +0000063845 00000 n +0000064041 00000 n +0000064804 00000 n +0000064073 00000 n +0000064145 00000 n +0000065043 00000 n +0000065952 00000 n +0000066248 00000 n +0000066949 00000 n +0000066987 00000 n +0000067146 00000 n trailer -<< /Size 179 /Root 177 0 R /Info 178 0 R /ID [ ] >> +<< /Size 179 /Root 177 0 R /Info 178 0 R /ID [ ] >> startxref -66111 +67446 %%EOF diff --git a/macros/latex/contrib/newpax/doc-use-newpax.tex b/macros/latex/contrib/newpax/doc-use-newpax.tex index dc23bcd842..c24ea392ef 100644 --- a/macros/latex/contrib/newpax/doc-use-newpax.tex +++ b/macros/latex/contrib/newpax/doc-use-newpax.tex @@ -1,7 +1,7 @@ % !Mode:: "TeX:UTF-8:Main" - -\RequirePackage{pdfmanagement-testphase} -\DeclareDocumentMetadata{uncompress} +% The next command needs LaTeX 2022-06-01, for older formats see documentation +% of pdfmanagement-testphase +\DocumentMetadata{uncompress} \documentclass{article} \usepackage{pdfpages,xcolor} diff --git a/macros/latex/contrib/newpax/doc-use-pax.pdf b/macros/latex/contrib/newpax/doc-use-pax.pdf index 3840aee12e..624a2b7370 100644 Binary files a/macros/latex/contrib/newpax/doc-use-pax.pdf and b/macros/latex/contrib/newpax/doc-use-pax.pdf differ diff --git a/macros/latex/contrib/newpax/doc-use-pax.tex b/macros/latex/contrib/newpax/doc-use-pax.tex index f5b6e695a6..08bfe5abe7 100644 --- a/macros/latex/contrib/newpax/doc-use-pax.tex +++ b/macros/latex/contrib/newpax/doc-use-pax.tex @@ -16,6 +16,10 @@ %correct a bug in pax affecting clipping \makeatletter \patchcmd\PAX@pdf@annot{\PAX@pagellx}{\PAX@page@llx}{}{\fail} +%allow hashes and percent in the pax file +\patchcmd\PAX@AddAnnots{\InputIfFileExists\PAX@file{}{\typeout{* Missing: \PAX@file}}} + {\begingroup \catcode`\#=12 \catcode`\%=12 + \InputIfFileExists\PAX@file{}{\typeout{* Missing: \PAX@file}}\endgroup}{}{\fail} \makeatother \begin{document} \includegraphics[scale=0.5,trim=5cm 15cm 8cm 3cm,clip,page=2]{doc-input1} diff --git a/macros/latex/contrib/newpax/newpax.dtx b/macros/latex/contrib/newpax/newpax.dtx index 01f68546dd..12566c7053 100644 --- a/macros/latex/contrib/newpax/newpax.dtx +++ b/macros/latex/contrib/newpax/newpax.dtx @@ -2,7 +2,7 @@ % % File: newpax.dtx % Copyright 2006-2008, 2011, 2012 Heiko Oberdiek (original pax.sty) -% Copyright (C) 2021 Ulrike Fischer +% Copyright (C) 2021, 2022 Ulrike Fischer % % It may be distributed and/or modified under the conditions of the % LaTeX Project Public License (LPPL), either version 1.3c of this @@ -29,7 +29,7 @@ %<@@=newpax> \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{newpax}% - [2021-03-07 v0.51 Annotation support for PDF graphics based on pax.sty adapted by (UF)]% + [2022-09-15 v0.53 Annotation support for PDF graphics based on pax.sty adapted by (UF)]% \ExplSyntaxOn \bool_if:nF { @@ -39,7 +39,7 @@ \PackageError{newpax} { PDF~resource~management~code~not~found!\MessageBreak - newpage~will~no~work. + newpax~will~no~work. } { Load~it~with \MessageBreak @@ -701,8 +701,8 @@ %<*lua> local ProvidesLuaModule = { name = "newpax", - version = "0.52", --TAGVERSION - date = "2022-09-11", --TAGDATE + version = "0.53", --TAGVERSION + date = "2022-09-15", --TAGDATE description = "newpax lua code", license = "The LATEX Project Public License 1.3c" } @@ -1015,6 +1015,9 @@ end local function outputKV_uri (pdfedict) local type, value, hex = GETFROMDICTIONARY(pdfedict,constKEY_URI) + if TYPE(value) == "pdfe.reference" then + type,value,hex = GETFROMREFERENCE(value) + end local a= strKV_BEG .. constKEY_URI .. strVALUE_BEG if hex then a = a .. strHEX_STR_BEG .. value .. strHEX_STR_END @@ -1031,24 +1034,54 @@ local function outputKV_N (pdfedict) return a end +-- if a gotoR has a filespec filespec we use this +-- to output the reference. It is rather crude and handles only names and strings +local function outputDICT (dictionary) + local tkeys = {} + local dict = DICTIONARYTOTABLE(dictionary) + for name,value in pairs(dict) do + table.insert(tkeys,name) + end + table.sort(tkeys) + local a = "<<" + for _,k in ipairs (tkeys) do + v=dict[k] + a = a .. strNAME.. k + if v[1]== 5 then -- it is a name + b = string.gsub(v[2], "/", "#2F") + a = a .. strNAME .. b + elseif v[1] == 6 then -- it is a string + local b + if v[3] then + b = "<" .. v[2] .. ">" + else + b = "(" .. v[2] .. ")" + end + a = a ..strRECT_SEP .. b + -- everything else is ignored for now! + end + end + a = a .. ">>" + return a +end + local function outputKV_gotor (pdfedict) -- action dictionary - local type, value, desttype, destvalue, hex - local checktype, checkvalue, checkhex = GETFROMDICTIONARY(pdfedict,"F") - if checktype==10 then - -- TODO resolve reference deeper!! - local a,b,c= GETFROMREFERENCE(checkvalue) - type, value, hex = GETFROMDICTIONARY(b,"F") - desttype,destvalue = GETFROMDICTIONARY(b,"D") - else - value=checkvalue - desttype,destvalue = GETFROMDICTIONARY(pdfedict,"D") - end + local type, value, hex = GETFROMDICTIONARY(pdfedict,"F") + local desttype, destvalue, destdetail = GETFROMDICTIONARY(pdfedict,"D") local a = strKV_BEG .. constKEY_FILE .. strVALUE_BEG - a = strKV_BEG .. constKEY_FILE .. strVALUE_BEG - if hex then - a = a .. strHEX_STR_BEG .. value .. strHEX_STR_END + if TYPE(value) == "pdfe.reference" then + local x,dictionary = GETFROMREFERENCE(value) + if TYPE(dictionary) == "pdfe.dictionary" then + a = a .. outputDICT (dictionary) + else + print("ERROR!? this is not a dictionary!!") + end else - a = a .. strLIT_STR_BEG .. value .. strLIT_STR_END + if hex then + a = a .. strHEX_STR_BEG .. value .. strHEX_STR_END + else + a = a .. strLIT_STR_BEG .. value .. strLIT_STR_END + end end a = a .. strVALUE_END .. strKV_END if desttype == 7 then diff --git a/macros/latex/contrib/newpax/newpax.ins b/macros/latex/contrib/newpax/newpax.ins index 62ec48b0c9..ccce1d73c0 100644 --- a/macros/latex/contrib/newpax/newpax.ins +++ b/macros/latex/contrib/newpax/newpax.ins @@ -2,7 +2,7 @@ File: newpax.ins -Copyright (C) 2021 Ulrike Fischer +Copyright (C) 2021,2022 Ulrike Fischer It may be distributed and/or modified under the conditions of the LaTeX Project Public License (LPPL), either version 1.3c of this @@ -34,7 +34,7 @@ for those people who are interested. \let\MetaPrefix\relax \preamble -Copyright (C) 2021 Ulrike Fischer +Copyright (C) 2021,2022 Ulrike Fischer It may be distributed and/or modified under the conditions of the LaTeX Project Public License (LPPL), either version 1.3c of diff --git a/macros/latex/contrib/newpax/newpax.pdf b/macros/latex/contrib/newpax/newpax.pdf index 9dd7df22bd..b2391a73ee 100644 --- a/macros/latex/contrib/newpax/newpax.pdf +++ b/macros/latex/contrib/newpax/newpax.pdf @@ -1,7 +1,7 @@ %PDF-1.7 % 7 0 obj -<< /Length 12182 >> +<< /Length 12144 >> stream /opacity1 gs 0 g 0 G @@ -24,7 +24,7 @@ BT 1 0 0 1 213.273 714.049 Tm [<004D003200720054001C0074>]TJ 0 g 0 G /F46 20.66252 Tf -1 0 0 1 285.943 714.049 Tm [<0054001C002B0046001C003B0032002D>-367<0070007900580038006B>]TJ +1 0 0 1 285.943 714.049 Tm [<0054001C002B0046001C003B0032002D>-367<0070007900580038006A>]TJ 0 g 0 G 0 g 0 G /F46 11.95517 Tf @@ -35,7 +35,7 @@ BT /F49 12.95146 Tf 1 0 0 1 342.914 666.569 Tm [<000B>]TJ /F49 14.3462 Tf -1 0 0 1 261.794 636.963 Tm [<0013001100130013000E0011001A000E00120012>]TJ +1 0 0 1 261.6 636.963 Tm [<0013001100130013000E0011001A000E00120016>]TJ 0 g 0 G /F46 14.3462 Tf 1 0 0 1 74.008 559.773 Tm [<0052>-500<0041004D006900600051>-31<002F006D002B006900420051004D>]TJ @@ -55,11 +55,10 @@ BT /F28 10.90909 Tf 1 0 0 1 466.587 439.085 Tm [<00240042004D002B0048006D002F00320054002F0037>]TJ /F49 10.90909 Tf -0.98 0 0 1 529.587 439.085 Tm [<0442005500490046>]TJ -1.006 0 0 1 74.409 425.536 Tm [<0042004F004F0050005500420055004A0050004F>-225<0044005000500053>19<0045004A004F0042005500460054>-224<004F0050>-225<004D0050004F004800460053>-225<004E0042004C0046>-225<00540046004F00540046>-225<00420054>-226<005500490046005A>-225<00450050004F>81<0445>76<0055>-225<0053>20<0046004700460053>-224<00550050>-226<005500490046>-225<0053>20<004600440046004A0057004A004F0048>-225<0051004200480046>-225<00090042004F0045>]TJ -0.98 0 0 1 74.409 411.987 Tm [<0050004700550046004F>-200<005500490046>-201<004200440055004A0050004F>-201<00500047>-200<0042004F>-201<0042004F004F0050005500420055004A0050004F>-200<0045005000460054004F>82<0445>78<0055>-200<004E0042004C0046>-200<00540046004F00540046>-201<0046004A0055004900460053000A000D>-207<00540050>-200<0042004D004D>-201<0035>103<00460039000E0046004F0048004A004F00460054>-199<0042004F0045>-201<004300420044004C0046004F00450054>]TJ -1.011 0 0 1 74.409 398.437 Tm [<005400550053>-8<004A0051>-223<005500490046004E>-223<004200580042005A>-223<005800490046004F>-224<004A004F0044004D00560045004A004F0048>-223<0042>-223<003100250027001B>-224<005500490046>-223<004F00460055>-223<0046056C004600440055>-223<004A0054>-224<0055004900420055>-223<00460059005500460053>-8<004F0042004D>-223<0042004F0045>-223<004A004F005500460053>-8<004F0042004D>-223<004D004A004F004C0054>-224<00420053>20<0046>]TJ -1 0 0 1 74.409 384.888 Tm [<004D005000540055000F>]TJ +1 0 0 1 72.773 425.536 Tm [<0443005500490046>-226<0042004F004F0050005500420055004A0050004F>-227<0044005000500053>19<0045004A004F0042005500460054>-225<004F0050>-227<004D0050004F004800460053>-226<004E0042004C0046>-227<00540046004F00540046>-227<00420054>-226<005500490046005A>-227<00450050004F>81<0445>76<0055>-225<0053>19<0046004700460053>-225<00550050>-227<005500490046>-227<0053>20<004600440046004A0057004A004F0048>-226<0051004200480046>]TJ +1.02 0 0 1 74.028 411.987 Tm [<00090042004F0045>-243<0050004700550046004F>-244<005500490046>-244<004200440055004A0050004F>-244<00500047>-244<0042004F>-243<0042004F004F0050005500420055004A0050004F>-244<0045005000460054004F>79<0445>75<0055>-243<004E0042004C0046>-244<00540046004F00540046>-244<0046004A0055004900460053000A000D>-249<00540050>-244<0042004D004D>-244<0035>99<00460039000E0046004F0048004A004F00460054>-243<0042004F0045>]TJ +0.997 0 0 1 74.409 398.437 Tm [<004300420044004C0046004F00450054>-225<005400550053>-9<004A0051>-225<005500490046004E>-226<004200580042005A>-226<005800490046004F>-226<004A004F0044004D00560045004A004F0048>-226<0042>-225<003100250027001B>-226<005500490046>-226<004F00460055>-226<0046056C004600440055>-226<004A0054>-225<0055004900420055>-226<00460059005500460053>-8<004F0042004D>-226<0042004F0045>-226<004A004F005500460053>-8<004F0042004D>]TJ +1 0 0 1 74.409 384.888 Tm [<004D004A004F004C0054>-225<00420053>20<0046>-225<004D005000540055000F>]TJ 1.02 0 0 1 74.071 364.564 Tm [<003500490046>]TJ /F28 10.90909 Tf @@ -452,7 +451,7 @@ endobj << /ExtGState 1 0 R /Font << /F46 10 0 R /F49 12 0 R /F28 14 0 R /F47 11 0 R /F81 35 0 R >> /ProcSet [ /PDF /Text ] >> endobj 38 0 obj -<< /Length 11036 >> +<< /Length 12664 >> stream /opacity1 gs 0 g 0 G @@ -486,9 +485,86 @@ BT 0 g 0 G 1 0 0 1 271.325 685.628 Tm [<004500500044000E005600540046000E004F00460058005100420059000F005500460059>]TJ 0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +/F47 10.90909 Tf +1 0 0 1 74.409 669.46 Tm [<0057>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 85.864 669.46 Tm [<0068003F0032>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 108.773 669.46 Tm [<004D003200740069>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 137.409 669.46 Tm [<002B0051004B004B001C004D002F>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 183.228 669.46 Tm [<004D00320032002F0062>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 217.591 669.46 Tm [<0047001C006800320073>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 251.955 669.46 Tm [<006B0079006B006B004000790065004000790052002D>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 320.682 669.46 Tm [<003700510060>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 343.591 669.46 Tm [<00510048002F00320060>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 377.955 669.46 Tm [<003700510060004B001C00690062>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 423.773 669.46 Tm [<006200320032>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 446.682 669.46 Tm [<002F0051002B006D004B0032004D0069001C006900420051004D>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 74.409 655.911 Tm [<0057>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 85.864 655.911 Tm [<00510037>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 103.046 655.911 Tm [<0054002F0037004B001C004D001C003B0032004B0032004D0069>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 177.5 655.911 Tm [<0040>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 183.228 655.911 Tm [<00690032006200690054003F001C00620032>]TJ +0 g 0 G /F28 10.90909 Tf -1 0 0 1 74.409 655.911 Tm [<0024005F0032005B006D0042006000320053001C002B0046001C003B003200260054002F0037004B001C004D001C003B0032004B0032004D0069004000690032006200690054003F001C006200320027>]TJ -1 0 0 1 74.409 642.362 Tm [<0024002E0032002B0048001C00600032002E0051002B006D004B0032004D0069004A00320069001C002F001C0069001C0026006D004D002B0051004B005400600032006200620027>]TJ +1 0 0 1 74.409 642.362 Tm [<0024002E0051002B006D004B0032004D0069004A00320069001C002F001C0069001C0026006D004D002B0051004B005400600032006200620027>]TJ 1 0 0 1 74.409 628.812 Tm [<0024>]TJ /F47 10.90909 Tf 1 0 0 1 80.137 628.812 Tm [<002F0051002B006D004B0032004D0069002B0048001C00620062>]TJ @@ -1558,7 +1634,7 @@ Q endstream endobj 103 0 obj -<< /Type /XObject /Subtype /Form /FormType 1 /PTEX.PageNumber 1 /PTEX.InfoDict << /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220911155604+02'00') /ModDate (D:20220911155604+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> /BBox [ 0 0 595.276 841.89 ] /Resources << /ExtGState 154 0 R /Font << /F15 155 0 R /F16 156 0 R /F28 157 0 R >> /ProcSet [ /PDF /Text ] >> /Length 4811 >> +<< /Type /XObject /Subtype /Form /FormType 1 /PTEX.PageNumber 1 /PTEX.InfoDict << /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220915203759+02'00') /ModDate (D:20220915203759+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> /BBox [ 0 0 595.276 841.89 ] /Resources << /ExtGState 154 0 R /Font << /F15 155 0 R /F16 156 0 R /F28 157 0 R >> /ProcSet [ /PDF /Text ] >> /Length 4811 >> stream /opacity1 gs BT @@ -1867,7 +1943,7 @@ Q endstream endobj 121 0 obj -<< /Type /XObject /Subtype /Form /FormType 1 /PTEX.PageNumber 2 /PTEX.InfoDict << /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220911155604+02'00') /ModDate (D:20220911155604+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> /BBox [ 0 0 595.276 841.89 ] /Resources << /ExtGState 154 0 R /Font << /F16 156 0 R /F15 155 0 R >> /ProcSet [ /PDF /Text ] >> /Length 303 >> +<< /Type /XObject /Subtype /Form /FormType 1 /PTEX.PageNumber 2 /PTEX.InfoDict << /Creator /Author /Title /Producer (LuaTeX-1.15.0) /CreationDate (D:20220915203759+02'00') /ModDate (D:20220915203759+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> /BBox [ 0 0 595.276 841.89 ] /Resources << /ExtGState 154 0 R /Font << /F16 156 0 R /F15 155 0 R >> /ProcSet [ /PDF /Text ] >> /Length 303 >> stream /opacity1 gs BT @@ -1920,10 +1996,10 @@ endobj << /Type /Annot /Subtype /Link /Border [0 0 1 ] /H /I /C [0.724708 0.4 0.717646 ] /A <> /BS <> /Rect [ 87.49 579.455 205.36 584.989 ] >> endobj 119 0 obj -<< /Type /Annot /Subtype /Link /Border [0 0 1 ] /H /I /C [0.444706 0.456472 0.680002 ] /A </D[ ]>> /BS <> /Rect [ 94.962 573.537 103.162 579.011 ] >> +<< /Type /Annot /Subtype /Link /Border [0 0 1 ] /H /I /C [0.444706 0.456472 0.680002 ] /A </Subtype/application#2Fpdf/Type/Filespec/UF >>/D(chapter.1)>> /BS <> /Rect [ 94.962 573.537 103.162 579.011 ] >> endobj 120 0 obj -<< /Type /Annot /Subtype /Link /Border [0 0 1 ] /H /I /C [0.444706 0.456472 0.680002 ] /A </D[ ]>> /BS <> /Rect [ 87.49 519.243 94.853 523.806 ] >> +<< /Type /Annot /Subtype /Link /Border [0 0 1 ] /H /I /C [0.444706 0.456472 0.680002 ] /A </Subtype/application#2Fpdf/Type/Filespec/UF >>/D[0 /Fit]>> /BS <> /Rect [ 87.49 519.243 94.853 523.806 ] >> endobj 123 0 obj << /Type /Annot /Subtype /Link /Border [0 0 1 ] /H /I /C [0.724708 0.4 0.717646 ] /A <> /BS <> /Rect [ 217.577 651.071 294.663 656.665 ] >> @@ -2013,7 +2089,7 @@ endobj << /ExtGState 1 0 R /Font << /F49 12 0 R /F28 14 0 R /F46 10 0 R /F47 11 0 R >> /XObject << /Fm1 104 0 R /Fm2 122 0 R >> /ProcSet [ /PDF /Text ] >> endobj 179 0 obj -<< /Length 11220 >> +<< /Length 14099 >> stream /opacity1 gs 0 g 0 G @@ -2067,198 +2143,273 @@ BT 0 g 0 G 1 0 0 1 91.766 607.5 Tm [<044C>]TJ 0 g 0 G -1.015 0 0 1 101.682 607.5 Tm [<00250050004F>80<0445>75<0055>-221<004A004F0044004D005600450046>-222<0031002500270054>-222<0058004A00550049>-222<0045004600540055004A004F00420055004A0050004F0054>-221<00550058004A00440046>-222<00420054>-222<00550049004A0054>-222<0058004A004D004D>-222<004D004600420045>-222<00550050>-222<004500560051004D004A0044004200550046>-222<0045004600540055004A004F00420055004A0050004F0054>]TJ -1 0 0 1 101.682 593.951 Tm [<0042004F0045>-225<00510045056E0042005500460059>-225<0058004A004D004D>-225<00440050004E0051004D0042004A004F000F>]TJ +1 0 0 1 101.682 607.5 Tm [<002A>18<004F>-225<00540050004E0046>-225<00440042005400460054>-225<005500490046>-225<0044004200550044005000450046>-225<00500047>-225<0004>-225<0042004F0045>-225<0006>-225<004E005600540055>-225<00430046>-225<005400460055>-225<00550050>-225<004D00460055005500460053>-225<00550050>-225<00420057>5<0050004A0045>-225<004600530053>6<005000530054>20<000F>]TJ +0 g 0 G +1 0 0 1 91.766 587.176 Tm [<044C>]TJ 0 g 0 G -1 0 0 1 91.766 573.627 Tm [<044C>]TJ +1.015 0 0 1 101.682 587.176 Tm [<00250050004F>80<0445>75<0055>-221<004A004F0044004D005600450046>-222<0031002500270054>-222<0058004A00550049>-222<0045004600540055004A004F00420055004A0050004F0054>-221<00550058004A00440046>-222<00420054>-222<00550049004A0054>-222<0058004A004D004D>-222<004D004600420045>-222<00550050>-222<004500560051004D004A0044004200550046>-222<0045004600540055004A004F00420055004A0050004F0054>]TJ +1 0 0 1 101.682 573.627 Tm [<0042004F0045>-225<00510045056E0042005500460059>-225<0058004A004D004D>-225<00440050004E0051004D0042004A004F000F>]TJ 0 g 0 G -1 0 0 1 101.682 573.627 Tm [<002A>6<0047>-225<0042004F004F0050005500420055004A0050004F0054>-225<0054004900500056004D0045>-225<004F00500055>-225<00430046>-225<0053>20<0046004A004F005400460053>-8<005500460045>-225<0053>20<0046004E0050>30<0057>5<0046>-225<005500490046>]TJ +1 0 0 1 91.766 553.303 Tm [<044C>]TJ +0 g 0 G +1 0 0 1 101.682 553.303 Tm [<002A>6<0047>-225<0042004F004F0050005500420055004A0050004F0054>-225<0054004900500056004D0045>-225<004F00500055>-225<00430046>-225<0053>20<0046004A004F005400460053>-8<005500460045>-225<0053>20<0046004E0050>30<0057>5<0046>-225<005500490046>]TJ /F28 10.90909 Tf -1 0 0 1 353.857 573.627 Tm [<00580054001C0074>]TJ +1 0 0 1 353.857 553.303 Tm [<00580054001C0074>]TJ /F49 10.90909 Tf -1 0 0 1 376.766 573.627 Tm [<000E056D004D0046>20<000F>]TJ +1 0 0 1 376.766 553.303 Tm [<000E056D004D0046>20<000F>]TJ 0 g 0 G -1 0 0 1 91.766 553.303 Tm [<044C>]TJ +1 0 0 1 91.766 532.979 Tm [<044C>]TJ 0 g 0 G -1.008 0 0 1 101.682 553.303 Tm [<002A>6<0047>]TJ +1.008 0 0 1 101.682 532.979 Tm [<002A>6<0047>]TJ /F28 10.90909 Tf -1 0 0 1 111.415 553.303 Tm [<003F0076005400320060006000320037>]TJ +1 0 0 1 111.415 532.979 Tm [<003F0076005400320060006000320037>]TJ 0 g 0 G /F49 10.90909 Tf -1.008 0 0 1 159.688 553.303 Tm [<004A0054>-223<004D00500042004500460045>-223<005A>5<00500056>-222<00440042004F>-223<004400490042004F00480046>-223<005500490046>-224<00440050004D00500053>-223<0042004F0045>-223<00540055005A004D0046>-223<00500047>-223<004D004A004F004C>-224<004300500053>19<0045004600530054>-222<0058004A00550049>-223<0049005A0051004600530053>19<00460047>]TJ -1 0 0 1 101.682 539.754 Tm [<005000510055004A0050004F0054>20<000F>]TJ +1.008 0 0 1 159.688 532.979 Tm [<004A0054>-223<004D00500042004500460045>-223<005A>5<00500056>-222<00440042004F>-223<004400490042004F00480046>-223<005500490046>-224<00440050004D00500053>-223<0042004F0045>-223<00540055005A004D0046>-223<00500047>-223<004D004A004F004C>-224<004300500053>19<0045004600530054>-222<0058004A00550049>-223<0049005A0051004600530053>19<00460047>]TJ +1 0 0 1 101.682 519.43 Tm [<005000510055004A0050004F0054>20<000F>]TJ 0 g 0 G 0 g 0 G -1 0 0 1 234.632 514.25 Tm [<002D004A00540055004A004F0048>-225<0015001B>]TJ +1 0 0 1 234.632 493.926 Tm [<002D004A00540055004A004F0048>-225<0015001B>]TJ 0 g 0 G -1 0 0 1 281.694 514.25 Tm [<004500500044000E005600540046000E005100420059000F005500460059>]TJ +1 0 0 1 281.694 493.926 Tm [<004500500044000E005600540046000E005100420059000F005500460059>]TJ 0 g 0 G /F28 10.90909 Tf -1 0 0 1 74.409 497.712 Tm [<0024>]TJ +1 0 0 1 74.409 477.388 Tm [<0024>]TJ /F47 10.90909 Tf -1 0 0 1 80.137 497.712 Tm [<002F0051002B006D004B0032004D0069002B0048001C00620062>]TJ +1 0 0 1 80.137 477.388 Tm [<002F0051002B006D004B0032004D0069002B0048001C00620062>]TJ /F28 10.90909 Tf -1 0 0 1 154.591 497.712 Tm [<0026001C006000690042002B004800320027>]TJ -1 0 0 1 74.409 484.162 Tm [<0024>]TJ +1 0 0 1 154.591 477.388 Tm [<0026001C006000690042002B004800320027>]TJ +1 0 0 1 74.409 463.839 Tm [<0024>]TJ /F47 10.90909 Tf -1 0 0 1 80.137 484.162 Tm [<006D006200320054001C002B0046001C003B0032>]TJ +1 0 0 1 80.137 463.839 Tm [<006D006200320054001C002B0046001C003B0032>]TJ /F28 10.90909 Tf -1 0 0 1 137.409 484.162 Tm [<0026004200370048006D001C006900320074002D003200690051005100480023005100740027>]TJ -1 0 0 1 74.409 470.613 Tm [<0024>]TJ +1 0 0 1 137.409 463.839 Tm [<0026004200370048006D001C006900320074002D003200690051005100480023005100740027>]TJ +1 0 0 1 74.409 450.289 Tm [<0024>]TJ /F47 10.90909 Tf -1 0 0 1 80.137 470.613 Tm [<006D006200320054001C002B0046001C003B0032>]TJ +1 0 0 1 80.137 450.289 Tm [<006D006200320054001C002B0046001C003B0032>]TJ /F28 10.90909 Tf -1 0 0 1 137.409 470.613 Tm [<00260054002F00370054001C003B003200620027>]TJ +1 0 0 1 137.409 450.289 Tm [<00260054002F00370054001C003B003200620027>]TJ 0 0.5 0 rg 0 0.5 0 RG /F47 10.90909 Tf -1 0 0 1 74.409 457.064 Tm [<0057>]TJ +1 0 0 1 74.409 436.74 Tm [<0057>]TJ 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG -1 0 0 1 80.137 457.064 Tm [<0054001C0074>]TJ +1 0 0 1 80.137 436.74 Tm [<0054001C0074>]TJ 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG -1 0 0 1 103.046 457.064 Tm [<004D00320032002F0062>]TJ +1 0 0 1 103.046 436.74 Tm [<004D00320032002F0062>]TJ 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG -1 0 0 1 137.409 457.064 Tm [<0069003F00420062>]TJ +1 0 0 1 137.409 436.74 Tm [<0069003F00420062>]TJ 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG -1 0 0 1 166.046 457.064 Tm [<00690051>]TJ +1 0 0 1 166.046 436.74 Tm [<00690051>]TJ 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG -1 0 0 1 183.228 457.064 Tm [<0060006D004D>]TJ +1 0 0 1 183.228 436.74 Tm [<0060006D004D>]TJ 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG -1 0 0 1 206.137 457.064 Tm [<007200420069003F>]TJ +1 0 0 1 206.137 436.74 Tm [<007200420069003F>]TJ 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG -1 0 0 1 234.773 457.064 Tm [<0048006D001C0048001C006900320074>]TJ +1 0 0 1 234.773 436.74 Tm [<0048006D001C0048001C006900320074>]TJ 0 g 0 G /F28 10.90909 Tf -1 0 0 1 74.409 443.515 Tm [<0024004200370048006D001C006900320074>]TJ -1 0 0 1 74.409 429.966 Tm [<0024>]TJ +1 0 0 1 74.409 423.191 Tm [<0024004200370048006D001C006900320074>]TJ +1 0 0 1 74.409 409.642 Tm [<0024>]TJ /F47 10.90909 Tf -1 0 0 1 80.137 429.966 Tm [<006D006200320054001C002B0046001C003B0032>]TJ +1 0 0 1 80.137 409.642 Tm [<006D006200320054001C002B0046001C003B0032>]TJ /F28 10.90909 Tf -1 0 0 1 137.409 429.966 Tm [<00260054002F0037006900320074002B004B002F00620027>]TJ -1 0 0 1 74.409 416.416 Tm [<0024>]TJ +1 0 0 1 137.409 409.642 Tm [<00260054002F0037006900320074002B004B002F00620027>]TJ +1 0 0 1 74.409 396.093 Tm [<0024>]TJ /F47 10.90909 Tf -1 0 0 1 80.137 416.416 Tm [<004B001C00460032001C0069004800320069006900320060>]TJ +1 0 0 1 80.137 396.093 Tm [<004B001C00460032001C0069004800320069006900320060>]TJ /F28 10.90909 Tf -1 0 0 1 74.409 402.867 Tm [<0024>]TJ +1 0 0 1 74.409 382.543 Tm [<0024>]TJ /F47 10.90909 Tf -1 0 0 1 80.137 402.867 Tm [<004800320069>]TJ +1 0 0 1 80.137 382.543 Tm [<004800320069>]TJ /F28 10.90909 Tf -1 0 0 1 97.319 402.867 Tm [<00240054002F0037006200690060002B004B005400240054002F00370021006200690060002B004B0054>]TJ -1 0 0 1 74.409 389.318 Tm [<0024>]TJ +1 0 0 1 97.319 382.543 Tm [<00240054002F0037006200690060002B004B005400240054002F00370021006200690060002B004B0054>]TJ +1 0 0 1 74.409 368.994 Tm [<0024>]TJ /F47 10.90909 Tf -1 0 0 1 80.137 389.318 Tm [<004800320069>]TJ +1 0 0 1 80.137 368.994 Tm [<004800320069>]TJ /F28 10.90909 Tf -1 0 0 1 97.319 389.318 Tm [<00240054002F003700320062002B001C00540032004D001C004B003200240054002F0037002100320062002B001C00540032004D001C004B0032>]TJ -1 0 0 1 74.409 375.769 Tm [<0024>]TJ +1 0 0 1 97.319 368.994 Tm [<00240054002F003700320062002B001C00540032004D001C004B003200240054002F0037002100320062002B001C00540032004D001C004B0032>]TJ +1 0 0 1 74.409 355.445 Tm [<0024>]TJ /F47 10.90909 Tf -1 0 0 1 80.137 375.769 Tm [<004B001C00460032001C006900510069003F00320060>]TJ +1 0 0 1 80.137 355.445 Tm [<004B001C00460032001C006900510069003F00320060>]TJ /F28 10.90909 Tf -1 0 0 1 74.409 362.22 Tm [<0024>]TJ +1 0 0 1 74.409 341.896 Tm [<0024>]TJ /F47 10.90909 Tf -1 0 0 1 80.137 362.22 Tm [<006D006200320054001C002B0046001C003B0032>]TJ +1 0 0 1 80.137 341.896 Tm [<006D006200320054001C002B0046001C003B0032>]TJ /F28 10.90909 Tf -1 0 0 1 137.409 362.22 Tm [<00260048006D001C006900320074003300380027>]TJ -1 0 0 1 74.409 348.67 Tm [<0024>]TJ +1 0 0 1 137.409 341.896 Tm [<00260048006D001C006900320074003300380027>]TJ +1 0 0 1 74.409 328.347 Tm [<0024>]TJ /F47 10.90909 Tf -1 0 0 1 80.137 348.67 Tm [<00370042>]TJ +1 0 0 1 80.137 328.347 Tm [<00370042>]TJ 0 0.5 0 rg 0 0.5 0 RG -1 0 0 1 74.409 335.121 Tm [<0057>]TJ +1 0 0 1 74.409 314.797 Tm [<0057>]TJ 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG -1 0 0 1 80.137 335.121 Tm [<00480051001C002F>]TJ +1 0 0 1 80.137 314.797 Tm [<00480051001C002F>]TJ 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG -1 0 0 1 108.773 335.121 Tm [<0054001C0074>]TJ +1 0 0 1 108.773 314.797 Tm [<0054001C0074>]TJ 0 g 0 G /F28 10.90909 Tf -1 0 0 1 74.409 321.572 Tm [<0024>]TJ +1 0 0 1 74.409 301.248 Tm [<0024>]TJ /F47 10.90909 Tf -1 0 0 1 80.137 321.572 Tm [<006D006200320054001C002B0046001C003B0032>]TJ +1 0 0 1 80.137 301.248 Tm [<006D006200320054001C002B0046001C003B0032>]TJ /F28 10.90909 Tf -1 0 0 1 137.409 321.572 Tm [<00260054001C00740027>]TJ +1 0 0 1 137.409 301.248 Tm [<00260054001C00740027>]TJ 0 0.5 0 rg 0 0.5 0 RG /F47 10.90909 Tf -1 0 0 1 74.409 308.023 Tm [<0057>]TJ +1 0 0 1 74.409 287.699 Tm [<0057>]TJ 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG -1 0 0 1 80.137 308.023 Tm [<002B0051006000600032002B0069>]TJ +1 0 0 1 80.137 287.699 Tm [<002B0051006000600032002B0069>]TJ 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG -1 0 0 1 125.955 308.023 Tm [<001C>]TJ +1 0 0 1 125.955 287.699 Tm [<001C>]TJ 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG -1 0 0 1 137.409 308.023 Tm [<0023006D003B>]TJ +1 0 0 1 137.409 287.699 Tm [<0023006D003B>]TJ 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG -1 0 0 1 160.319 308.023 Tm [<0042004D>]TJ +1 0 0 1 160.319 287.699 Tm [<0042004D>]TJ 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG -1 0 0 1 177.5 308.023 Tm [<0054001C0074>]TJ +1 0 0 1 177.5 287.699 Tm [<0054001C0074>]TJ 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG -1 0 0 1 200.409 308.023 Tm [<001C003700370032002B00690042004D003B>]TJ +1 0 0 1 200.409 287.699 Tm [<001C003700370032002B00690042004D003B>]TJ 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG 0 g 0 G 0 0.5 0 rg 0 0.5 0 RG -1 0 0 1 257.682 308.023 Tm [<002B00480042005400540042004D003B>]TJ +1 0 0 1 257.682 287.699 Tm [<002B00480042005400540042004D003B>]TJ 0 g 0 G /F28 10.90909 Tf -1 0 0 1 74.409 294.474 Tm [<0024>]TJ +1 0 0 1 74.409 274.15 Tm [<0024>]TJ /F47 10.90909 Tf -1 0 0 1 80.137 294.474 Tm [<004B001C00460032001C0069004800320069006900320060>]TJ +1 0 0 1 80.137 274.15 Tm [<004B001C00460032001C0069004800320069006900320060>]TJ /F28 10.90909 Tf -1 0 0 1 74.409 280.924 Tm [<00240054001C0069002B003F002B004B002F00240053001B007300210054002F00370021001C004D004D00510069002600240053001B007300210054001C003B00320048004800740027002600240053001B007300210054001C003B00320021004800480074002700260027002600240037001C004200480027>]TJ -1 0 0 1 74.409 267.375 Tm [<0024>]TJ +1 0 0 1 74.409 260.601 Tm [<00240054001C0069002B003F002B004B002F00240053001B007300210054002F00370021001C004D004D00510069002600240053001B007300210054001C003B00320048004800740027002600240053001B007300210054001C003B00320021004800480074002700260027002600240037001C004200480027>]TJ +0 0.5 0 rg 0 0.5 0 RG /F47 10.90909 Tf -1 0 0 1 80.137 267.375 Tm [<004B001C00460032001C006900510069003F00320060>]TJ +1 0 0 1 74.409 247.051 Tm [<0057>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 80.137 247.051 Tm [<001C0048004800510072>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 114.5 247.051 Tm [<003F001C0062003F00320062>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 154.591 247.051 Tm [<001C004D002F>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 177.5 247.051 Tm [<005400320060002B0032004D0069>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 223.319 247.051 Tm [<0042004D>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 240.5 247.051 Tm [<0069003F0032>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 263.409 247.051 Tm [<0054001C0074>]TJ +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 286.319 247.051 Tm [<0037004200480032>]TJ +0 g 0 G +/F28 10.90909 Tf +1 0 0 1 74.409 233.502 Tm [<00240054001C0069002B003F002B004B002F00240053001B00730021001B002F002F001B004D004D005100690062002600240041004D0054006D006900410037003600420048003200310074004200620069006200240053001B0073002100370042004800320026002700260024>]TJ +/F47 10.90909 Tf +1 0 0 1 389.409 233.502 Tm [<00690076005400320051006D0069>]TJ +/F28 10.90909 Tf +1 0 0 1 429.5 233.502 Tm [<00260020>-525<004A0042006200620042004D003B002C>-525<00240053001B007300210037004200480032002700270027>]TJ +1 0 0 1 79.319 219.953 Tm [<00260024>]TJ +/F47 10.90909 Tf +1 0 0 1 90.773 219.953 Tm [<00230032003B0042004D003B00600051006D0054>]TJ /F28 10.90909 Tf -1 0 0 1 74.409 253.826 Tm [<0024>]TJ +1 0 0 1 153.773 219.953 Tm [<0024>]TJ /F47 10.90909 Tf -1 0 0 1 80.137 253.826 Tm [<00230032003B0042004D>]TJ +1 0 0 1 159.5 219.953 Tm [<002B001C0069002B0051002F0032>]TJ /F28 10.90909 Tf -1 0 0 1 108.773 253.826 Tm [<0026002F0051002B006D004B0032004D00690027>]TJ -1 0 0 1 74.409 240.277 Tm [<00240042004D002B0048006D002F0032003B0060001C0054003F0042002B006200280062002B001C004800320034007900580038002D006900600042004B00340038002B004B>-525<00520038002B004B>-525<0033002B004B>-525<006A002B004B002D002B004800420054002D0054001C003B00320034006B00290026002F0051002B00400042004D0054006D006900520027>]TJ -1 0 0 1 74.409 226.728 Tm [<00240042004D002B0048006D002F0032003B0060001C0054003F0042002B006200280062002B001C004800320034007900580038002D006900600042004B00340038002B004B>-525<00520038002B004B>-525<0033002B004B>-525<006A002B004B002D002B004800420054002D0054001C003B00320034005200290026002F0051002B00400042004D0054006D006900520027>]TJ -1 0 0 1 74.409 199.629 Tm [<00240042004D002B0048006D002F00320054002F003700280054001C003B003200620034004000290026002F0051002B00400042004D0054006D0069006B0027>]TJ -1 0 0 1 74.409 186.08 Tm [<0024>]TJ +1 0 0 1 199.591 219.953 Tm [<003C0024004F00340052006B>-525<0024>]TJ /F47 10.90909 Tf -1 0 0 1 80.137 186.08 Tm [<0032004D002F>]TJ +1 0 0 1 245.409 219.953 Tm [<002B001C0069002B0051002F0032>]TJ /F28 10.90909 Tf -1 0 0 1 97.319 186.08 Tm [<0026002F0051002B006D004B0032004D00690027>]TJ +1 0 0 1 285.5 219.953 Tm [<003C0024>]TJ +0 0.5 0 rg 0 0.5 0 RG +/F47 10.90909 Tf +1 0 0 1 296.955 219.953 Tm [<0057>]TJ 0 g 0 G +0 0.5 0 rg 0 0.5 0 RG +1 0 0 1 302.682 219.953 Tm [<00340052006B>]TJ 0 g 0 G +/F28 10.90909 Tf +1 0 0 1 84.228 206.404 Tm [<00240041004D0054006D006900410037003600420048003200310074004200620069006200240053001B0073002100370042004800320026002700260024>]TJ +/F47 10.90909 Tf +1 0 0 1 261.773 206.404 Tm [<00690076005400320051006D0069>]TJ +/F28 10.90909 Tf +1 0 0 1 301.864 206.404 Tm [<00260020>-525<004A0042006200620042004D003B002C>-525<00240053001B007300210037004200480032002700270024>]TJ +/F47 10.90909 Tf +1 0 0 1 439.318 206.404 Tm [<0032004D002F003B00600051006D0054>]TJ +/F28 10.90909 Tf +1 0 0 1 485.137 206.404 Tm [<002700260027002600240037001C004200480027>]TJ +1 0 0 1 74.409 192.855 Tm [<0024>]TJ +/F47 10.90909 Tf +1 0 0 1 80.137 192.855 Tm [<004B001C00460032001C006900510069003F00320060>]TJ +/F28 10.90909 Tf +1 0 0 1 74.409 179.305 Tm [<0024>]TJ +/F47 10.90909 Tf +1 0 0 1 80.137 179.305 Tm [<00230032003B0042004D>]TJ +/F28 10.90909 Tf +1 0 0 1 108.773 179.305 Tm [<0026002F0051002B006D004B0032004D00690027>]TJ +1 0 0 1 74.409 165.756 Tm [<00240042004D002B0048006D002F0032003B0060001C0054003F0042002B006200280062002B001C004800320034007900580038002D006900600042004B00340038002B004B>-525<00520038002B004B>-525<0033002B004B>-525<006A002B004B002D002B004800420054002D0054001C003B00320034006B00290026002F0051002B00400042004D0054006D006900520027>]TJ +1 0 0 1 74.409 152.207 Tm [<00240042004D002B0048006D002F0032003B0060001C0054003F0042002B006200280062002B001C004800320034007900580038002D006900600042004B00340038002B004B>-525<00520038002B004B>-525<0033002B004B>-525<006A002B004B002D002B004800420054002D0054001C003B00320034005200290026002F0051002B00400042004D0054006D006900520027>]TJ +1 0 0 1 74.409 125.109 Tm [<00240042004D002B0048006D002F00320054002F003700280054001C003B003200620034004000290026002F0051002B00400042004D0054006D0069006B0027>]TJ 0 g 0 G 0 g 0 G 0 g 0 G @@ -2285,190 +2436,248 @@ endobj << /D [ 178 0 R /XYZ 74.409 771.732 null ] >> endobj 182 0 obj -<< /D [ 178 0 R /XYZ 74.409 528.278 null ] >> +<< /D [ 178 0 R /XYZ 74.409 507.955 null ] >> endobj 183 0 obj -<< /D [ 178 0 R /XYZ 74.409 511.261 null ] >> +<< /D [ 178 0 R /XYZ 74.409 490.937 null ] >> endobj 184 0 obj -<< /D [ 178 0 R /XYZ 74.409 497.712 null ] >> +<< /D [ 178 0 R /XYZ 74.409 477.388 null ] >> endobj 185 0 obj -<< /D [ 178 0 R /XYZ 74.409 484.162 null ] >> +<< /D [ 178 0 R /XYZ 74.409 463.839 null ] >> endobj 186 0 obj -<< /D [ 178 0 R /XYZ 74.409 470.613 null ] >> +<< /D [ 178 0 R /XYZ 74.409 450.289 null ] >> endobj 187 0 obj -<< /D [ 178 0 R /XYZ 74.409 457.064 null ] >> +<< /D [ 178 0 R /XYZ 74.409 436.74 null ] >> endobj 188 0 obj -<< /D [ 178 0 R /XYZ 74.409 443.515 null ] >> +<< /D [ 178 0 R /XYZ 74.409 423.191 null ] >> endobj 189 0 obj -<< /D [ 178 0 R /XYZ 74.409 429.966 null ] >> +<< /D [ 178 0 R /XYZ 74.409 409.642 null ] >> endobj 190 0 obj -<< /D [ 178 0 R /XYZ 74.409 416.416 null ] >> +<< /D [ 178 0 R /XYZ 74.409 396.093 null ] >> endobj 191 0 obj -<< /D [ 178 0 R /XYZ 74.409 402.867 null ] >> +<< /D [ 178 0 R /XYZ 74.409 382.543 null ] >> endobj 192 0 obj -<< /D [ 178 0 R /XYZ 74.409 389.318 null ] >> +<< /D [ 178 0 R /XYZ 74.409 368.994 null ] >> endobj 193 0 obj -<< /D [ 178 0 R /XYZ 74.409 375.769 null ] >> +<< /D [ 178 0 R /XYZ 74.409 355.445 null ] >> endobj 194 0 obj -<< /D [ 178 0 R /XYZ 74.409 362.22 null ] >> +<< /D [ 178 0 R /XYZ 74.409 341.896 null ] >> endobj 195 0 obj -<< /D [ 178 0 R /XYZ 74.409 348.67 null ] >> +<< /D [ 178 0 R /XYZ 74.409 328.347 null ] >> endobj 196 0 obj -<< /D [ 178 0 R /XYZ 74.409 335.121 null ] >> +<< /D [ 178 0 R /XYZ 74.409 314.797 null ] >> endobj 197 0 obj -<< /D [ 178 0 R /XYZ 74.409 321.572 null ] >> +<< /D [ 178 0 R /XYZ 74.409 301.248 null ] >> endobj 198 0 obj -<< /D [ 178 0 R /XYZ 74.409 308.023 null ] >> +<< /D [ 178 0 R /XYZ 74.409 287.699 null ] >> endobj 199 0 obj -<< /D [ 178 0 R /XYZ 74.409 294.474 null ] >> +<< /D [ 178 0 R /XYZ 74.409 274.15 null ] >> endobj 200 0 obj -<< /D [ 178 0 R /XYZ 74.409 280.924 null ] >> +<< /D [ 178 0 R /XYZ 74.409 260.601 null ] >> endobj 201 0 obj -<< /D [ 178 0 R /XYZ 74.409 267.375 null ] >> +<< /D [ 178 0 R /XYZ 74.409 247.051 null ] >> endobj 202 0 obj -<< /D [ 178 0 R /XYZ 74.409 253.826 null ] >> +<< /D [ 178 0 R /XYZ 74.409 233.502 null ] >> endobj 203 0 obj -<< /D [ 178 0 R /XYZ 74.409 240.277 null ] >> +<< /D [ 178 0 R /XYZ 74.409 219.953 null ] >> endobj 204 0 obj -<< /D [ 178 0 R /XYZ 74.409 226.728 null ] >> +<< /D [ 178 0 R /XYZ 74.409 206.404 null ] >> endobj 205 0 obj -<< /D [ 178 0 R /XYZ 74.409 213.178 null ] >> +<< /D [ 178 0 R /XYZ 74.409 192.855 null ] >> endobj 206 0 obj -<< /D [ 178 0 R /XYZ 74.409 199.629 null ] >> +<< /D [ 178 0 R /XYZ 74.409 179.305 null ] >> +endobj +207 0 obj +<< /D [ 178 0 R /XYZ 74.409 165.756 null ] >> +endobj +208 0 obj +<< /D [ 178 0 R /XYZ 74.409 152.207 null ] >> +endobj +209 0 obj +<< /D [ 178 0 R /XYZ 74.409 138.658 null ] >> endobj 177 0 obj << /ExtGState 1 0 R /Font << /F46 10 0 R /F47 11 0 R /F49 12 0 R /F28 14 0 R >> /ProcSet [ /PDF /Text ] >> endobj +212 0 obj +<< /Length 439 >> +stream +/opacity1 gs +0 g 0 G +0 g 0 G +0 g 0 G +0 g 0 G +0 g 0 G +0 g 0 G +0 g 0 G +0 g 0 G +BT +/F28 10.90909 Tf +1 0 0 1 74.409 760.773 Tm [<0024>]TJ +/F47 10.90909 Tf +1 0 0 1 80.137 760.773 Tm [<0032004D002F>]TJ +/F28 10.90909 Tf +1 0 0 1 97.319 760.773 Tm [<0026002F0051002B006D004B0032004D00690027>]TJ +0 g 0 G +0 g 0 G +0 g 0 G +0 g 0 G +0 g 0 G +0 g 0 G +/F49 10.90909 Tf +1 0 0 1 294.747 93.476 Tm [<0019>]TJ +0 g 0 G +0 g 0 G +0 g 0 G +0 g 0 G +0 g 0 G +0 g 0 G +ET + +endstream +endobj +211 0 obj +<< /Type /Page /Contents 212 0 R /Resources 210 0 R /MediaBox [ 0 0 595.276 841.89 ] /Parent 15 0 R >> +endobj +213 0 obj +<< /D [ 211 0 R /XYZ 73.409 809.993 null ] >> +endobj +214 0 obj +<< /D [ 211 0 R /XYZ 74.409 774.323 null ] >> +endobj +210 0 obj +<< /ExtGState 1 0 R /Font << /F28 14 0 R /F47 11 0 R /F49 12 0 R >> /ProcSet [ /PDF /Text ] >> +endobj 1 0 obj << /opacity1 <> >> endobj -207 0 obj +215 0 obj << /DisplayDocTitle true >> endobj -208 0 obj +216 0 obj << /S /GoTo /D (section.1) >> endobj -210 0 obj +218 0 obj (\376\377\000I\000n\000t\000r\000o\000d\000u\000c\000t\000i\000o\000n) endobj -211 0 obj +219 0 obj << /S /GoTo /D (section.2) >> endobj -213 0 obj +221 0 obj (\376\377\000Q\000u\000i\000c\000k\000\040\000u\000s\000e\000\040\000i\000n\000s\000t\000r\000u\000c\000t\000i\000o\000n\000s) endobj -214 0 obj +222 0 obj << /S /GoTo /D (subsection.2.1) >> endobj -216 0 obj +224 0 obj (\376\377\000S\000t\000e\000p\000\040\0001\000:\000\040\000e\000x\000t\000r\000a\000c\000t\000\040\000a\000n\000d\000\040\000c\000o\000l\000l\000e\000c\000t\000\040\000t\000h\000e\000\040\000a\000n\000n\000o\000t\000a\000t\000i\000o\000n\000s) endobj -217 0 obj +225 0 obj << /S /GoTo /D (subsection.2.2) >> endobj -219 0 obj +227 0 obj (\376\377\000S\000t\000e\000p\000\040\0002\000:\000\040\000U\000s\000i\000n\000g\000\040\000t\000h\000e\000\040\000.\000n\000e\000w\000p\000a\000x\000-\000f\000i\000l\000e\000\040\000w\000i\000t\000h\000\040\000n\000e\000w\000p\000a\000x) endobj -220 0 obj +228 0 obj << /S /GoTo /D (subsection.2.3) >> endobj -222 0 obj +230 0 obj (\376\377\000C\000o\000m\000b\000i\000n\000i\000n\000g\000\040\000t\000h\000e\000\040\000s\000t\000e\000p\000s) endobj -223 0 obj +231 0 obj << /S /GoTo /D (section.3) >> endobj -225 0 obj +233 0 obj (\376\377\000S\000e\000t\000u\000p\000\040\000o\000p\000t\000i\000o\000n\000s) endobj -226 0 obj +234 0 obj << /S /GoTo /D (section.4) >> endobj -228 0 obj +236 0 obj (\376\377\000M\000o\000r\000e\000\040\000B\000a\000c\000k\000g\000r\000o\000u\000n\000d) endobj -229 0 obj +237 0 obj << /S /GoTo /D (subsection.4.1) >> endobj -231 0 obj +239 0 obj (\376\377\000R\000e\000t\000r\000i\000e\000v\000i\000n\000g\000\040\000a\000n\000d\000\040\000s\000t\000o\000r\000i\000n\000g\000\040\000a\000n\000n\000o\000t\000a\000t\000i\000o\000n\000s) endobj -232 0 obj +240 0 obj << /S /GoTo /D (section.5) >> endobj -234 0 obj +242 0 obj (\376\377\000I\000m\000p\000o\000r\000t\000i\000n\000g\000\040\000a\000n\000n\000o\000t\000a\000t\000i\000o\000n\000s) endobj -235 0 obj +243 0 obj << /S /GoTo /D (section.6) >> endobj -237 0 obj +245 0 obj (\376\377\000E\000x\000a\000m\000p\000l\000e\000\040\000i\000n\000p\000u\000t) endobj -238 0 obj +246 0 obj << /S /GoTo /D (section.7) >> endobj -240 0 obj +248 0 obj (\376\377\000S\000u\000p\000p\000o\000r\000t\000\040\000f\000o\000r\000\040\000t\000h\000e\000\040\000p\000a\000x\000\040\000p\000a\000c\000k\000a\000g\000e) endobj -241 0 obj +249 0 obj << /S /GoTo /D (subsection.7.1) >> endobj -243 0 obj +251 0 obj (\376\377\000S\000t\000e\000p\000\040\0001\000:\000\040\000E\000x\000t\000r\000a\000c\000t\000i\000n\000g\000\040\000t\000h\000e\000\040\000a\000n\000n\000o\000t\000a\000t\000i\000o\000n\000s) endobj -244 0 obj +252 0 obj << /S /GoTo /D (subsection.7.2) >> endobj -246 0 obj +254 0 obj (\376\377\000S\000t\000e\000p\000\040\0002\000:\000\040\000U\000s\000i\000n\000g\000\040\000t\000h\000e\000\040\000.\000p\000a\000x\000-\000f\000i\000l\000e\000\040\000w\000i\000t\000h\000\040\000p\000a\000x\000.\000s\000t\000y) endobj -247 0 obj +255 0 obj [ 66 [ 561 ] 68 [ 441 587 453 ] 74 [ 317 ] 77 [ 306 ] 79 [ 618 537 ] 83 [ 402 389 341 618 510 ] ] endobj -249 0 obj +257 0 obj << /Length 11 >> stream .% endstream endobj -250 0 obj +258 0 obj << /Subtype /CIDFontType0C /Length 2094 >> stream ZZHGJH+Heuristica-ItalicA ! ~ -P " $H %ZZHGJH+Heuristica-Italic1.0.2Copyright (c) 1989, 1991 Adobe Systems Incorporated. All Rights Reserved. Utopia is either a registered trademark or trademark of Adobe Systems Incorporated in the United States and/or other countries. Used under license. The Utopia fonts are freely available; see http://tug.org/fonts/utopia. @@ -2479,10 +2688,10 @@ Heuristica ItalicHeuristicaAdobeIdentityBDEFJMOPSTUVW ˏ  endstream endobj -248 0 obj -<< /Type /FontDescriptor /FontName /ZZHGJH+Heuristica-Italic /Flags 4 /FontBBox [ -500 -326 1205 1110 ] /Ascent 950 /CapHeight 692 /Descent -250 /ItalicAngle -13 /StemV 88 /XHeight 490 /FontFile3 250 0 R /CIDSet 249 0 R >> +256 0 obj +<< /Type /FontDescriptor /FontName /ZZHGJH+Heuristica-Italic /Flags 4 /FontBBox [ -500 -326 1205 1110 ] /Ascent 950 /CapHeight 692 /Descent -250 /ItalicAngle -13 /StemV 88 /XHeight 490 /FontFile3 258 0 R /CIDSet 257 0 R >> endobj -251 0 obj +259 0 obj << /Length 861 >> stream %!PS-Adobe-3.0 Resource-CMap @@ -2532,30 +2741,30 @@ end endstream endobj 35 0 obj -<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /ZZHGJH+Heuristica-Italic /DescendantFonts [ 252 0 R ] /ToUnicode 251 0 R >> +<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /ZZHGJH+Heuristica-Italic /DescendantFonts [ 260 0 R ] /ToUnicode 259 0 R >> endobj -252 0 obj -<< /Type /Font /Subtype /CIDFontType0 /BaseFont /ZZHGJH+Heuristica-Italic /FontDescriptor 248 0 R /W 247 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >> +260 0 obj +<< /Type /Font /Subtype /CIDFontType0 /BaseFont /ZZHGJH+Heuristica-Italic /FontDescriptor 256 0 R /W 255 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >> endobj -253 0 obj -[ 27 [ 525 525 ] 33 [ 525 525 525 525 ] 38 [ 525 525 525 525 525 525 525 525 525 525 ] 49 [ 525 525 525 525 ] 54 [ 525 525 525 525 ] 59 [ 525 ] 61 [ 525 525 525 525 525 525 ] 68 [ 525 ] 70 [ 525 525 525 525 525 525 ] 77 [ 525 ] 80 [ 525 525 525 525 525 525 525 ] 88 [ 525 ] 91 [ 525 ] 93 [ 525 ] 95 [ 525 525 525 525 ] 100 [ 525 525 525 ] 104 [ 525 525 525 525 525 525 525 ] 112 [ 525 525 525 525 525 ] 118 [ 525 ] 121 [ 525 ] ] +261 0 obj +[ 27 [ 525 525 ] 32 [ 525 525 525 525 525 ] 38 [ 525 525 525 525 525 525 525 525 525 525 ] 49 [ 525 525 525 525 ] 54 [ 525 525 525 525 ] 59 [ 525 525 525 525 525 525 525 525 ] 68 [ 525 ] 70 [ 525 525 525 525 525 525 ] 77 [ 525 ] 79 [ 525 525 525 525 525 525 525 525 ] 88 [ 525 ] 91 [ 525 ] 93 [ 525 ] 95 [ 525 525 525 525 ] 100 [ 525 525 525 ] 104 [ 525 525 525 525 525 525 525 ] 112 [ 525 525 525 525 525 ] 118 [ 525 ] 121 [ 525 ] ] endobj -255 0 obj +263 0 obj << /Length 16 >> stream -{{@ +{@ endstream endobj -256 0 obj -<< /Subtype /CIDFontType0C /Length 8164 >> +264 0 obj +<< /Subtype /CIDFontType0C /Length 8551 >> stream -POXPUQ+LMMono10-RegularH!"   ;  Wo. " $& % -POXPUQ+LMMono10-Regular2.004Copyright 2003, 2009 B. Jackowski and J. M. Nowacki (on behalf of TeX users groups). This work is released under the GUST Font License -- see http://tug.org/fonts/licenses/GUST-FONT-LICENSE.txt for details.LMMono10-RegularLMMono10NormalAdobeIdentity!"#$&'()*+,-./12346789;=>?@ABDFGHIJKMPQRSTUVX[]_`abdefhijklmnpqrstvyGG{|[u5Z p M -> -  ~ G M #VDFe)S#S nhRA!wOOu| }ln{e }t~mwg6#gwlm=XT{xr|alU$`%Bm{׿lDEY+FJɒ@l=tvdyzg^Mb%ȾȾEtozkhei*")򧸁Noj;J5 :ռA̋{DHG ĨSu:^R`\a߹µQ:v^|[v;[:ˡNv}qml}p{rlmt1bkI*$^MjZdP4vB^|l2![^yliJiB{rlmwvaF+EJE=hB4f[Guw|zyGz8xgWr5T㍮syE~3zYo1g|g{|gYtwsmU:m^nt„8xgss;W[Lhzrlqgj5cktSk\Fng%wslܚ8#rwVs{,#,s{IjkKlI8#}aKiI|rml,#,|rmlIx<stn):sb05*)]:z{my~rj]XJKsfn{w~x\A6C滧h}#^@O3 %I\mkerllfqmkerllfq\&d_ctmker|M\{yw|z}y45*b{rlm}u{rlmb 5F Q+}T.FF.~q}^iB{rlm2jb`+,*õNg}.7S^8>DO˼STu_и\ihvwFub{ih{b_Vxui |qml}m{rlmȋpdnyxXuUo@@{K +'&D"ԙr$]TT,tBJAۦ6 7<:RYq@vKP@*38RM_BBMÿû[WFIS8R8ILNWzf}}fhh,jjhhjjи~i{rlm}j{rlm.s{Wjb{ih{bjVxuLI;{;>]4V'{rlm&|qmlq|&s{΋d5lR> +NXAEHY+LMMono10-RegularH!"   ;  Wo4 "! $, % +NXAEHY+LMMono10-Regular2.004Copyright 2003, 2009 B. Jackowski and J. M. Nowacki (on behalf of TeX users groups). This work is released under the GUST Font License -- see http://tug.org/fonts/licenses/GUST-FONT-LICENSE.txt for details.LMMono10-RegularLMMono10NormalAdobeIdentity !"#$&'()*+,-./12346789;<=>?@ABDFGHIJKMOPQRSTUVX[]_`abdefhijklmnpqrstvyJJ{ ZSn( n +  F A d + _Do ]6yG7C$ Wz'aMA!wOOu| }ln{e }t~mwg6#gwlm=XT{xr|alU$`%Bm{׿lDEY+FJɒ@l=tvdyzg^Mb%y\jrGqcCͨjjjnIq}w~y|xPP~wnqInj͉ifa{ȾȾEtozkhei*")򧸁Noj;J5 :ռA̋{DHG ĨSu:^R`\a߹µQ:v^|[v;[:ˡNv}qml}p{rlmt1bkI*$^MjZdP4vB^|l2![^yliJiB{rlmwvaF+EJE=hB4f[Guw|zyGz8xgWr5T㍮syE~3zYo1g|g{|gYtwsmU:m^nt„8xgss;W[Lhzrlqgj5cktSk\Fng%wslܚ8#rwVs{,#,s{IjkKlI8#}aKiI|rml,#,|rmlIx<stn):sb05*)]:z{my~rj]XJKsfn{w~x\A6C滧h}#^@O3 %I\mkerllfqmkerllfq\&d_ctmker|M\{yw|z}y45*b{rlm}u{rlmb 5F Q+}T.FF.~q}^iB{rlm2jb`+,*õNg}.7S^8>DO˼STu_и\ihvwFub{ih{b_Vxui |qml}m{rlmȋpdnyxXuUo@@{K +'&D"ԙr$]TT,tBJAۦ6 7<:RYq@vKP@*38RM_BBMÿû[WFIS8R8ILNWzf}}fhh,jjhhjjи~i{rlm}j{rlm.s{Wjb{ih{bjVxuLI;{;>]4V'{rlm&|qmlq|&s{΋d5lR> h_ubRs{jkytݸBJ;DO7oKotv|md8Ew[s{=iosw~x~wjM{slmHs{MBrryA?mxRHqŇQxUZi] -{h]-D@6`jx{umhrA^G5NA yX~a1E~|"t2@zpHR__WUa̐ķ\V_@`''@5he}{xtxII~xtcv^hs{r}s{ |rml^h^s{ {slm}r{slm s{rvhvr|rml Tr{_|XIi~xn__|v8`i~xn__|vjjIaПstmfzoʋt}Ͱȴ? +{h]-D@6`jx{umhrA^G5NA yX~a1E~|"t2@zpHR__WUa̐ķ\V_@`''@5vw}w||w~Phe}{xtxII~xtcv^hs{r}s{ |rml^h^s{ {slm}r{slm s{rvhvr|rml Tr{_|Xhhhy&Zhhh{yz{yz:Iy&$&hvMMvppMLFMDUSqv23rɋϖƘ֮T\@Ngl..(,F.M@AAMJ0wNs{0mxe6Wx{vor:0{slmLt@At|qml}m{rlmq|mLFV`F+!FVr/Tз |l2![^ylieB{rlm_{rlm3r{_baF+EJE=hB4AIUy]qn` 1YBS ]hV@srw|85J'f0||w`\mkerllfqr/Ts{ZihzepbR%,*ϹkZ|rml;2RZ99AJָ>Ii~xn__|v8`i~xn__|vjjIaПstmfzoʋt}Ͱȴ? E{slm}r{slm s{rjovuaJmkm{ʣͱ2Z^Q0CjP[T-Ћ0{ 8XKyLTتi|rml:|rmlq|$ swJкell:gbp=:ae -lumszmbU^@<6HIspw4W`P8s{8ihvw94{rlm+gܶZO cntB\IïB E[Fj}ҋϽg^m|hpukqrgR|nlHQNSL0c>qxrtu|k2Qrnlihxoƾֶù & @@ -2563,21 +2772,21 @@ h_ YY$s{ |rmls{ {slmin444q|<{slm_NWo\Ztwu\\MW s{<|qlmh~^yr[[%syysmlY~yhxucwWtxysmlt|ȝ㌙W z}MBMWMAM0Mq|t!tq|#|rmlD&>&r|#|qml uu{slmstVVtulmZTZZLZq|c5(q| |rmlA&?r| |qlm (5c|qlm vloulm xN_[YHFY$s{ |rmlCi~fyl.s{ {slm"r7~rnTg|@yrpzyqac/[nN%'JNJF(J ==J -(&)' &:C=JTl/ +(&)' &:!-C=JTl/  endstream endobj -254 0 obj -<< /Type /FontDescriptor /FontName /POXPUQ+LMMono10-Regular /Flags 4 /FontBBox [ -451 -316 731 1016 ] /Ascent 1016 /CapHeight 611 /Descent -316 /ItalicAngle 0 /StemV 175 /XHeight 431 /FontFile3 256 0 R /CIDSet 255 0 R >> +262 0 obj +<< /Type /FontDescriptor /FontName /NXAEHY+LMMono10-Regular /Flags 4 /FontBBox [ -451 -316 731 1016 ] /Ascent 1016 /CapHeight 611 /Descent -316 /ItalicAngle 0 /StemV 175 /XHeight 431 /FontFile3 264 0 R /CIDSet 263 0 R >> endobj -257 0 obj -<< /Length 1654 >> +265 0 obj +<< /Length 1696 >> stream %!PS-Adobe-3.0 Resource-CMap %%DocumentNeededResources: ProcSet (CIDInit) %%IncludeResource: ProcSet (CIDInit) -%%BeginResource: CMap (TeX-POXPUQ-LMMono10-Regular-0) -%%Title: (TeX-POXPUQ-LMMono10-Regular-0 TeX POXPUQ-LMMono10-Regular 0) +%%BeginResource: CMap (TeX-NXAEHY-LMMono10-Regular-0) +%%Title: (TeX-NXAEHY-LMMono10-Regular-0 TeX NXAEHY-LMMono10-Regular 0) %%Version: 1.000 %%EndComments /CIDInit /ProcSet findresource begin @@ -2585,19 +2794,20 @@ stream begincmap /CIDSystemInfo << /Registry (TeX) -/Ordering (POXPUQ-LMMono10-Regular) +/Ordering (NXAEHY-LMMono10-Regular) /Supplement 0 >> def -/CMapName /TeX-Identity-POXPUQ-LMMono10-Regular def +/CMapName /TeX-Identity-NXAEHY-LMMono10-Regular def /CMapType 2 def 1 begincodespacerange <0000> endcodespacerange 0 beginbfrange endbfrange -70 beginbfchar +73 beginbfchar <001B> <0041> <001C> <0061> +<0020> <002A> <0021> <0040> <0022> <0042> <0023> <0062> @@ -2621,6 +2831,7 @@ endbfrange <0038> <0035> <0039> <0034> <003B> <0067> +<003C> <0060> <003D> <003E> <003E> <0048> <003F> <0068> @@ -2635,6 +2846,7 @@ endbfrange <004A> <004D> <004B> <006D> <004D> <006E> +<004F> <0023> <0050> <004F> <0051> <006F> <0052> <0031> @@ -2677,55 +2889,57 @@ end endstream endobj 14 0 obj -<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /POXPUQ+LMMono10-Regular /DescendantFonts [ 258 0 R ] /ToUnicode 257 0 R >> +<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /NXAEHY+LMMono10-Regular /DescendantFonts [ 266 0 R ] /ToUnicode 265 0 R >> endobj -258 0 obj -<< /Type /Font /Subtype /CIDFontType0 /BaseFont /POXPUQ+LMMono10-Regular /FontDescriptor 254 0 R /W 253 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >> +266 0 obj +<< /Type /Font /Subtype /CIDFontType0 /BaseFont /NXAEHY+LMMono10-Regular /FontDescriptor 262 0 R /W 261 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >> endobj -259 0 obj -[ 2 [ 242 ] 9 [ 350 350 412 ] 13 [ 265 392 265 460 530 530 530 530 530 530 530 530 ] 26 [ 530 265 265 ] 33 [ 793 635 646 684 779 606 580 ] 41 [ 798 349 ] 45 [ 568 ] 48 [ 762 600 ] 51 [ 644 541 621 791 ] 56 [ 940 624 588 ] 66 [ 523 598 496 598 514 319 520 607 291 280 524 279 923 619 577 608 591 389 436 344 606 504 768 486 506 ] 1090 [ 500 1000 ] 1093 [ 278 ] 1095 [ 458 458 ] 1100 [ 409 ] 1388 [ 638 610 610 929 ] ] +267 0 obj +[ 2 [ 242 ] 4 [ 530 ] 6 [ 838 ] 9 [ 350 350 412 ] 13 [ 265 392 265 460 530 530 530 530 530 530 530 530 530 530 265 265 ] 33 [ 793 635 646 684 779 606 580 ] 41 [ 798 349 ] 45 [ 568 ] 48 [ 762 600 ] 51 [ 644 541 621 791 ] 56 [ 940 624 588 ] 66 [ 523 598 496 598 514 319 520 607 291 280 524 279 923 619 577 608 591 389 436 344 606 504 768 486 506 ] 1091 [ 1000 ] 1093 [ 278 ] 1095 [ 458 458 ] 1100 [ 409 ] 1388 [ 638 610 610 929 ] ] endobj -261 0 obj +269 0 obj << /Length 174 >> stream - wd?5 +*wd? endstream endobj -262 0 obj -<< /Subtype /CIDFontType0C /Length 8652 >> +270 0 obj +<< /Subtype /CIDFontType0C /Length 9042 >> stream -XBNXDH+Heuristica-Regular@ ! T/p "!{ $ %XBNXDH+Heuristica-Regular1.0.2Copyright (c) 1989, 1991 Adobe Systems Incorporated. All Rights Reserved. Utopia is either a registered trademark or trademark of Adobe Systems Incorporated in the United States and/or other countries. Used under license. The Utopia fonts are freely available; see http://tug.org/fonts/utopia. +FDJNIX+Heuristica-Regular@ ! T/p "# $ %FDJNIX+Heuristica-Regular1.0.2Copyright (c) 1989, 1991 Adobe Systems Incorporated. All Rights Reserved. Utopia is either a registered trademark or trademark of Adobe Systems Incorporated in the United States and/or other countries. Used under license. The Utopia fonts are freely available; see http://tug.org/fonts/utopia. Copyright (c) 2008-2012 Andrey V. Panov (panov@canopus.iacp.dvo.ru). -Heuristica RegularHeuristicaAdobeIdentity - !"#$%&')*-01345689:BCDEFGHIJKLMNOPQRSTUVWXYZBCEGHLlmnoJJJ";*A\ y K -& -` -   P xTJ~NAx%`?hOll@D@H@'++*`'w -CCTUu^gpsderof}NmCQ/ʘC^mN}C$rCmNN^mCr~5/6Q?WwC`{wfz+duwwy{x.tzx~F{u+z}w}>Jrrw-z?|y|u!x͋melysqgy`bqckhSllѾgpsderofvfw|΋ffHV\&99&\\P&99P&\7((77p(,,p(7Vwvܨ7vᆑbhrnyx7Vͮ2ovUwcո/"D8Wi{ϲɋ؋JB UO4> `Gx=VRj?`D!%Tⳋ4 J?`lzϱËڞESOv@6[p~yz>4 PaDI`xÅ}yhxgV'Nw\v%isKn^t$NB-B/0ӥ V9]G9 3 TPsknOφ⋁w\$a=4EgwĆ}wjwjVsl"*(7 Jrrw-z?|y|u!x͋melysqgy`bqckhSllѾgpsderofvfw|΋ffHV\&99&\\P&99P&\7((77p(,,p(7Vwvܨ7vᆑbhrnyx7Vͮ2ovUwcո/"D8Wi{ϲɋ؋JB UO4> `Gx=VRj?`D!%Tⳋ4 J?`lzϱËڞESOv@6[p~yz>4 PaDI`xÅ}yhxgV'Nw\v%isKn^t$NB-B/0ӥ V9]G9 3 TPsknOφ⋁w\$a=4EgwĆ}wjwjVsl"*(7 GkECCkVخ]KɋL:yFyIhYKGr|zxowl_N ܋ɩĤ%rdeTK/6۲,*zw{{\dkV=^=gpsderof gpsderof!q4`=gpsderofxx͋melysqgy`bqckhf|(/DlB%;ɋܖɭ^xIQuI4KD]"1;$D+Hu{Jx~tFA`AJyڋ㧽mrx\{ 6RbY*jAx.-FDuwnpWmǠɢtSnk^nQyhA"l4a h0vULmʋԮ~@, 7*ŋ؋ucdQ;nㅍSS3QM! 9k5;{mp$)Ld#| O} -OMtۋ硻;mo#X?b`_ 88Na 0^?0(gOHRKi5XGG8B>nㅍSS3Qoh=H<4zƱAmt^{\gvvq sLgmMs6 r#8nㅍSS3$~ sKjmKs6 t%4nㅍSS3ḵ4S3n4ÎnㅍSppÎnㅍSS3~4ÎnㅍSS3|̩GmwT~"YgvvsÎnㅍSS3G| N/OLiݭǪlUS99iSLUOl/'GFFG''`GFF`G'$S؟j^[KEnㅍSS3QP9^5P|ȋ{at}NjxGo<]KuƋܨ={Ây!ʋOCnㅍSS3Qp "T]*a| vAa4bxыE ; kHSNjԷߋዻZ&!iGGN"Tfz]25TW2-Mree8 S nӨ  u:d| +ㅍSPVi)sÎnㅍS,|Omclc_wQR_lm|NjÎv+~+ƈP<''؋1SLG׋㙱ŖɏynɅ}vfu9r-ARMRMTL@-W@_xK|ڼ,xxTnCnXڶƎqnwfM_H[FXnʉU4Q7;bTi^KM)+a$(vzw)T$n˨$- ‘ΎonxrOGV#QW_냝ƑO>U@HŋƲft}u|yz~+2PTk|մw;arq*rLj75dk+&^Njʗ5 ;C ~zڗʃboT]-U-A-`Uvendhe`}CsCv@;CeD6P=g*7__QS\7w~F~ϰe4ZEnFT.B^iLaʄ0rrgZE; "grrggrrgO"D-1rrgXC2"grrggrrgs}1rriCEvbyhivN|PuV^wwD;J4VfֈmrlM=e«ő$iwsnh(tih1rreXCċ]wD1rreXC苨7rr8D~‹LMXCnD~Ëʱg2XCnDU,9PThuseE>LYhq/rrgXC7~D~ϰe4XCnDT/A]gMc})rrgXCP6,5566<55<,67_7//_zQ=]n7.b~CJBQZdr~+rrgXE=8q@'];'Wc{zQ=}46 ËXX@nFp`leX`;Ls_^_^qJ1yX{ys=uz{xVevT(`VYЫ2~ح{}dgmuIQ,rrgXE'PwGM;k{Ƌ ʋU$bIËҋTN jX^AX,8fr}tGXckV:^w.V%suriknN?a;w|XghŨ|O4F-1rrguout][nWQ`脑1r -a_ iFz|ztm|k|jyyxrpnso(FѝTnw|OW+_ ] cf􅝉y8qq5q|q||zw|{΋kjmyvpgvfeselgrUkjzY]GHDHUkjzY]GHDzw|{΋kjmyvpgvfeselgH{΋kjmyvpgvfeselgBT3CB54BB4‹9^wuܩVXCn:uXCn0ꮕQa;T\rrethVIhu篖Q^>U^rreth]Ip>9wuuܩVXCn:UhXCnD3jO;&'ΣlUM@NqfagbyRGy>9muVXCn00ƧrWXCnDLoo`UDStfdhgxT=v>9^wuuީVXCn:uXCn:UhXCnD3jO;&'ΣlUM&:1$yu篖Q^>U^rreth]Ip> &=!|Hm:ɋ0J7|/ +a_ iFz|ztm|k|jyyxrpnso(FѝTnw|OW+_ ] cf􅝉y5q|q||zw|{΋kjmyvpgvfeselgrUkjzY]GHDHUkjzY]GHDzw|{΋kjmyvpgvfeselgH{΋kjmyvpgvfeselgBT3CB54BB4‹9^wuܩVXCn:uXCn0ꮕQa;T\rrethVIhu篖Q^>U^rreth]Ip>9wuuܩVXCn:UhXCnD3jO;&'ΣlUM@NqfagbyRGy>9muVXCn00ƧrWXCnDLoo`UDStfdhgxT=v>9^wuuީVXCn:uXCn:UhXCnD3jO;&'ΣlUM&:1$yu篖Q^>U^rreth]Ip> &=#|Hm:ɋ0J7|/  endstream endobj -260 0 obj -<< /Type /FontDescriptor /FontName /XBNXDH+Heuristica-Regular /Flags 4 /FontBBox [ -500 -448 1158 1110 ] /Ascent 950 /CapHeight 692 /Descent -250 /ItalicAngle 0 /StemV 88 /XHeight 490 /FontFile3 262 0 R /CIDSet 261 0 R >> +268 0 obj +<< /Type /FontDescriptor /FontName /FDJNIX+Heuristica-Regular /Flags 4 /FontBBox [ -500 -448 1158 1110 ] /Ascent 950 /CapHeight 692 /Descent -250 /ItalicAngle 0 /StemV 88 /XHeight 490 /FontFile3 270 0 R /CIDSet 269 0 R >> endobj -263 0 obj -<< /Length 1726 >> +271 0 obj +<< /Length 1754 >> stream %!PS-Adobe-3.0 Resource-CMap %%DocumentNeededResources: ProcSet (CIDInit) %%IncludeResource: ProcSet (CIDInit) -%%BeginResource: CMap (TeX-XBNXDH-Heuristica-Regular-0) -%%Title: (TeX-XBNXDH-Heuristica-Regular-0 TeX XBNXDH-Heuristica-Regular 0) +%%BeginResource: CMap (TeX-FDJNIX-Heuristica-Regular-0) +%%Title: (TeX-FDJNIX-Heuristica-Regular-0 TeX FDJNIX-Heuristica-Regular 0) %%Version: 1.000 %%EndComments /CIDInit /ProcSet findresource begin @@ -2733,18 +2947,20 @@ stream begincmap /CIDSystemInfo << /Registry (TeX) -/Ordering (XBNXDH-Heuristica-Regular) +/Ordering (FDJNIX-Heuristica-Regular) /Supplement 0 >> def -/CMapName /TeX-Identity-XBNXDH-Heuristica-Regular def +/CMapName /TeX-Identity-FDJNIX-Heuristica-Regular def /CMapType 2 def 1 begincodespacerange <0000> endcodespacerange 0 beginbfrange endbfrange -73 beginbfchar +75 beginbfchar <0002> <0021> +<0004> <0023> +<0006> <0025> <0009> <0028> <000A> <0029> <000B> <002A> @@ -2760,6 +2976,7 @@ endbfrange <0016> <0035> <0017> <0036> <0018> <0037> +<0019> <0038> <001A> <0039> <001B> <003A> <001C> <003B> @@ -2807,7 +3024,6 @@ endbfrange <0058> <0077> <0059> <0078> <005A> <0079> -<0442> <2013> <0443> <2014> <0445> <2019> <0447> <201C> @@ -2828,41 +3044,41 @@ end endstream endobj 12 0 obj -<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /XBNXDH+Heuristica-Regular /DescendantFonts [ 264 0 R ] /ToUnicode 263 0 R >> +<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /FDJNIX+Heuristica-Regular /DescendantFonts [ 272 0 R ] /ToUnicode 271 0 R >> endobj -264 0 obj -<< /Type /Font /Subtype /CIDFontType0 /BaseFont /XBNXDH+Heuristica-Regular /FontDescriptor 260 0 R /W 259 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >> +272 0 obj +<< /Type /Font /Subtype /CIDFontType0 /BaseFont /FDJNIX+Heuristica-Regular /FontDescriptor 268 0 R /W 267 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >> endobj -265 0 obj -[ 28 [ 525 ] 35 [ 525 525 ] 43 [ 525 ] 45 [ 525 ] 47 [ 525 ] 50 [ 525 ] 55 [ 525 ] 59 [ 525 ] 63 [ 525 ] 66 [ 525 ] 70 [ 525 ] 72 [ 525 ] 75 [ 525 ] 77 [ 525 ] 81 [ 525 ] 84 [ 525 ] 87 [ 525 525 ] 91 [ 525 ] 94 [ 525 ] 96 [ 525 ] 98 [ 525 ] 102 [ 525 ] 105 [ 525 ] 109 [ 525 ] 112 [ 525 ] 114 [ 525 ] 116 [ 525 ] 118 [ 525 ] ] +273 0 obj +[ 28 [ 525 ] 35 [ 525 525 ] 43 [ 525 ] 45 [ 525 ] 47 [ 525 ] 50 [ 525 ] 52 [ 525 ] 55 [ 525 ] 59 [ 525 ] 63 [ 525 525 ] 66 [ 525 ] 70 [ 525 525 525 ] 75 [ 525 ] 77 [ 525 ] 81 [ 525 525 ] 84 [ 525 ] 87 [ 525 525 ] 91 [ 525 ] 94 [ 525 ] 96 [ 525 ] 98 [ 525 ] 101 [ 525 525 ] 104 [ 525 525 ] 107 [ 525 ] 109 [ 525 ] 112 [ 525 ] 114 [ 525 525 525 ] 118 [ 525 ] 121 [ 525 ] ] endobj -267 0 obj -<< /Length 15 >> +275 0 obj +<< /Length 16 >> stream -!"ID +)iԺ@ endstream endobj -268 0 obj -<< /Subtype /CIDFontType0C /Length 3828 >> +276 0 obj +<< /Subtype /CIDFontType0C /Length 4658 >> stream -SRVENG+LMMonoLt10-BoldH !  7  Zr " $ % SRVENG+LMMonoLt10-Bold2.004Copyright 2003, 2009 B. Jackowski and J. M. Nowacki (on behalf of TeX users groups). This work is released under the GUST Font License -- see http://tug.org/fonts/licenses/GUST-FONT-LICENSE.txt for details.LMMonoLt10-BoldLMMonoLt10AdobeIdentity#$+-/27;?BFHKMQTWX[^`bfimprtv} w&}7a K  -9 -   AFpnyn}aU&^#?iyͺrPA V,DGƒ@pJxxj|{iaTfکދ9|d~n0 `c}sj4cD0xnfg|ssʪk93KNJDlܷG;Ovwid5qsywu5x+kihxswaK=H߸c|!\AN2 $#V2a\_rjhap{\fvsxwFދދ~mzg|cDxnfglfe),)No;3Xb>EIUŷYY ghuu]wZrHHyI )&%5&ʛu4FL7y9=[1`1xngg0ymgfmy0pxʿ}os-ұHiݏߡwP\l]yj`+B?4bkw{uolt}F]I4KxW~a1Fyv|~槃|qTXdc\[ea\bDg/H/D?\goxhnV9Tbtxs8(cDxofgahxofg/Ɯnxh9ϮrVimxnfg)b4^my-cymhfxnfg0rkkrrlkrmypHmy*xpfgdKyngfacyngf*oxcl{lgaqjox |c.xnfg a -xnfgExgx .oejnzplnpytܡxylymhjgxjg{g;ۭ{Sovxkgzg;ۮ{SowxkgE\goxhnV9SctxsHdDxoggЯhxofg/nxh9ϮrVimxnfg)jn,,(+85REGGRO7lE]i)~n0 `b}rj$gDxngghxnfg/ŰnxhCj93KNJDlܷG;:rҷҷk`YXaP<:Ruyspv{2tx6bWWbO>=OfrphessfVjhapiicnlܳbGpxc"cilpeZ$,)ĵKcynhf7> W^?@GOϴDOvwd|ujYZyseE(4} 3[Q|WW c @ynhfDyngfmy'DsyoPbj&qp @ԙstww huacy?u5g-w}^ihp9`Xtlbss-xnl5Ovwiysqz|4yuw4'WadswUYvHu,ox,cbstC>xoggz(eݸF\\|m{gdDxngg\:AnGcDxogg(qװ\sv"oxynhf,,oxxofgev֋?0#ovuphfaxxfvq~e`qtvohipz͛%wmyh )myznhmR=Pnyymgg)hymfgzp(rzmgrIQ"oxynhf5(oxxofg vEuewltxpvnlxvn^`)K &:88JTl/ +QFORMF+LMMonoLt10-BoldH !  7  Zr " $ % QFORMF+LMMonoLt10-Bold2.004Copyright 2003, 2009 B. Jackowski and J. M. Nowacki (on behalf of TeX users groups). This work is released under the GUST Font License -- see http://tug.org/fonts/licenses/GUST-FONT-LICENSE.txt for details.LMMonoLt10-BoldLMMonoLt10AdobeIdentity#$+-/247;?@BFGHKMQRTWX[^`befhikmprstvy((} w&}"x:yN  + + ( ^  M X`AFpnyn}aU&^#?iyͺrPA V,DGƒ@pJxxj|{iaTfکދ9|d~n0 `c}sj4cD0xnfg|ssʪk93KNJDlܷG;Ovwid5qsywu5x+kihxswaK=H߸c|!\AN2 $#V2a\_rjhap{\fvsxwFދދ~mzg|cDxnfglfe),)No;3Xb>EIUŷYY ghuu]wZrHHyI )&%5&ʛu4R|b{{bcb(e}}ebcFL7y9=[1`1xngg0ymgfmy0pxʿ}os-ұHiݏߡwP\l]yj`+B?4bkw{uolt}F]I4KxW~a1Fyv|~槃|qTXdc\[ea\bDg/H/D?\goxhnV9Tbtxs8(cDxofgahxofg/Ɯnxh9ϮrVimxnfg)kc}}cbbb4^my-cymhfxnfg0rkkrrlkrmypHmy*xpfgdKyngfacyngf*oxcl{lgao~cbtrPoamz2xofgaoxofgaqjox |c.xnfg a +xnfgExgx .oejnzplnpytܡxylymhjgxjg{g;ۭ{Sovxkgzg;ۮ{SowxkgE\goxhnV9SctxsHdDxoggЯhxofg/nxh9ϮrVimxnfg)jn,,(+85REGGRO7 wQpx:ht}}i=[zxsjl:xofglE]i)~n0 `b}rj$gDxngghxnfg/ŰnxhCj93KNJDlܷG;:rҷҷk`YXaP<:Ruyspv{2tx6bWWbO>=OfrphessfVjhapiicnlܳbGpxc"cilpeZ$,)ĵKcynhf7> W^?@GOϴDOvwd|ujYZyseE(4} 3[Q|WW c @ynhfDyngfmy'DsyoPbj&qp @ԙstww huacy?u5g-w}^ihp9`Xtlbss-xnl54֥&݋I4mX2\\~kb }otڨf& ^C9xoggz(eݸlnceyo_ļ˲ø & <74aa:I\TLXkJzfF\\|m{gdDxngg\:AnGcDxogg(qװ\sv"oxynhf,,oxxofgev֋?0#ovuphfaxxfvq~e`qtvohipz͛%wamyyfmy%znglR M ny&ymgfhzxofgxu88uzlgmyh )myznhmR=Pnyymgg)hymfgzp(rzmgrIQ"oxynhf5(oxxofg vEuewltxpvnlxvn^`)KwpO#%KOK9PBBP- &:88JTl/ э  endstream endobj -266 0 obj -<< /Type /FontDescriptor /FontName /SRVENG+LMMonoLt10-Bold /Flags 4 /FontBBox [ -454 -308 734 1039 ] /Ascent 1039 /CapHeight 611 /Descent -308 /ItalicAngle 0 /StemV 175 /XHeight 431 /FontFile3 268 0 R /CIDSet 267 0 R >> +274 0 obj +<< /Type /FontDescriptor /FontName /QFORMF+LMMonoLt10-Bold /Flags 4 /FontBBox [ -454 -308 734 1039 ] /Ascent 1039 /CapHeight 611 /Descent -308 /ItalicAngle 0 /StemV 175 /XHeight 431 /FontFile3 276 0 R /CIDSet 275 0 R >> endobj -269 0 obj -<< /Length 1089 >> +277 0 obj +<< /Length 1215 >> stream %!PS-Adobe-3.0 Resource-CMap %%DocumentNeededResources: ProcSet (CIDInit) %%IncludeResource: ProcSet (CIDInit) -%%BeginResource: CMap (TeX-SRVENG-LMMonoLt10-Bold-0) -%%Title: (TeX-SRVENG-LMMonoLt10-Bold-0 TeX SRVENG-LMMonoLt10-Bold 0) +%%BeginResource: CMap (TeX-QFORMF-LMMonoLt10-Bold-0) +%%Title: (TeX-QFORMF-LMMonoLt10-Bold-0 TeX QFORMF-LMMonoLt10-Bold 0) %%Version: 1.000 %%EndComments /CIDInit /ProcSet findresource begin @@ -2870,17 +3086,17 @@ stream begincmap /CIDSystemInfo << /Registry (TeX) -/Ordering (SRVENG-LMMonoLt10-Bold) +/Ordering (QFORMF-LMMonoLt10-Bold) /Supplement 0 >> def -/CMapName /TeX-Identity-SRVENG-LMMonoLt10-Bold def +/CMapName /TeX-Identity-QFORMF-LMMonoLt10-Bold def /CMapType 2 def 1 begincodespacerange <0000> endcodespacerange 0 beginbfrange endbfrange -30 beginbfchar +39 beginbfchar <001C> <0061> <0023> <0062> <0024> <005C> @@ -2888,15 +3104,19 @@ endbfrange <002D> <002C> <002F> <0064> <0032> <0065> +<0034> <003D> <0037> <0066> <003B> <0067> <003F> <0068> +<0040> <002D> <0042> <0069> <0046> <006B> +<0047> <004C> <0048> <006C> <004B> <006D> <004D> <006E> <0051> <006F> +<0052> <0031> <0054> <0070> <0057> <0025> <0058> <002E> @@ -2904,13 +3124,18 @@ endbfrange <005E> <0027> <0060> <0072> <0062> <0073> +<0065> <0036> <0066> <002F> +<0068> <0054> <0069> <0074> +<006B> <0032> <006D> <0075> <0070> <0076> <0072> <0077> +<0073> <0058> <0074> <0078> <0076> <0079> +<0079> <0030> endbfchar endcmap CMapName currentdict /CMap defineresource pop @@ -2922,21 +3147,21 @@ end endstream endobj 11 0 obj -<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /SRVENG+LMMonoLt10-Bold /DescendantFonts [ 270 0 R ] /ToUnicode 269 0 R >> +<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /QFORMF+LMMonoLt10-Bold /DescendantFonts [ 278 0 R ] /ToUnicode 277 0 R >> endobj -270 0 obj -<< /Type /Font /Subtype /CIDFontType0 /BaseFont /SRVENG+LMMonoLt10-Bold /FontDescriptor 266 0 R /W 265 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >> +278 0 obj +<< /Type /Font /Subtype /CIDFontType0 /BaseFont /QFORMF+LMMonoLt10-Bold /FontDescriptor 274 0 R /W 273 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >> endobj -271 0 obj +279 0 obj [ 28 [ 525 ] 34 [ 733 561 ] 42 [ 703 489 306 306 ] 47 [ 561 ] 49 [ 642 511 ] 55 [ 336 550 550 ] 59 [ 550 ] 63 [ 561 367 331 256 ] 70 [ 531 ] 72 [ 256 ] 74 [ 978 867 ] 77 [ 561 ] 81 [ 550 550 ] 84 [ 561 ] 88 [ 306 ] 90 [ 794 ] 95 [ 703 372 611 422 ] 100 [ 550 550 ] 104 [ 733 404 550 550 764 561 ] 112 [ 500 ] 114 [ 744 ] 116 [ 500 ] 121 [ 550 ] 125 [ 586 ] ] endobj -273 0 obj +281 0 obj << /Length 16 >> stream 0=ahD endstream endobj -274 0 obj +282 0 obj << /Subtype /CIDFontType0C /Length 5732 >> stream NIIVWO+LMSans10-BoldG ! &  `n " $ % NIIVWO+LMSans10-Bold2.004Copyright 2003, 2009 B. Jackowski and J. M. Nowacki (on behalf of TeX users groups). This work is released under the GUST Font License -- see http://tug.org/fonts/licenses/GUST-FONT-LICENSE.txt for details.LMSans10-BoldLMSans10AdobeIdentity"#*+,-/12789;?@ABFHJKMQRTXZ_`abdehijklmprty}..~o w`[;j4c @@ -2952,10 +3177,10 @@ w   endstream endobj -272 0 obj -<< /Type /FontDescriptor /FontName /NIIVWO+LMSans10-Bold /Flags 4 /FontBBox [ -460 -297 1761 1134 ] /Ascent 1134 /CapHeight 694 /Descent -297 /ItalicAngle 0 /StemV 102 /XHeight 458 /FontFile3 274 0 R /CIDSet 273 0 R >> +280 0 obj +<< /Type /FontDescriptor /FontName /NIIVWO+LMSans10-Bold /Flags 4 /FontBBox [ -460 -297 1761 1134 ] /Ascent 1134 /CapHeight 694 /Descent -297 /ItalicAngle 0 /StemV 102 /XHeight 458 /FontFile3 282 0 R /CIDSet 281 0 R >> endobj -275 0 obj +283 0 obj << /Length 1293 >> stream %!PS-Adobe-3.0 Resource-CMap @@ -3037,370 +3262,382 @@ end endstream endobj 10 0 obj -<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /NIIVWO+LMSans10-Bold /DescendantFonts [ 276 0 R ] /ToUnicode 275 0 R >> +<< /Type /Font /Subtype /Type0 /Encoding /Identity-H /BaseFont /NIIVWO+LMSans10-Bold /DescendantFonts [ 284 0 R ] /ToUnicode 283 0 R >> endobj -276 0 obj -<< /Type /Font /Subtype /CIDFontType0 /BaseFont /NIIVWO+LMSans10-Bold /FontDescriptor 272 0 R /W 271 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >> +284 0 obj +<< /Type /Font /Subtype /CIDFontType0 /BaseFont /NIIVWO+LMSans10-Bold /FontDescriptor 280 0 R /W 279 0 R /CIDSystemInfo << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >> >> endobj 15 0 obj -<< /Type /Pages /Count 7 /Kids [ 5 0 R 17 0 R 37 0 R 81 0 R 98 0 R 128 0 R 178 0 R ] >> +<< /Type /Pages /Count 8 /Kids [ 5 0 R 17 0 R 37 0 R 81 0 R 98 0 R 128 0 R 178 0 R 211 0 R ] >> endobj -277 0 obj -<< /Type /Outlines /First 209 0 R /Last 239 0 R /Count 7 >> +285 0 obj +<< /Type /Outlines /First 217 0 R /Last 247 0 R /Count 7 >> endobj -245 0 obj -<< /Title 246 0 R /A 244 0 R /Parent 239 0 R /Prev 242 0 R >> +253 0 obj +<< /Title 254 0 R /A 252 0 R /Parent 247 0 R /Prev 250 0 R >> endobj -242 0 obj -<< /Title 243 0 R /A 241 0 R /Parent 239 0 R /Next 245 0 R >> +250 0 obj +<< /Title 251 0 R /A 249 0 R /Parent 247 0 R /Next 253 0 R >> endobj -239 0 obj -<< /Title 240 0 R /A 238 0 R /Parent 277 0 R /Prev 236 0 R /First 242 0 R /Last 245 0 R /Count -2 >> +247 0 obj +<< /Title 248 0 R /A 246 0 R /Parent 285 0 R /Prev 244 0 R /First 250 0 R /Last 253 0 R /Count -2 >> endobj -236 0 obj -<< /Title 237 0 R /A 235 0 R /Parent 277 0 R /Prev 233 0 R /Next 239 0 R >> +244 0 obj +<< /Title 245 0 R /A 243 0 R /Parent 285 0 R /Prev 241 0 R /Next 247 0 R >> endobj -233 0 obj -<< /Title 234 0 R /A 232 0 R /Parent 277 0 R /Prev 227 0 R /Next 236 0 R >> +241 0 obj +<< /Title 242 0 R /A 240 0 R /Parent 285 0 R /Prev 235 0 R /Next 244 0 R >> endobj -230 0 obj -<< /Title 231 0 R /A 229 0 R /Parent 227 0 R >> +238 0 obj +<< /Title 239 0 R /A 237 0 R /Parent 235 0 R >> endobj -227 0 obj -<< /Title 228 0 R /A 226 0 R /Parent 277 0 R /Prev 224 0 R /Next 233 0 R /First 230 0 R /Last 230 0 R /Count -1 >> +235 0 obj +<< /Title 236 0 R /A 234 0 R /Parent 285 0 R /Prev 232 0 R /Next 241 0 R /First 238 0 R /Last 238 0 R /Count -1 >> endobj -224 0 obj -<< /Title 225 0 R /A 223 0 R /Parent 277 0 R /Prev 212 0 R /Next 227 0 R >> +232 0 obj +<< /Title 233 0 R /A 231 0 R /Parent 285 0 R /Prev 220 0 R /Next 235 0 R >> endobj -221 0 obj -<< /Title 222 0 R /A 220 0 R /Parent 212 0 R /Prev 218 0 R >> +229 0 obj +<< /Title 230 0 R /A 228 0 R /Parent 220 0 R /Prev 226 0 R >> endobj -218 0 obj -<< /Title 219 0 R /A 217 0 R /Parent 212 0 R /Prev 215 0 R /Next 221 0 R >> +226 0 obj +<< /Title 227 0 R /A 225 0 R /Parent 220 0 R /Prev 223 0 R /Next 229 0 R >> endobj -215 0 obj -<< /Title 216 0 R /A 214 0 R /Parent 212 0 R /Next 218 0 R >> +223 0 obj +<< /Title 224 0 R /A 222 0 R /Parent 220 0 R /Next 226 0 R >> endobj -212 0 obj -<< /Title 213 0 R /A 211 0 R /Parent 277 0 R /Prev 209 0 R /Next 224 0 R /First 215 0 R /Last 221 0 R /Count -3 >> +220 0 obj +<< /Title 221 0 R /A 219 0 R /Parent 285 0 R /Prev 217 0 R /Next 232 0 R /First 223 0 R /Last 229 0 R /Count -3 >> endobj -209 0 obj -<< /Title 210 0 R /A 208 0 R /Parent 277 0 R /Next 212 0 R >> +217 0 obj +<< /Title 218 0 R /A 216 0 R /Parent 285 0 R /Next 220 0 R >> endobj -278 0 obj +286 0 obj << /Names [ (Doc-Start) 9 0 R (NEWPAX@doc-input1.newpax@1@) 132 0 R (NEWPAX@doc-input1.newpax@2@) 133 0 R (NEWPAX@doc-input1.newpax@3@) 134 0 R (NEWPAX@doc-input1.newpax@4@) 135 0 R (NEWPAX@doc-input1.newpax@5@) 136 0 R (desc:newpaxsetup) 85 0 R (lstlisting.-1) 40 0 R (lstlisting.-2) 87 0 R (lstlisting.1) 22 0 R (lstlisting.2) 44 0 R (lstlisting.3) 139 0 R (lstlisting.4) 182 0 R (lstnumber.-1.1) 41 0 R (lstnumber.-1.2) 42 0 R (lstnumber.-1.3) 43 0 R (lstnumber.-2.1) 88 0 R (lstnumber.-2.2) 89 0 R (lstnumber.-2.3) 90 0 R (lstnumber.-2.4) 91 0 R (lstnumber.-2.5) 92 0 R (lstnumber.-2.6) 93 0 R (lstnumber.-2.7) 94 0 R (lstnumber.-2.8) 95 0 R (lstnumber.-2.9) 96 0 R (lstnumber.1.1) 23 0 R (lstnumber.1.10) 32 0 R (lstnumber.1.11) 33 0 R (lstnumber.1.2) 24 0 R (lstnumber.1.3) 25 0 R (lstnumber.1.4) 26 0 R (lstnumber.1.5) 27 0 R ] /Limits [ (Doc-Start) (lstnumber.1.5) ] >> endobj -279 0 obj +287 0 obj << /Names [ (lstnumber.1.6) 28 0 R (lstnumber.1.7) 29 0 R (lstnumber.1.8) 30 0 R (lstnumber.1.9) 31 0 R (lstnumber.2.1) 45 0 R (lstnumber.2.10) 54 0 R (lstnumber.2.11) 55 0 R (lstnumber.2.12) 56 0 R (lstnumber.2.13) 57 0 R (lstnumber.2.14) 58 0 R (lstnumber.2.15) 59 0 R (lstnumber.2.16) 60 0 R (lstnumber.2.17) 61 0 R (lstnumber.2.18) 62 0 R (lstnumber.2.19) 63 0 R (lstnumber.2.2) 46 0 R (lstnumber.2.20) 64 0 R (lstnumber.2.21) 65 0 R (lstnumber.2.22) 66 0 R (lstnumber.2.23) 67 0 R (lstnumber.2.24) 68 0 R (lstnumber.2.25) 69 0 R (lstnumber.2.26) 70 0 R (lstnumber.2.27) 71 0 R (lstnumber.2.28) 72 0 R (lstnumber.2.29) 73 0 R (lstnumber.2.3) 47 0 R (lstnumber.2.30) 74 0 R (lstnumber.2.31) 75 0 R (lstnumber.2.32) 76 0 R (lstnumber.2.33) 77 0 R (lstnumber.2.34) 78 0 R ] /Limits [ (lstnumber.1.6) (lstnumber.2.34) ] >> endobj -280 0 obj +288 0 obj << /Names [ (lstnumber.2.4) 48 0 R (lstnumber.2.5) 49 0 R (lstnumber.2.6) 50 0 R (lstnumber.2.7) 51 0 R (lstnumber.2.8) 52 0 R (lstnumber.2.9) 53 0 R (lstnumber.3.1) 140 0 R (lstnumber.3.10) 149 0 R (lstnumber.3.11) 150 0 R (lstnumber.3.12) 151 0 R (lstnumber.3.2) 141 0 R (lstnumber.3.3) 142 0 R (lstnumber.3.4) 143 0 R (lstnumber.3.5) 144 0 R (lstnumber.3.6) 145 0 R (lstnumber.3.7) 146 0 R (lstnumber.3.8) 147 0 R (lstnumber.3.9) 148 0 R (lstnumber.4.1) 183 0 R (lstnumber.4.10) 192 0 R (lstnumber.4.11) 193 0 R (lstnumber.4.12) 194 0 R (lstnumber.4.13) 195 0 R (lstnumber.4.14) 196 0 R (lstnumber.4.15) 197 0 R (lstnumber.4.16) 198 0 R (lstnumber.4.17) 199 0 R (lstnumber.4.18) 200 0 R (lstnumber.4.19) 201 0 R (lstnumber.4.2) 184 0 R (lstnumber.4.20) 202 0 R (lstnumber.4.21) 203 0 R ] /Limits [ (lstnumber.2.4) (lstnumber.4.21) ] >> endobj -281 0 obj -<< /Names [ (lstnumber.4.22) 204 0 R (lstnumber.4.23) 205 0 R (lstnumber.4.24) 206 0 R (lstnumber.4.3) 185 0 R (lstnumber.4.4) 186 0 R (lstnumber.4.5) 187 0 R (lstnumber.4.6) 188 0 R (lstnumber.4.7) 189 0 R (lstnumber.4.8) 190 0 R (lstnumber.4.9) 191 0 R (page.1) 8 0 R (page.2) 19 0 R (page.3) 39 0 R (page.4) 83 0 R (page.5) 100 0 R (page.6) 130 0 R (page.7) 180 0 R (section.1) 13 0 R (section.2) 20 0 R (section.3) 84 0 R (section.4) 86 0 R (section.5) 102 0 R (section.6) 131 0 R (section.7) 137 0 R (subsection.2.1) 21 0 R (subsection.2.2) 34 0 R (subsection.2.3) 79 0 R (subsection.4.1) 101 0 R (subsection.7.1) 138 0 R (subsection.7.2) 181 0 R ] /Limits [ (lstnumber.4.22) (subsection.7.2) ] >> +289 0 obj +<< /Names [ (lstnumber.4.22) 204 0 R (lstnumber.4.23) 205 0 R (lstnumber.4.24) 206 0 R (lstnumber.4.25) 207 0 R (lstnumber.4.26) 208 0 R (lstnumber.4.27) 209 0 R (lstnumber.4.28) 214 0 R (lstnumber.4.3) 185 0 R (lstnumber.4.4) 186 0 R (lstnumber.4.5) 187 0 R (lstnumber.4.6) 188 0 R (lstnumber.4.7) 189 0 R (lstnumber.4.8) 190 0 R (lstnumber.4.9) 191 0 R (page.1) 8 0 R (page.2) 19 0 R (page.3) 39 0 R (page.4) 83 0 R (page.5) 100 0 R (page.6) 130 0 R (page.7) 180 0 R (page.8) 213 0 R (section.1) 13 0 R (section.2) 20 0 R (section.3) 84 0 R (section.4) 86 0 R (section.5) 102 0 R (section.6) 131 0 R (section.7) 137 0 R (subsection.2.1) 21 0 R (subsection.2.2) 34 0 R (subsection.2.3) 79 0 R ] /Limits [ (lstnumber.4.22) (subsection.2.3) ] >> endobj -282 0 obj -<< /Kids [ 278 0 R 279 0 R 280 0 R 281 0 R ] /Limits [ (Doc-Start) (subsection.7.2) ] >> +290 0 obj +<< /Names [ (subsection.4.1) 101 0 R (subsection.7.1) 138 0 R (subsection.7.2) 181 0 R ] /Limits [ (subsection.4.1) (subsection.7.2) ] >> endobj -283 0 obj -<< /Dests 282 0 R >> +291 0 obj +<< /Kids [ 286 0 R 287 0 R 288 0 R 289 0 R 290 0 R ] /Limits [ (Doc-Start) (subsection.7.2) ] >> endobj -284 0 obj -<< /Type /Catalog /Pages 15 0 R /Outlines 277 0 R /Names 283 0 R /ViewerPreferences 207 0 R/Lang (en-UK)/PageMode /UseOutlines/OpenAction [5 0 R /Fit]/PageLabels <>]>> >> +292 0 obj +<< /Dests 291 0 R >> endobj -285 0 obj -<< /Creator /Title /Author /Producer (LuaTeX-1.15.0) /CreationDate (D:20220911155708+02'00') /ModDate (D:20220911155708+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> +293 0 obj +<< /Type /Catalog /Pages 15 0 R /Outlines 285 0 R /Names 292 0 R /ViewerPreferences 215 0 R/Lang (en-UK)/PageMode /UseOutlines/OpenAction [5 0 R /Fit]/PageLabels <>]>> >> +endobj +294 0 obj +<< /Creator /Title /Author /Producer (LuaTeX-1.15.0) /CreationDate (D:20220915203917+02'00') /ModDate (D:20220915203917+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)) >> endobj xref -0 286 +0 295 0000000002 65535 f -0000118849 00000 n +0000124810 00000 n 0000000003 00000 f 0000000004 00000 f 0000000000 00000 f -0000012261 00000 n -0000012553 00000 n +0000012223 00000 n +0000012515 00000 n 0000000020 00000 n -0000012375 00000 n -0000012434 00000 n -0000162443 00000 n -0000154228 00000 n -0000148147 00000 n -0000012493 00000 n -0000136358 00000 n -0000162794 00000 n -0000027154 00000 n -0000026063 00000 n -0000012675 00000 n -0000026180 00000 n -0000026241 00000 n -0000026302 00000 n -0000026363 00000 n -0000026423 00000 n -0000026484 00000 n -0000026545 00000 n -0000026606 00000 n -0000026667 00000 n -0000026728 00000 n -0000026789 00000 n -0000026850 00000 n -0000026911 00000 n -0000026972 00000 n -0000027033 00000 n -0000027093 00000 n -0000125274 00000 n -0000041002 00000 n -0000038385 00000 n -0000027289 00000 n -0000038502 00000 n -0000038563 00000 n -0000038624 00000 n -0000038686 00000 n -0000038748 00000 n -0000038810 00000 n -0000038871 00000 n -0000038932 00000 n -0000038992 00000 n -0000039053 00000 n -0000039114 00000 n -0000039175 00000 n -0000039236 00000 n -0000039297 00000 n -0000039358 00000 n -0000039419 00000 n -0000039480 00000 n -0000039541 00000 n -0000039602 00000 n -0000039663 00000 n -0000039723 00000 n -0000039783 00000 n -0000039844 00000 n -0000039905 00000 n -0000039966 00000 n -0000040027 00000 n -0000040088 00000 n -0000040149 00000 n -0000040210 00000 n -0000040271 00000 n -0000040332 00000 n -0000040393 00000 n -0000040454 00000 n -0000040514 00000 n -0000040575 00000 n -0000040636 00000 n -0000040697 00000 n -0000040758 00000 n -0000040819 00000 n -0000040880 00000 n -0000040941 00000 n -0000053906 00000 n -0000052936 00000 n -0000041125 00000 n -0000053053 00000 n -0000053114 00000 n -0000053175 00000 n -0000053235 00000 n -0000053296 00000 n -0000053357 00000 n -0000053418 00000 n -0000053479 00000 n -0000053540 00000 n -0000053601 00000 n -0000053662 00000 n -0000053723 00000 n -0000053784 00000 n -0000053845 00000 n -0000070251 00000 n -0000069948 00000 n -0000054041 00000 n -0000070065 00000 n -0000070127 00000 n -0000070189 00000 n -0000078046 00000 n -0000077829 00000 n -0000103015 00000 n -0000103226 00000 n -0000099476 00000 n -0000099696 00000 n -0000099917 00000 n -0000100137 00000 n -0000100357 00000 n -0000100577 00000 n -0000100797 00000 n -0000101017 00000 n -0000101236 00000 n -0000101456 00000 n -0000101676 00000 n -0000101896 00000 n -0000102116 00000 n -0000102519 00000 n -0000098532 00000 n -0000098315 00000 n -0000102792 00000 n -0000103437 00000 n -0000103648 00000 n -0000103860 00000 n -0000105460 00000 n -0000077512 00000 n -0000070374 00000 n -0000104073 00000 n -0000104136 00000 n -0000104199 00000 n -0000104261 00000 n -0000104325 00000 n -0000104389 00000 n -0000104452 00000 n -0000104516 00000 n -0000104579 00000 n -0000104642 00000 n -0000104705 00000 n -0000104768 00000 n -0000104830 00000 n -0000104893 00000 n -0000104956 00000 n -0000105019 00000 n -0000105082 00000 n -0000105145 00000 n -0000105208 00000 n -0000105271 00000 n -0000105334 00000 n -0000105397 00000 n -0000077648 00000 n -0000098246 00000 n -0000083442 00000 n -0000083493 00000 n -0000083650 00000 n -0000083806 00000 n -0000083960 00000 n -0000084163 00000 n -0000085446 00000 n -0000085648 00000 n -0000086627 00000 n -0000086827 00000 n -0000087627 00000 n -0000087866 00000 n -0000088225 00000 n -0000088463 00000 n -0000088672 00000 n -0000088909 00000 n -0000088990 00000 n -0000094276 00000 n -0000094344 00000 n -0000096842 00000 n -0000096909 00000 n -0000098180 00000 n -0000099407 00000 n -0000118725 00000 n -0000116906 00000 n -0000105625 00000 n -0000117026 00000 n -0000117089 00000 n -0000117152 00000 n -0000117215 00000 n -0000117278 00000 n -0000117341 00000 n -0000117404 00000 n -0000117467 00000 n -0000117530 00000 n -0000117593 00000 n -0000117656 00000 n -0000117719 00000 n -0000117782 00000 n -0000117845 00000 n -0000117908 00000 n -0000117970 00000 n -0000118032 00000 n -0000118095 00000 n -0000118158 00000 n -0000118221 00000 n -0000118284 00000 n -0000118347 00000 n -0000118410 00000 n -0000118473 00000 n -0000118536 00000 n -0000118599 00000 n -0000118662 00000 n -0000118896 00000 n -0000118942 00000 n -0000164111 00000 n -0000118989 00000 n -0000119078 00000 n -0000163979 00000 n -0000119125 00000 n -0000119270 00000 n -0000163900 00000 n -0000119322 00000 n -0000119584 00000 n -0000163807 00000 n -0000119636 00000 n -0000119893 00000 n -0000163728 00000 n -0000119945 00000 n -0000120075 00000 n -0000163635 00000 n -0000120122 00000 n -0000120219 00000 n -0000163503 00000 n -0000120266 00000 n -0000120373 00000 n -0000163438 00000 n -0000120425 00000 n -0000120633 00000 n -0000163345 00000 n -0000120680 00000 n -0000120817 00000 n -0000163252 00000 n -0000120864 00000 n -0000120961 00000 n -0000163134 00000 n -0000121008 00000 n -0000121184 00000 n -0000163055 00000 n -0000121236 00000 n -0000121447 00000 n -0000162976 00000 n -0000121499 00000 n -0000121746 00000 n -0000124112 00000 n -0000121861 00000 n -0000121933 00000 n -0000124352 00000 n -0000125430 00000 n -0000125633 00000 n -0000134405 00000 n -0000126079 00000 n -0000126156 00000 n -0000134643 00000 n -0000136513 00000 n -0000136715 00000 n -0000146121 00000 n -0000137149 00000 n -0000137384 00000 n -0000146360 00000 n -0000148304 00000 n -0000148508 00000 n -0000152841 00000 n -0000148852 00000 n -0000148928 00000 n -0000153078 00000 n -0000154382 00000 n -0000154583 00000 n -0000160853 00000 n -0000154959 00000 n -0000155036 00000 n -0000161089 00000 n -0000162595 00000 n -0000162899 00000 n -0000164190 00000 n -0000165085 00000 n -0000165925 00000 n -0000166781 00000 n -0000167501 00000 n -0000167607 00000 n -0000167645 00000 n -0000167848 00000 n +0000012337 00000 n +0000012396 00000 n +0000170270 00000 n +0000162055 00000 n +0000154973 00000 n +0000012455 00000 n +0000142753 00000 n +0000170621 00000 n +0000027116 00000 n +0000026025 00000 n +0000012637 00000 n +0000026142 00000 n +0000026203 00000 n +0000026264 00000 n +0000026325 00000 n +0000026385 00000 n +0000026446 00000 n +0000026507 00000 n +0000026568 00000 n +0000026629 00000 n +0000026690 00000 n +0000026751 00000 n +0000026812 00000 n +0000026873 00000 n +0000026934 00000 n +0000026995 00000 n +0000027055 00000 n +0000131235 00000 n +0000042592 00000 n +0000039975 00000 n +0000027251 00000 n +0000040092 00000 n +0000040153 00000 n +0000040214 00000 n +0000040276 00000 n +0000040338 00000 n +0000040400 00000 n +0000040461 00000 n +0000040522 00000 n +0000040582 00000 n +0000040643 00000 n +0000040704 00000 n +0000040765 00000 n +0000040826 00000 n +0000040887 00000 n +0000040948 00000 n +0000041009 00000 n +0000041070 00000 n +0000041131 00000 n +0000041192 00000 n +0000041253 00000 n +0000041313 00000 n +0000041373 00000 n +0000041434 00000 n +0000041495 00000 n +0000041556 00000 n +0000041617 00000 n +0000041678 00000 n +0000041739 00000 n +0000041800 00000 n +0000041861 00000 n +0000041922 00000 n +0000041983 00000 n +0000042044 00000 n +0000042104 00000 n +0000042165 00000 n +0000042226 00000 n +0000042287 00000 n +0000042348 00000 n +0000042409 00000 n +0000042470 00000 n +0000042531 00000 n +0000055496 00000 n +0000054526 00000 n +0000042715 00000 n +0000054643 00000 n +0000054704 00000 n +0000054765 00000 n +0000054825 00000 n +0000054886 00000 n +0000054947 00000 n +0000055008 00000 n +0000055069 00000 n +0000055130 00000 n +0000055191 00000 n +0000055252 00000 n +0000055313 00000 n +0000055374 00000 n +0000055435 00000 n +0000071841 00000 n +0000071538 00000 n +0000055631 00000 n +0000071655 00000 n +0000071717 00000 n +0000071779 00000 n +0000079636 00000 n +0000079419 00000 n +0000105050 00000 n +0000105261 00000 n +0000101066 00000 n +0000101286 00000 n +0000101507 00000 n +0000101727 00000 n +0000101947 00000 n +0000102167 00000 n +0000102387 00000 n +0000102607 00000 n +0000102826 00000 n +0000103046 00000 n +0000103266 00000 n +0000103486 00000 n +0000103706 00000 n +0000104397 00000 n +0000100122 00000 n +0000099905 00000 n +0000104827 00000 n +0000105472 00000 n +0000105683 00000 n +0000105895 00000 n +0000107495 00000 n +0000079102 00000 n +0000071964 00000 n +0000106108 00000 n +0000106171 00000 n +0000106234 00000 n +0000106296 00000 n +0000106360 00000 n +0000106424 00000 n +0000106487 00000 n +0000106551 00000 n +0000106614 00000 n +0000106677 00000 n +0000106740 00000 n +0000106803 00000 n +0000106865 00000 n +0000106928 00000 n +0000106991 00000 n +0000107054 00000 n +0000107117 00000 n +0000107180 00000 n +0000107243 00000 n +0000107306 00000 n +0000107369 00000 n +0000107432 00000 n +0000079238 00000 n +0000099836 00000 n +0000085032 00000 n +0000085083 00000 n +0000085240 00000 n +0000085396 00000 n +0000085550 00000 n +0000085753 00000 n +0000087036 00000 n +0000087238 00000 n +0000088217 00000 n +0000088417 00000 n +0000089217 00000 n +0000089456 00000 n +0000089815 00000 n +0000090053 00000 n +0000090262 00000 n +0000090499 00000 n +0000090580 00000 n +0000095866 00000 n +0000095934 00000 n +0000098432 00000 n +0000098499 00000 n +0000099770 00000 n +0000100997 00000 n +0000123828 00000 n +0000121820 00000 n +0000107660 00000 n +0000121940 00000 n +0000122003 00000 n +0000122066 00000 n +0000122129 00000 n +0000122192 00000 n +0000122255 00000 n +0000122318 00000 n +0000122381 00000 n +0000122443 00000 n +0000122506 00000 n +0000122569 00000 n +0000122632 00000 n +0000122695 00000 n +0000122758 00000 n +0000122821 00000 n +0000122884 00000 n +0000122947 00000 n +0000123010 00000 n +0000123073 00000 n +0000123136 00000 n +0000123198 00000 n +0000123261 00000 n +0000123324 00000 n +0000123387 00000 n +0000123450 00000 n +0000123513 00000 n +0000123576 00000 n +0000123639 00000 n +0000123702 00000 n +0000123765 00000 n +0000124698 00000 n +0000124452 00000 n +0000123952 00000 n +0000124572 00000 n +0000124635 00000 n +0000124857 00000 n +0000124903 00000 n +0000171946 00000 n +0000124950 00000 n +0000125039 00000 n +0000171814 00000 n +0000125086 00000 n +0000125231 00000 n +0000171735 00000 n +0000125283 00000 n +0000125545 00000 n +0000171642 00000 n +0000125597 00000 n +0000125854 00000 n +0000171563 00000 n +0000125906 00000 n +0000126036 00000 n +0000171470 00000 n +0000126083 00000 n +0000126180 00000 n +0000171338 00000 n +0000126227 00000 n +0000126334 00000 n +0000171273 00000 n +0000126386 00000 n +0000126594 00000 n +0000171180 00000 n +0000126641 00000 n +0000126778 00000 n +0000171087 00000 n +0000126825 00000 n +0000126922 00000 n +0000170969 00000 n +0000126969 00000 n +0000127145 00000 n +0000170890 00000 n +0000127197 00000 n +0000127408 00000 n +0000170811 00000 n +0000127460 00000 n +0000127707 00000 n +0000130073 00000 n +0000127822 00000 n +0000127894 00000 n +0000130313 00000 n +0000131391 00000 n +0000131594 00000 n +0000140758 00000 n +0000132045 00000 n +0000132122 00000 n +0000140996 00000 n +0000142908 00000 n +0000143110 00000 n +0000152919 00000 n +0000143557 00000 n +0000143792 00000 n +0000153158 00000 n +0000155130 00000 n +0000155334 00000 n +0000160542 00000 n +0000155722 00000 n +0000155799 00000 n +0000160779 00000 n +0000162209 00000 n +0000162410 00000 n +0000168680 00000 n +0000162786 00000 n +0000162863 00000 n +0000168916 00000 n +0000170422 00000 n +0000170734 00000 n +0000172025 00000 n +0000172920 00000 n +0000173760 00000 n +0000174616 00000 n +0000175378 00000 n +0000175533 00000 n +0000175647 00000 n +0000175685 00000 n +0000175888 00000 n trailer -<< /Size 286 /Root 284 0 R /Info 285 0 R /ID [ <0D2E18C8F7F5B487459655A078BD03FD> <0D2E18C8F7F5B487459655A078BD03FD> ] >> +<< /Size 295 /Root 293 0 R /Info 294 0 R /ID [ <1AFE8472BBB21752AA02B3F1B7023E03> <1AFE8472BBB21752AA02B3F1B7023E03> ] >> startxref -168303 +176343 %%EOF diff --git a/macros/latex/contrib/newpax/newpax.tex b/macros/latex/contrib/newpax/newpax.tex index c011638c90..f145dc57f5 100644 --- a/macros/latex/contrib/newpax/newpax.tex +++ b/macros/latex/contrib/newpax/newpax.tex @@ -1,10 +1,9 @@ % !Mode:: "TeX:UTF-8:Main" \makeatletter -\def\UlrikeFischer@package@version{0.52} -\def\UlrikeFischer@package@date{2022-09-11} +\def\UlrikeFischer@package@version{0.53} +\def\UlrikeFischer@package@date{2022-09-15} \makeatother -\RequirePackage{pdfmanagement-testphase} -\DeclareDocumentMetadata{pdfversion=1.7,lang=en-UK, uncompress} +\DocumentMetadata{pdfversion=1.7,lang=en-UK, uncompress} \documentclass[DIV=12,parskip=half-,bibliography=totoc]{scrartcl} \usepackage{scrlayer-scrpage} @@ -53,7 +52,7 @@ cursor is in the area. The coordinates of the area are given in absolute page co The action of such an annotation can be an external URL, but also an internal destination. Such destination are objects describing a page and some instructions how to display the page---again using absolute coordinates. -When a PDF is included in another PDF---may it be with \cs{includegraphics} or with \cs{includepdf}--the annotation coordinates no longer make sense as they don't refer to the receiving page (and often the action of an annotation doesn't make sense either), so all TeX-engines and backends strip them away when including a PDF: the net effect is that external and internal links are lost. +When a PDF is included in another PDF---may it be with \cs{includegraphics} or with \cs{includepdf}\hspace{0pt}---\hspace{0pt}the annotation coordinates no longer make sense as they don't refer to the receiving page (and often the action of an annotation doesn't make sense either), so all TeX-engines and backends strip them away when including a PDF: the net effect is that external and internal links are lost. The \pkg{pax} package from Heiko Oberdiek offers a solution for this problem: it extracts all the annotations and destinations of the included PDF in a text file, does some clever recalculations of their coordinates and reinserts them. @@ -209,11 +208,12 @@ Ensure that the \texttt{.pax} file created in step 1 can be found by your main d \item This works with pdflatex and lualatex. lualatex needs the extra code demonstrated in the document. \item It needs two or three compilations until every reference is correct. \item There is a small typo in \pkg{pax.sty} which affects clipping, the patch shown in the listing correct this. +\item In some cases the catcode of \# and \% must be set to letter to avoid errors. \item Don't include PDFs with destinations twice as this will lead to duplicate destinations and pdflatex will complain. \item If annotations should not be reinserted remove the \texttt{.pax}-file. \item If \pkg{hyperref} is loaded you can change the color and style of link borders with hyperref options. \end{itemize} - -\lstinputlisting[firstline=2,caption=doc-use-pax.tex]{doc-use-pax.tex} +\enlargethispage{\baselineskip} +\lstinputlisting[firstline=2,caption=doc-use-pax.tex,escapechar={}]{doc-use-pax.tex} \end{document} diff --git a/macros/latex/contrib/opencolor/LICENSE b/macros/latex/contrib/opencolor/LICENSE new file mode 100644 index 0000000000..0e3bcfd492 --- /dev/null +++ b/macros/latex/contrib/opencolor/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2022 Michele Piazzai + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/macros/latex/contrib/opencolor/README.md b/macros/latex/contrib/opencolor/README.md new file mode 100644 index 0000000000..4debc90ece --- /dev/null +++ b/macros/latex/contrib/opencolor/README.md @@ -0,0 +1,45 @@ + + +# opencolor-latex + +This is a simple LaTeX package that provides hexadecimal color definitions of the 130 colors included in the [Open Color](https://yeun.github.io/open-color/) library (v1.9.1). Open Color's goal is to provide a selection of colors optimized for UI design. Although LaTeX is a typesetting system primarily intended for print, many of the documents it produces never get printed, in which case it makes sense to use colors suitable for on-screen reading. + +Open Colors are organized according to 13 hues (gray, red, pink, grape, violet, indigo, blue, cyan, teal, green, lime, yellow, orange) and 10 brightness levels (0–9). The naming convention is `oc-(color)-(number)`. At the same brightness level, the perceived brightness of different hues aims to be constant. + +The package's only dependency is [xcolor](https://www.ctan.org/pkg/xcolor), which is included in most LaTeX distributions. + +## Demo + +![](https://github.com/piazzai/opencolor-latex/blob/master/demo-opencolor.png) + +## Installation + +The package is hosted on CTAN and distributed as part of MikTeX and TeXLive. It can also be installed manually by cloning this repository in your `$HOME/texmf/tex/latex` folder. If you do not have this folder, [you can create it](https://www.ias.edu/math/computing/faq/local-latex-style-files). + +## Usage + +The choice of colors for a document is a responsibility of the author, but UI design principles can provide helpful guidelines. For example, in a beamer presentation, `oc-gray-1` could be used instead of white and `oc-gray-9` instead of black in order to reduce eye strain. If a color like `oc-teal-6` is used for a plot, then it would be best for other plots to use colors at the same brightness level, like `oc-orange-6`, for visual consistency. + +## Minimal working example + +```tex +\documentclass{article} + +\usepackage{opencolor} + +\begin{document} + \textcolor{oc-red-8}{Hello} + \textcolor{oc-blue-6}{,} + \textcolor{oc-lime-9}{world} + \textcolor{oc-grape-7}{!} +\end{document} +``` + +## Bugs + +The package merely loads xcolor and then provides color definitions, so any error or warning is most likely due to xcolor. Nonetheless, if you encounter any problem using this package, please [open an issue](https://github.com/piazzai/opencolor-latex/issues). diff --git a/macros/latex/contrib/opencolor/demo-opencolor.pdf b/macros/latex/contrib/opencolor/demo-opencolor.pdf new file mode 100644 index 0000000000..1f38189fec Binary files /dev/null and b/macros/latex/contrib/opencolor/demo-opencolor.pdf differ diff --git a/macros/latex/contrib/opencolor/demo-opencolor.png b/macros/latex/contrib/opencolor/demo-opencolor.png new file mode 100644 index 0000000000..bd0ff08e1b Binary files /dev/null and b/macros/latex/contrib/opencolor/demo-opencolor.png differ diff --git a/macros/latex/contrib/opencolor/demo-opencolor.tex b/macros/latex/contrib/opencolor/demo-opencolor.tex new file mode 100644 index 0000000000..a8bc47018b --- /dev/null +++ b/macros/latex/contrib/opencolor/demo-opencolor.tex @@ -0,0 +1,26 @@ +% opencolor-latex v1.0.0 +% Author: Michele Piazzai +% Contact: michele.piazzai@uc3m.es +% License: MIT + +\documentclass{standalone} + +\usepackage{tikz} +\usetikzlibrary{calc} + +\usepackage{etoolbox} +\usepackage{opencolor} + +\newcommand\w{9em} +\newcommand\h{4.5em} + +\begin{document} +\begin{tikzpicture} + \foreach \c [count=\x] in {gray,red,pink,grape,violet,indigo,blue,cyan,teal,green,lime,yellow,orange} {% + \foreach \b in {0,...,9} {% + \draw[\ifnumgreater{\x}{1}{black}{\ifnumgreater{\b}{6}{white}{black}}] (\b*\w,-\x*\h) node [draw=black,fill=oc-\c-\b,minimum width=\w,minimum height=\h] {\ttfamily\large oc-\c-\b}; + } + } +\end{tikzpicture} + +\end{document} diff --git a/macros/latex/contrib/opencolor/opencolor.sty b/macros/latex/contrib/opencolor/opencolor.sty new file mode 100644 index 0000000000..df34ae2a76 --- /dev/null +++ b/macros/latex/contrib/opencolor/opencolor.sty @@ -0,0 +1,154 @@ +% opencolor-latex v1.0.0 +% Author: Michele Piazzai +% Contact: michele.piazzai@uc3m.es +% License: MIT + +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{opencolor}[2022/09/15 Open Color] + +\RequirePackage{xcolor} + +\definecolor{oc-gray-0}{HTML}{F8F9FA} +\definecolor{oc-gray-1}{HTML}{F1F3F5} +\definecolor{oc-gray-2}{HTML}{E9ECEF} +\definecolor{oc-gray-3}{HTML}{DEE2E6} +\definecolor{oc-gray-4}{HTML}{CED4DA} +\definecolor{oc-gray-5}{HTML}{ADB5BD} +\definecolor{oc-gray-6}{HTML}{868E96} +\definecolor{oc-gray-7}{HTML}{495057} +\definecolor{oc-gray-8}{HTML}{343A40} +\definecolor{oc-gray-9}{HTML}{212529} + +\definecolor{oc-red-0}{HTML}{FFF5F5} +\definecolor{oc-red-1}{HTML}{FFE3E3} +\definecolor{oc-red-2}{HTML}{FFC9C9} +\definecolor{oc-red-3}{HTML}{FFA8A8} +\definecolor{oc-red-4}{HTML}{FF8787} +\definecolor{oc-red-5}{HTML}{FF6B6B} +\definecolor{oc-red-6}{HTML}{FA5252} +\definecolor{oc-red-7}{HTML}{F03E3E} +\definecolor{oc-red-8}{HTML}{E03131} +\definecolor{oc-red-9}{HTML}{C92A2A} + +\definecolor{oc-pink-0}{HTML}{FFF0F6} +\definecolor{oc-pink-1}{HTML}{FFDEEB} +\definecolor{oc-pink-2}{HTML}{FCC2D7} +\definecolor{oc-pink-3}{HTML}{FAA2C1} +\definecolor{oc-pink-4}{HTML}{F783AC} +\definecolor{oc-pink-5}{HTML}{F06595} +\definecolor{oc-pink-6}{HTML}{E64980} +\definecolor{oc-pink-7}{HTML}{D6336C} +\definecolor{oc-pink-8}{HTML}{C2255C} +\definecolor{oc-pink-9}{HTML}{A61E4D} + +\definecolor{oc-grape-0}{HTML}{F8F0FC} +\definecolor{oc-grape-1}{HTML}{F3D9FA} +\definecolor{oc-grape-2}{HTML}{EEBEFA} +\definecolor{oc-grape-3}{HTML}{E599F7} +\definecolor{oc-grape-4}{HTML}{DA77F2} +\definecolor{oc-grape-5}{HTML}{CC5DE8} +\definecolor{oc-grape-6}{HTML}{BE4BDB} +\definecolor{oc-grape-7}{HTML}{AE3EC9} +\definecolor{oc-grape-8}{HTML}{9C36B5} +\definecolor{oc-grape-9}{HTML}{862E9C} + +\definecolor{oc-violet-0}{HTML}{F3F0FF} +\definecolor{oc-violet-1}{HTML}{E5DBFF} +\definecolor{oc-violet-2}{HTML}{D0BFFF} +\definecolor{oc-violet-3}{HTML}{B197FC} +\definecolor{oc-violet-4}{HTML}{9775FA} +\definecolor{oc-violet-5}{HTML}{845EF7} +\definecolor{oc-violet-6}{HTML}{7950F2} +\definecolor{oc-violet-7}{HTML}{7048E8} +\definecolor{oc-violet-8}{HTML}{6741D9} +\definecolor{oc-violet-9}{HTML}{5F3DC4} + +\definecolor{oc-indigo-0}{HTML}{EDF2FF} +\definecolor{oc-indigo-1}{HTML}{DBE4FF} +\definecolor{oc-indigo-2}{HTML}{BAC8FF} +\definecolor{oc-indigo-3}{HTML}{91A7FF} +\definecolor{oc-indigo-4}{HTML}{748FFC} +\definecolor{oc-indigo-5}{HTML}{5C7CFA} +\definecolor{oc-indigo-6}{HTML}{4C6EF5} +\definecolor{oc-indigo-7}{HTML}{4263EB} +\definecolor{oc-indigo-8}{HTML}{3B5BDB} +\definecolor{oc-indigo-9}{HTML}{364FC7} + +\definecolor{oc-blue-0}{HTML}{E7F5FF} +\definecolor{oc-blue-1}{HTML}{D0EBFF} +\definecolor{oc-blue-2}{HTML}{A5D8FF} +\definecolor{oc-blue-3}{HTML}{74C0FC} +\definecolor{oc-blue-4}{HTML}{4DABF7} +\definecolor{oc-blue-5}{HTML}{339AF0} +\definecolor{oc-blue-6}{HTML}{228BE6} +\definecolor{oc-blue-7}{HTML}{1C7ED6} +\definecolor{oc-blue-8}{HTML}{1971C2} +\definecolor{oc-blue-9}{HTML}{1864AB} + +\definecolor{oc-cyan-0}{HTML}{E3FAFC} +\definecolor{oc-cyan-1}{HTML}{C5F6FA} +\definecolor{oc-cyan-2}{HTML}{99E9F2} +\definecolor{oc-cyan-3}{HTML}{66D9E8} +\definecolor{oc-cyan-4}{HTML}{3BC9DB} +\definecolor{oc-cyan-5}{HTML}{22B8CF} +\definecolor{oc-cyan-6}{HTML}{15AABF} +\definecolor{oc-cyan-7}{HTML}{1098AD} +\definecolor{oc-cyan-8}{HTML}{0C8599} +\definecolor{oc-cyan-9}{HTML}{0B7285} + +\definecolor{oc-teal-0}{HTML}{E6FCF5} +\definecolor{oc-teal-1}{HTML}{C3FAE8} +\definecolor{oc-teal-2}{HTML}{96F2D7} +\definecolor{oc-teal-3}{HTML}{63E6BE} +\definecolor{oc-teal-4}{HTML}{38D9A9} +\definecolor{oc-teal-5}{HTML}{20C997} +\definecolor{oc-teal-6}{HTML}{12B886} +\definecolor{oc-teal-7}{HTML}{0CA678} +\definecolor{oc-teal-8}{HTML}{099268} +\definecolor{oc-teal-9}{HTML}{087F5B} + +\definecolor{oc-green-0}{HTML}{EBFBEE} +\definecolor{oc-green-1}{HTML}{D3F9D8} +\definecolor{oc-green-2}{HTML}{B2F2BB} +\definecolor{oc-green-3}{HTML}{8CE99A} +\definecolor{oc-green-4}{HTML}{69DB7C} +\definecolor{oc-green-5}{HTML}{51CF66} +\definecolor{oc-green-6}{HTML}{40C057} +\definecolor{oc-green-7}{HTML}{37B24D} +\definecolor{oc-green-8}{HTML}{2F9E44} +\definecolor{oc-green-9}{HTML}{2B8A3E} + +\definecolor{oc-lime-0}{HTML}{F4FCE3} +\definecolor{oc-lime-1}{HTML}{E9FAC8} +\definecolor{oc-lime-2}{HTML}{D8F5A2} +\definecolor{oc-lime-3}{HTML}{C0EB75} +\definecolor{oc-lime-4}{HTML}{A9E34B} +\definecolor{oc-lime-5}{HTML}{94D82D} +\definecolor{oc-lime-6}{HTML}{82C91E} +\definecolor{oc-lime-7}{HTML}{74B816} +\definecolor{oc-lime-8}{HTML}{66A80F} +\definecolor{oc-lime-9}{HTML}{5C940D} + +\definecolor{oc-yellow-0}{HTML}{FFF9DB} +\definecolor{oc-yellow-1}{HTML}{FFF3BF} +\definecolor{oc-yellow-2}{HTML}{FFEC99} +\definecolor{oc-yellow-3}{HTML}{FFE066} +\definecolor{oc-yellow-4}{HTML}{FFD43B} +\definecolor{oc-yellow-5}{HTML}{FCC419} +\definecolor{oc-yellow-6}{HTML}{FAB005} +\definecolor{oc-yellow-7}{HTML}{F59F00} +\definecolor{oc-yellow-8}{HTML}{F08C00} +\definecolor{oc-yellow-9}{HTML}{E67700} + +\definecolor{oc-orange-0}{HTML}{FFF4E6} +\definecolor{oc-orange-1}{HTML}{FFE8CC} +\definecolor{oc-orange-2}{HTML}{FFD8A8} +\definecolor{oc-orange-3}{HTML}{FFC078} +\definecolor{oc-orange-4}{HTML}{FFA94D} +\definecolor{oc-orange-5}{HTML}{FF922B} +\definecolor{oc-orange-6}{HTML}{FD7E14} +\definecolor{oc-orange-7}{HTML}{F76707} +\definecolor{oc-orange-8}{HTML}{E8590C} +\definecolor{oc-orange-9}{HTML}{D9480F} + +\endinput diff --git a/macros/latex/contrib/photobook/LICENSE b/macros/latex/contrib/photobook/LICENSE new file mode 100644 index 0000000000..d28638300d --- /dev/null +++ b/macros/latex/contrib/photobook/LICENSE @@ -0,0 +1,29 @@ +BSD 3-Clause License + +Copyright (c) 2021, Alex A. Naanou +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/macros/latex/contrib/photobook/Makefile b/macros/latex/contrib/photobook/Makefile new file mode 100644 index 0000000000..fd760d0352 --- /dev/null +++ b/macros/latex/contrib/photobook/Makefile @@ -0,0 +1,375 @@ +#---------------------------------------------------------------------- +# +# +# +# Main targets: +# pdf - build class pdf documentation... +# md - build class markdown documentation (XXX EXPERIMENTAL)... +# +# Distribution and install: +# dist - build a distributable zip +# install - install to user home latex path +# uninstall - uninstall/remove from user home latex path +# install-local - install to local latex path +# (may require elevated privileges) +# uninstall-local - uninstall/remove from local latex path +# (may require elevated privileges) +# install-devel - XXX +# uninstall-devel - XXX +# +# Other targets: +# sweep - cleanup auxiliary generated files +# clean - cleanup repo +# +# +# Variables: +# CODE_INSTALL - set how we handle the installing code/source. +# this can be: +# strip - strip the docs from code (default) +# copy - copy the code/doc file +# link - link the code/doc files +# (affects install and install-local targets) +# INSTALL_PATH - install path +# (only affects install target) +# +# +# Examples: +# +# $ INSTALL_PATH=./test CODE_INSTALL=link make install +# install to "./test" and do not strip docs. +# +# +# +#---------------------------------------------------------------------- +# Config... + +.EXPORT_ALL_VARIABLES: + +# NOTE: this makes things run consistently on different systems including +# things like Android... +SHELL := bash + +MODULE := photobook + + +# metadata... +# +# NOTE: the code version is in the code... +VERSION = $(strip $(shell \ + cat $(MODULE).cls \ + | grep 'VERSION{' \ + | sed 's/.*{\(.*\)}.*/\1/')) +DATE = $(strip $(shell date "+%Y%m%d%H%M")) +COMMIT = $(strip $(shell git rev-parse HEAD)) + + +# installing code... +# +# this can be: +# - strip +# - copy +# - link +# +# NOTE: we are doing things in different ways for different modes: +# - copy vs. strip +# - simply change the target name and let make figure it out... +# - link vs. copy/strip +# - $(LN) vs. $(INSTALL) in the install target... +CODE_INSTALL ?= strip +ifeq ($(CODE_INSTALL),strip) + MODULE_CODE := $(MODULE)-stripped +else + MODULE_CODE := $(MODULE) +endif + + +# markdown dialect... +# +# XXX still needs some tweaking... +MD_FORMAT ?= markdown_github + + +# debug output... +# +# $DEBUG can either be empty or anything else... +DEBUG ?= +ifeq ($(DEBUG),) + STDERR := > /dev/null +else + STDERR := +endif + + + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +# Paths and files... + +# LaTeX... +TEX_LOCAL = $(shell kpsewhich --var-value TEXMFLOCAL) +TEX_HOME = $(shell kpsewhich --var-value TEXMFHOME) + +# default install target... +INSTALL_PATH ?= $(TEX_HOME) + +# build... +BUILD_DIR := build + +# distribution... +#DIST_NAME := $(MODULE)-$(VERSION) +DIST_NAME := $(MODULE)-$(VERSION)-$(DATE) +DIST_DIR := dist +DIST_FILES = \ + README.md \ + LICENSE \ + Makefile \ + $(wildcard scripts/*) \ + $(MODULE).cls \ + $(MODULE).pdf +# Add these when ready... +# $(wildcard examples/*) \ +# $(wildcard manual/*) \ +# $(wildcard workflow/*) \ +# + + + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +# Software... + +# NOTE: need to run latex two+ times to build index, the simpler way to +# go is to use latexmk... +#TEX := lualatex +TEX := latexmk -lualatex + +# Doc generator... +DOC := ./scripts/cls2tex.sh + +MD := mkdir -p +# XXX cp/install, technically this is only used in install* targets so +# renaming CP -> INSTALL would seem logical... +#INSTALL := cp +INSTALL := install +# copy preserving relative paths... +RCP := cp -r --parents +LN := cp -l + + + +#---------------------------------------------------------------------- +# Rules... + +# docs (pdf)... +# +%.pdf: %.tex + $(TEX) $< $(STDERR) + +# docs (markdown)... +# +# XXX this still needs some tweaking... +# - |..| - verbatim does not work... +# - || - parts of doc omitted... +# - verbatim blocks get merged sometimes... +# - ... +# ...not sure if this can be tweaked... +#%.md: %.tex +# pandoc -t $(MD_FORMAT) -s $< -o $@ + +# XXX EXPERIMENTAL... +# XXX revise: +# ...for this to work we need to replace: +# \documentclass{ltxdoc} +# to: +# \documentclass[markdownextra]{internet} +# XXX install the internet class... +# https://github.com/loopspace/latex-to-internet +# ...needs testing... +%.md: %.tex + cat $< \ + | sed 's/documentclass{ltxdoc}/documentclass[markdownextra]{internet}/' \ + > $<.tmp + mv $<{.tmp,} + $(TEX) $< $(STDERR) + + +# meta-section... +# +# NOTE: .sty and .cls are essentially the same in terms of documentation +# generation... +# XXX might be a good idea to place a link/footnote where metadocs were +# originally located... +# ...not sure yet manually or automatically... +%.tex: %.sty %-meta.tex + $(DOC) $< > $@ + +%.tex: %.cls %-meta.tex + $(DOC) $< > $@ + + +# meta docs... +# +# NOTE: this is a bit ugly, but allot less so than trying to push \verb +# into a LaTeX macro/env and then getting it out again in one pice... +%-meta.tex: %.sty + $(DOC) --prefix M $< > $@ + +%-meta.tex: %.cls + $(DOC) --prefix M $< > $@ + + +# strip docs out... +# +# XXX can we unify these??? +%-stripped.tex: %.tex + $(DOC) --strip $< \ + $(DOC) --prefix M --strip \ + > $@ + +%-stripped.sty: %.sty + $(DOC) --strip $< \ + | $(DOC) --prefix M --strip \ + > $@ + +%-stripped.cls: %.cls + $(DOC) --strip $< \ + | $(DOC) --prefix M --strip \ + > $@ + + + +#---------------------------------------------------------------------- +# Info targets... + +.PHONY: version +version: + @echo $(VERSION) + + + +#---------------------------------------------------------------------- +# Main targets... + +.PHONY: pdf +pdf: $(MODULE).pdf + + +.PHONY: md +md: $(MODULE).md + + +# XXX STUB -- not sure how to approach this yet... +# on one hand the manual should be a self-contained example in +# itself on the other hand we already have a working Makefile +# building the docs... +.PHONY: manual +manual: + $(MAKE) -C manual all + mv manual/*.pdf . + + +%.zipnote: %.zip + zipnote $< > $@ + + +.PHONY: dist +dist: $(DIST_FILES) + $(MD) $(DIST_DIR) + zip -Drq $(DIST_DIR)/$(DIST_NAME).zip $(DIST_FILES) + # Place everything in the module dir as per CTAN spec... + zipnote $(DIST_DIR)/$(DIST_NAME).zip \ + | sed 's/^\@ \([^(].*\)$$/@ \1\n@=$(MODULE)\/\1/' \ + | zipnote -w $(DIST_DIR)/$(DIST_NAME).zip + +CTAN: dist + $(MD) $(DIST_DIR)/CTAN + cp $(DIST_DIR)/$(DIST_NAME).zip $(DIST_DIR)/CTAN/$(MODULE).zip + + +.PHONY: all +all: pdf + + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +# Install/uninstall targets... + +# NOTE: keep the dir clean unless this is explicitly built... +.INTERMEDIATE: \ + $(MODULE)-stripped.cls \ + $(MODULE)-stripped.sty \ + $(MODULE)-stripped.tex + + +# user install... +.PHONY: install +install: pdf $(MODULE_CODE).cls + $(MD) $(INSTALL_PATH)/{tex,source,doc}/latex/$(MODULE) + $(INSTALL) "$(MODULE).pdf" $(INSTALL_PATH)/doc/latex/$(MODULE) + $(INSTALL) "$(MODULE_CODE).cls" $(INSTALL_PATH)/tex/latex/$(MODULE)/$(MODULE).cls +# # NOTE: we are printing only the stuff we are doing... + @run(){ echo "$$@" ; "$$@" ; } ;\ + if [[ $${CODE_INSTALL} == "link" ]] ; then \ + run $(LN) \ + "$(INSTALL_PATH)/tex/latex/$(MODULE)/$(MODULE).cls" \ + "$(INSTALL_PATH)/source/latex/$(MODULE)/" ;\ + else \ + run $(INSTALL) "$(MODULE).cls" "$(INSTALL_PATH)/source/latex/$(MODULE)" ;\ + fi + +.PHONY: uninstall +uninstall: + rm -rf $(INSTALL_PATH)/{tex,source,doc}/latex/$(MODULE) + @echo "###" + @echo "### NOTE: this can leave the following dirs empty:" + @echo "### $(INSTALL_PATH)/{tex,source,doc}/latex/" + @echo "###" + + +# local/system install... +# NOTE: this should be run with sudo, i.e.: +# $ sudo make install-local +.PHONY: install-local +install-local: INSTALL_PATH := $(TEX_LOCAL) +install-local: install + +.PHONY: uninstall-local +uninstall-local: INSTALL_PATH := $(TEX_LOCAL) +uninstall-local: uninstall + + +# XXX need to make this work for windows... +# ...this must depend not on the OS but rather on in what context +# (cygwin/wsl/windows), latex is running... +# ...this seems to work: +# > mkling TO FROM +# but like ln, it's args are in the wrong order... +# ...cp -s creates links usable from cygwin but not usable from +# windows... +.PHONY: install-devel +install-devel: CODE_INSTALL := copy +install-devel: INSTALL := cp -s +install-devel: install + +.PHONY: uninstall-devel +uninstall-devel: uninstall + + + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +# Cleanup targets... + +.PHONY: sweep +sweep: + rm -f \ + *.{aux,fls,glo,gls,hd,idx,ilg,ind,ins,log,out,toc,fdb_latexmk} \ + *-stripped.{tex,sty,cls} \ + *-meta.{tex,sty,cls} \ + ${MODULE}.tex + + +.PHONY: clean +clean: sweep + rm -rf $(DIST_DIR) $(BUILD_DIR) $(MODULE).md *.pdf + + + +#---------------------------------------------------------------------- +# vim:set ts=4 sw=4 : diff --git a/macros/latex/contrib/photobook/README.md b/macros/latex/contrib/photobook/README.md new file mode 100644 index 0000000000..cbab31c280 --- /dev/null +++ b/macros/latex/contrib/photobook/README.md @@ -0,0 +1,52 @@ +# photobook + +[LaTeX](https://www.latex-project.org/) document class for making photo books. + + +## Build requirements for docs + +- LaTeX tool chain (including: `lualatex`, `latexmk`, ..) + The simplest way to get started is [TeX Live](https://www.tug.org/texlive/), + either a full install or for specific modules see the _Packages_ section + in [photobook.cls](./photobook.cls), +- Un\*x-like environment (`bash`, GNU Make, coreutils, ...), + on Windows systems, either [Cygwin](https://www.cygwin.com/) or + [WSL/WSL2](https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux) + should work fine. + + + +## Build / Install + +```shell +# get the source... +$ git clone https://github.com/flynx/photobook.git + +# if desired, install in the user context... +$ cd ./photobook +$ make install +``` + +If only building the docs is required without installing: +```shell +$ make pdf +``` + +For more info on `make` targets see the: [./Makefile](./Makefile) + + + +## Authors + +[Alex A. Naanou](https://github.com/flynx) + + + +## License + +[BSD 3-Clause License](./LICENSE) + +Copyright (c) 2021-2022, Alex A. Naanou, +All rights reserved. + + diff --git a/macros/latex/contrib/photobook/photobook.cls b/macros/latex/contrib/photobook/photobook.cls new file mode 100644 index 0000000000..c4f2d56c05 --- /dev/null +++ b/macros/latex/contrib/photobook/photobook.cls @@ -0,0 +1,5058 @@ +%---------------------------------------------------------------------- +% +% +% This does the following: +% - sets up the document/pdf for viewing as a book +% - adds support for page bleeds +% - adds basic templates for image pages +% +% +% This file contains both the code and the reference, but in a slightly +% more readable format than the traditional LaTeX .dtx format. In general +% there are two main sections: +% - code +% - reference +% lines starting with "%%" or "%X" where X is a section id +% Sections are parts of the reference that are logically ordered differently +% than the code, e.g. main user tools should have priority in the reference +% while meta code (identified by "%M") can be described later, while in code +% we strictly need to define macros before they are used thus meta-macros +% and other building blocks and components come before the user tools. +% +% Docs are build by the Makefile, so reference it for more info. +% +% $ make doc +% +% +% NOTE: in a stripped code install this file may contain only code and +% code comments, in this case, to see the docs refer to either the +% source or the actual documentation/pdf. +% NOTE: the stripped code file is auto-generated, it is not recommended +% to edit it directly, edit the source instead. +% +% +% XXX Q: do we add the pdf to the repo and if so, should it be +% compressed (diff-able) or uncompressed (blob)?? +% XXX revise \clearcaption / \captionclearpage... +% XXX unify API -- see CellContent env... +% XXX make this loadable both as a class and as a package... +% \@ifclassloaded{photobook}{}{} +% XXX revise command naming -- should be obvious from name what is what: +% - meta commands -- ??? (currently same as templates) +% - general macros -- \usecell{..} +% - templates -- \ImagePage{..} +% XXX see where we need to \ignorespaces... +% XXX might be a good idea to add a spine calculator... +% XXX add list of dependencies to docs... +% XXX manual / book: +% - basic usage +% - setup +% - templates (copyright, front matter, back matter, acknowledgements, ...) +% - using templates +% - pre-print +% - customizing +% - extending +% +% +%---------------------------------------------------------------------- + +%%% NOTE: \def\@[A-Z]+ macros will be visible to both the +%%% code and the generated docs... +\edef\photobook@FILEVERSION{v0.1} +\edef\photobook@FILEDATE{2021-07-28} + + +%% \documentclass{ltxdoc} +%% +%%% \usepackage{iftex} +%%% \ifluatex +%%% \edef\pdfcompresslevel{\pdfvariable compresslevel} +%%% \edef\pdfobjcompresslevel{\pdfvariable objcompresslevel} +%%% \fi +%%% \pdfcompresslevel 0 +%%% \pdfobjcompresslevel 0 +%% +%% \usepackage[a4paper,margin=25mm,left=55mm,nohead]{geometry} +%% +%% % NOTE: this needs to load before hyperref or bookmarks will break... +%% % NOTE: loading hyperref here will break it loading later in one of +%% % the packages... +%% \usepackage{titlesec} +%% +%% \usepackage[numbered]{hypdoc} +%% \usepackage{doctools} +%% \usepackage{needspace} +%% +%% \usepackage[toc]{multitoc} +%% \renewcommand*{\multicolumntoc}{2} +%% \setlength{\columnseprule}{0.5pt} +%% +%% \usepackage{imakeidx} +%% \makeindex[ +%% columns=1, +%% title=Alphabetical Index, +%% intoc, +%% options= -s photobook.ist ] +%% +%%% \newcommand\DescribeGlobal[1]{% +%%% \DescribeMacro{#1}} +%% +%% \newcommand\LEGACY[1][]{\fbox{LEGACY #1}} +%% \newcommand\EXPERIMENTAL[1][]{\fbox{EXPERIMENTAL #1}} +%% +%%% sections to new pages... +%% \newcommand\sectionbreak{\Needspace{5\baselineskip}} +%% +%% % remove section numbering... +%% \setcounter{secnumdepth}{0} +%% +%% % paragraph configuration... +%% \setlength\parindent{0pt} +%% \setlength\parskip{0.5em} +%% +%% \newcommand\blankfootnote[1]{% +%% \begingroup +%% \renewcommand\thefootnote{}% +%% \footnote{#1}% +%% \addtocounter{footnote}{-1}% +%% \endgroup} +%% +%% +%% \begin{document} +%% +%% \title{\textsf{photobook} --- Document class for building photo-books +%% \thanks{This file describes version \FILEVERSION, +%% last revised \FILEDATE.}} +%% +%% \author{Alex A. Naanou\thanks{E-mail: alex.nanou@gmail.com}} +%% +%% \date{Released \FILEDATE} +%% +%% +%% \maketitle +%% +%% \begin{abstract} +%% The |photobook| \LaTeX\space document class extends the |book| class +%% defining a set of parameters, meta-macros, macros and environments +%% with reasonable defaults to help typeset, build and print books mainly +%% based on visual/image content. +%% \end{abstract} +%% +%% \tableofcontents +%% +% +%%%% Introduction +% +%% \LaTeX\ is great with textual and text-primary content with figures +%% peppered in, as long as pictures/figures flow within, with or as part +%% of text, vanilla \LaTeX\ is fantastic. +%% +%% One can relatively easily stretch the flow concept to more complex +%% layouts introducing {\it even} and {\it odd} pages (the |book| class is +%% one example) and flow rules based on them, but the next step, {\it bleeds}, +%% combining page pairs into {\it spreads} as is often needed when designing +%% image-oriented books is lacking. Full-bleed images/pages can be implemented +%% manually, some more effort is needed to split something horizontally +%% into a page spread, but doing so for whole book's worth of content is +%% not practical -- automating and experimenting with this process is +%% how |photobook| began. +%% +%% |photobook| extends the |book| class adding page layout types, bleeds +%% and other global geometry configuration, introduces the {\it page} and +%% {\it spread} as first-class elements into the document flow. These concepts +%% are generalized as |cell|s. A |cell| is similar to a figure, it can +%% be placed within the document flow, but unlike a figure a |cell| can +%% be aligned relative to a page, it can fill a page, a cell can even be +%% horizontally split to fill several pages (how spreads are implemented). +%% +%% On top of the |cell|, {\it page}, and {\it spread} concepts, |photobook| +%% also builds a set of configurable high level macros and templates for +%% common use cases like full bleed image spreads, foldouts, ... etc. +% +% +%%%% Usage +% +%% >> \documentclass[]{photobook} +%% +% +%---------------------------------------------------------------------- + +\NeedsTeXFormat{LaTeX2e} + +\ProvidesClass{photobook} + [\photobook@FILEDATE \space \photobook@FILEVERSION Photo book document class] + + +% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +%%%% Options +%% + +\edef\photobook@options{\@classoptionslist} + +\RequirePackage{kvoptions} + + +% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +% Helpers... + +\newcommand\@DeclareLiteralOptionTo[2]{% + \DeclareVoidOption{#2}{% + \expandafter\edef\csname photobook@#1\endcsname{#2}}} + + +% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +%%%%% Page geometry +% +%% \DescribeMacro{blockwidth=} +%% \DescribeMacro{blockheight=} +%% \DescribeMacro{bindingoffset=} +%% \DescribeMacro{bleed=} +% +%% This is similar to what |geometry| does, but adds bleed support. +%% +%% \begin{minipage}{\textwidth} +%% \begin{verbatim} +%% +%% <---> bleed <---> bleed +%% +%% + - - - - - - - - - - - - - - - - - - - - - + - + ^ +%% . . . | bleed +%% . +---------------------------------------+----- v . . --- +%% . | ^ . = . +%% . | . . . . . . | . . = . ^ +%% . |<-- blockwidth ----------------------->= . | +%% . | . | . . = . | +%% . | | . = . textheight +%% . | . Page | . . = . | +%% . | blockheight . = . | +%% . | . | . . = . | +%% . | | <---> bindingoffset | +%% . | . . . . . . | . . = . v +%% . | v . = . +%% . +---------------------------------------+----- ^ . . --- +%% . . . . | bleed +%% + - - - - - - - - - - - - - - - - - - - - - + - + v +%% . . +%% | <-- textwidth --------------> . | +%% ^ binding line +%% +%% \end{verbatim} +%% \end{minipage} +%% +% NOTE: if blockwidth/blockheight are set they will force recalculations +% and overriding of the paperwidth/paperheight if they were changed +% by the user code anywhere between \documentclass[..]{photobook} +% and \begin{document}... +\DeclareStringOption{blockwidth} +\DeclareStringOption{blockheight} +\DeclareStringOption[0pt]{bindingoffset}[10mm] +\DeclareStringOption[5mm]{bleed}[5mm] + +%% \DescribeMacro{flatfold=} +% +%% Sets the clearance set aside for a flat fold, used for foldouts +%% (see: \nameref{subsec:Foldout page cells} section). +%% +\DeclareStringOption[0pt]{flatfold}[0.2mm] + +%% \DescribeMacro{pagefold=} +% +%% Sets the default fold type. +%% +%% Can be |in| or |out|. +%% +% XXX check values... +\DeclareStringOption{pagefold} + +%% \DescribeMacro{foldout=} +% +%% Sets the default fold specification (i.e. sets |\defaultfoldout|). +%% +%% For more information see: \nameref{subsec:Foldout page cells} section. +%% +\DeclareStringOption[2]{foldout}[2] + + + +%%%%% layout +% +%% \DescribeMacro{layoutmode=} +%% \DescribeMacro{block} +%% \DescribeMacro{endpaper} +%% \DescribeMacro{cover} +%% \DescribeMacro{jacket} +% +%% Sat page layout mode. +% +%% >> layoutmode=