%% %% This is file `tagpdf-base.sty', %% generated with the docstrip utility. %% %% The original source files were: %% %% tagpdf.dtx (with options: `base') %% tagpdf-mc-generic.dtx (with options: `base') %% tagpdf-mc-shared.dtx (with options: `base') %% tagpdf-struct.dtx (with options: `base') %% tagpdf-checks.dtx (with options: `base') %% tagpdf-user.dtx (with options: `base') %% tagpdf-roles.dtx (with options: `base') %% %% Copyright (C) 2019-2024 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 license or (at your option) any later version. The latest %% version of this license is in the file: %% %% https://www.latex-project.org/lppl.txt %% %% This file is part of the "tagpdf bundle" (The Work in LPPL) %% and all files in that bundle must be distributed together. %% %% File: tagpdf.dtx \ProvidesExplPackage {tagpdf-base} {2024-08-02} {0.99d} {part of tagpdf - provide base, no-op versions of the user commands } \cs_new_protected:Npn \__tag_whatsits: {} \AddToHook{begindocument} { \str_case:VnF \c_sys_backend_str { { luatex } { \cs_set_protected:Npn \__tag_whatsits: {} } { dvisvgm } { \cs_set_protected:Npn \__tag_whatsits: {} } } { \cs_set_protected:Npn \__tag_whatsits: {\tex_special:D {} } } } \cs_if_free:NT \pdf_object_new_indexed:nn { \cs_generate_variant:Nn \pdf_object_new:n {e} \cs_generate_variant:Nn \pdf_object_write:nnn {enn} \cs_new_protected:Npn \pdf_object_new_indexed:nn #1 #2 { \pdf_object_new:e {#1/\int_eval:n{#2}} } \cs_new_protected:Npn \pdf_object_write_indexed:nnnn #1 #2 #3 #4 { \pdf_object_write:enn {#1/\int_eval:n{#2}}{#3}{#4} } \cs_generate_variant:Nn \pdf_object_write_indexed:nnnn {nnne} \cs_new:Npn\pdf_object_ref_indexed:nn #1 #2 { \pdf_object_ref:e {#1/\int_eval:n{#2}} } \cs_new:Npn \__kernel_pdf_object_id_indexed:nn #1 #2 { \int_use:c { c__pdf_object_ #1/\int_eval:n{#2} _int } } } \cs_new_protected:Npn \tag_stop:{} \cs_new_protected:Npn \tag_start:{} \cs_new_protected:Npn \tagstop{} \cs_new_protected:Npn \tagstart{} \cs_new_protected:Npn \tag_stop:n #1 {} \cs_new_protected:Npn \tag_start:n #1 {} %% File: tagpdf-mc-generic.dtx \cs_new_protected:Npn \tag_mc_begin:n #1 { \__tag_whatsits: \int_gincr:N \c@g__tag_MCID_abs_int } \cs_new_protected:Nn \tag_mc_end:{ \__tag_whatsits: } %% File: tagpdf-mc-shared.dtx \newcounter { g__tag_MCID_abs_int } \cs_new:Npn \__tag_get_data_mc_counter: { \int_use:N \c@g__tag_MCID_abs_int } \cs_new_protected:Npn \tag_mc_use:n #1 { \__tag_whatsits: } \cs_new_protected:Npn \tag_mc_artifact_group_begin:n #1 {} \cs_new_protected:Npn \tag_mc_artifact_group_end:{} \cs_new_protected:Npn \tag_mc_reset_box:N #1 {} \cs_new_protected:Npn \tag_mc_end_push: {} \cs_new_protected:Npn \tag_mc_begin_pop:n #1 {} %% File: tagpdf-struct.dtx \newcounter { g__tag_struct_abs_int } \int_gset:Nn \c@g__tag_struct_abs_int { 1 } \tl_new:N \g__tag_struct_stack_current_tl \tl_gset:Nn \g__tag_struct_stack_current_tl {\int_use:N\c@g__tag_struct_abs_int} \prop_new_linked:N \g__tag_struct_dest_num_prop \cs_new:Npn \__tag_get_data_struct_num: { \g__tag_struct_stack_current_tl } \cs_new:Npn \__tag_get_data_struct_counter: { \int_use:N \c@g__tag_struct_abs_int } \cs_new_protected:Npn \tag_struct_begin:n #1 {\int_gincr:N \c@g__tag_struct_abs_int} \cs_new_protected:Npn \tag_struct_end:{} \cs_new_protected:Npn \tag_struct_end:n{} \cs_new_protected:Npn \tag_struct_use:n #1 {} \cs_new_protected:Npn \tag_struct_use_num:n #1 {} %% File: tagpdf-checks.dtx \cs_new:Npn \tag_get:n #1 { \use:c {__tag_get_data_#1: } } \prg_new_conditional:Npnn \tag_if_active: { p , T , TF, F } { \prg_return_false: } \prg_new_conditional:Npnn \tag_if_box_tagged:N #1 {p,T,F,TF} { \tl_if_exist:cTF {l_tag_box_\int_use:N #1_tl} { \int_compare:nNnTF {0\tl_use:c{l_tag_box_\int_use:N #1_tl}}>{0} { \prg_return_true: } { \prg_return_false: } } { \prg_return_false: % warning?? } } %% File: tagpdf-user.dtx \NewDocumentCommand \tagpdfsetup { m }{} \cs_new_protected:Npn\tag_tool:n #1 {} \cs_set_eq:NN\tagtool\tag_tool:n \NewDocumentCommand \tagmcbegin { m } { \tag_mc_begin:n {#1} } \NewDocumentCommand \tagmcend { } { \tag_mc_end: } \NewDocumentCommand \tagmcuse { m } { \tag_mc_use:n {#1} } \NewDocumentCommand \tagstructbegin { m } { \tag_struct_begin:n {#1} } \NewDocumentCommand \tagstructend { } { \tag_struct_end: } \NewDocumentCommand \tagstructuse { m } { \tag_struct_use:n {#1} } \providecommand\tag_socket_use:n[1]{} \providecommand\tag_socket_use:nn[2]{} \providecommand\UseTaggingSocket[1]{} \bool_new:N \l__tag_para_flattened_bool \bool_new:N \l__tag_para_bool \newcommand\tagpdfparaOn {} \newcommand\tagpdfparaOff{} %% File: tagpdf-roles.dtx \prg_new_protected_conditional:Npnn \tag_check_child:nn #1 #2 {T,F,TF}{\prg_return_true:} %% %% %% End of file `tagpdf-base.sty'.